Paso 2: Identificar el grano

Identifique la granularidad de cada tabla de hechos y proceso de negocio. Durante este proceso deberá identificar los tipos de tablas de hechos y los candidatos preliminares para las dimensiones y medidas.
La lista siguiente contiene varias características de identificación del grano:
Especificar qué contienen los registros
Al identificar el grano, se especifica exactamente qué contiene un registro de tabla de hechos. El grano muestra el nivel de detalle asociado a las medidas de la tabla de hechos. Cuando identifique el grano, decida también el nivel de detalle que desea que esté disponible en el modelo dimensional. Si se incluyen más detalles, el nivel de granularidad será más bajo. Si se incluyen menos detalles, el nivel de granularidad será más alto.
Identificar el nivel de detalle
El nivel de detalle disponible en un esquema de estrella se conoce como grano. Cada tabla de hechos y dimensiones tiene su propio grano o granularidad. Cada tabla (de hechos o dimensiones) contiene un nivel de detalle con el que se asocia. El grano del modelo dimensional es el nivel de detalle más fino que está implícito al unir las tablas de hechos y dimensiones. Por ejemplo, la granularidad de un modelo dimensional que consta de las dimensiones de fecha, almacén y producto es producto vendido en el almacén por día.
Identificar los datos
Cada fila contiene el mismo tipo de datos. Por ejemplo, cada fila puede contener ventas diarias por almacén, por producto, o elementos de línea diarios por almacén.
Por ejemplo, las definiciones de grano pueden incluir los siguientes elementos:

Las tablas de hechos y dimensiones tienen una granularidad asociada a ellas. El modelado dimensional, la granularidad hace referencia al nivel de detalle almacenado en una tabla. Por ejemplo, una dimensión como la fecha (con las jerarquías de año y trimestre) tiene granularidad en el nivel trimestral pero no tiene información para los días o meses individuales. Alternativamente, una tabla de dimensiones de fecha (con las jerarquías de año, trimestre y mes) tiene granularidad en el nivel mensual, pero no contiene información en el nivel diario.

Puede gestionar distintas granularidades de datos utilizando varias tablas de hechos (tablas diarias, mensuales y anuales). También puede utilizar una sola tabla con un distintivo de granularidad, o una columna que indique el grano de la tabla. No obstante, no almacene datos con distintas granularidades en la misma tabla de hechos.

Cuando identifique los granos de los objetos de datos, realice los pasos siguientes:
  1. Determine la granularidad de la tabla de hechos.
  2. Determine cómo gestionar varios granos independientes.
  3. Determine el tipo de tabla de hechos que desea utilizar.
  4. Compruebe la atomicidad de los granos.
  5. Determine las dimensiones y medidas de alto nivel según sus definiciones de grano.
  6. Cree un informe de sus definiciones de grano.

Identificación de los metadatos del grano

Durante esta fase recopilará los siguientes metadatos:

Determinación de la granularidad de la tabla de hechos

El detalle de grano se basa en las conclusiones de los requisitos analizados y documentados en el Paso 1: Identificar los requisitos del proceso de negocio. Reúna documentos, como facturas, recibos y memorándums de pedido. Estos documentos con frecuencia incluyen información que se puede utilizar para definir el grano. Estos documentos también tienen información que ayuda a identificar las dimensiones y medidas de los modelos dimensionales.

El grano que elija determinará el nivel de detalle de la información que puede haber disponible en el modelo dimensional.

La definición de grano es la base de cada modelo dimensional. La definición de grano determina el nivel de información que hay disponible. Las directrices para elegir la definición de grano incluyen las siguientes consideraciones:
  • Durante la fase de recopilación de requisitos empresariales, intente recopilar los documentos necesarios, como formularios de facturas, formularios de pedidos y recibos de ventas. Generalmente, estos documentos tienen asociados datos de transacción, como el número de pedido y el número de factura.
  • Con frecuencia, los documentos pueden indicarle los elementos importante del negocio, como el cliente y los productos. Los documentos a menudo contienen información de nivel inferior que puede ser necesaria para el negocio.
  • Otro punto importante que se debe considerar es la fecha. Es importante comprender qué nivel de detalle está asociado con un cliente, un producto o un proveedor. ¿La información de los sistemas de origen está disponible a nivel diario, mensual o anual?

Gestión de varios granos independientes

Determine si hay varios granos asociados al proceso de negocio para el que va a diseñar el modelo dimensional. Puede haber más de una definición de grano asociada a un solo proceso de negocio. En estos casos, diseñe tablas de hechos independiente con granos independientes. No fuerce todas las medidas en una sola tabla de hechos.

Se pueden gestionar distintas granularidades de datos utilizando varias tablas de hechos (por ejemplo, tablas diarias, mensuales y anuales). Además, considere la cantidad de datos, espacio y requisitos de rendimiento cuando decida cómo gestionar varias granularidades.

Criterios para una o más tablas de hechos
Para determinar si desea utilizar una o más tablas de hechos, considere los siguientes criterios:
  • Considere las medidas. Decida si desea agrupar las medidas en una tabla de hechos o en distintas tablas de hechos con granos diferentes.
  • ¿Hay varios sistemas de origen OLTP implicados? Cada sistema de origen está diseñado con un objetivo específico. Si dos sistemas de origen no cumplen objetivos diferentes, consolide los sistemas en un solo origen. Si desea mantener los sistemas separados, cada sistema de origen deberá satisfacer un requisito concreto del negocio. Si los procesos de negocio incluyen la gestión de pedidos o el inventario de almacén, probablemente serán necesarios sistemas de origen diferentes. En este caso, utilice distintas tablas de hechos.
  • Determine si hay implicados varios procesos de negocio no relacionados. Cree tablas de hechos independientes para los procesos de negocio no relacionados. Si un solo proceso de negocio requiere distintos niveles de granularidad, cree distintas tablas de hechos para gestionar esos niveles.
  • Si una dimensión no es verdadera en la definición de grano, diseñe una nueva tabla de hechos con su propia definición de grano.
  • Considere la temporización y la secuencia de los sucesos. Quizá necesite procesos diferentes para gestionar un solo suceso. Por ejemplo, una empresa comercializa su producto. Los clientes solicitan los productos. El departamento encargado de las cuentas genera una factura. El cliente paga la factura. Después de la compra, el cliente puede devolver algunos de los productos o enviarlos a reparar. Si alguno de los productos está fuera de garantía, este proceso requiere nuevos cargos. Varios procesos forman parte de la secuencia de una sola compra. Cada uno de estos procesos se realiza en momentos temporales diferentes. Cada uno de estos procesos se gestiona utilizando tablas de hechos diferentes.
Varias granularidades en una sola tabla de hechos
Si utiliza varios granos en una tabla de hechos, añada una columna llamada distintivo de granularidad. Esta columna indica el grano de la tabla. La columna define si la información se almacena a nivel diario, semanal, mensual o anual.
Nota: Puede almacenar varios granos en una sola tabla de hechos, pero este método no se recomienda. Diseñe distintas tablas de hechos y esquemas de estrella para cada definición de grano.

Identificación de los tipos de tablas de hechos que se pueden utilizar

Identifique el tipo de tabla de hechos implicada en el diseño del modelo dimensional. Para obtener más información sobre los tipos de tablas de hechos, consulte Tablas y entidades de hechos.

Comprobación de la atomicidad del grano

Revise la atomicidad (nivel de detalle) del grano para asegurarse de que está en el nivel de mayor detalle. Esta decisión incluye la consideración por anticipado de las necesidades futuras con el fin de minimizar la necesidad de crear un nuevo diseño cuando cambien los requisitos empresariales.

El grano del modelo dimensional es importante al diseñar el modelo dimensional. Aunque los requisitos empresariales necesiten información a nivel mensual o trimestral, haga disponible esta información a nivel diario. Si las dimensiones son más detalladas (atómicas), el negocio puede recupera información más detallada.

Por ejemplo, considere una dimensión de fecha que sólo tenga un atributo Year. Como sólo hay un atributo, no puede consultar la información a nivel trimestral, mensual o diario. Para maximizar la información disponible, elija un grano atómico detallado. En este ejemplo, puede definir el grano a nivel diario.

Por ejemplo, pongamos por caso un grano de un producto vendido en un almacén. No podrá asociar un cliente con un producto determinado que se haya adquirido porque sólo hay una fila para un producto. Si mil clientes diferentes compran el producto, no podrá descubrir esa información.

Siempre puede declarar granos de mayor nivel para un proceso de negocio utilizando agregaciones de los datos más atómicos y detallados. Sin embargo, cuando se selecciona un grano de mayor nivel, el número de dimensiones se limita y puede ser menos granular. No puede detallar más estas dimensiones menos granulares para obtener un nivel menor de detalle.

La granularidad proporciona la oportunidad de alcanzar el equilibrio entre las cuestiones importantes relacionadas con un depósito de datos:
  • El rendimiento frente al volumen de los datos (y el coste derivado de almacenar esos datos)
  • La capacidad de acceder a los datos a un nivel detallado frente al rendimiento (y el coste de almacenar y acceder a grandes volúmenes de datos)
Seleccionar el nivel apropiado de granularidad afecta considerablemente el volumen de datos del depósito de datos. Seleccionar el nivel apropiado de granularidad también puede determinar la capacidad del depósito de datos para satisfacer los requisitos de consulta.

Si consideramos el espacio de disco y el volumen de datos, una mayor granularidad proporciona una forma más eficaz de almacenar datos que una baja granularidad. También debe considerar el espacio de disco para el índice de los datos. Mediante el uso del índice, ahorrará espacio de disco. Tenga también en cuenta la manipulación de grandes volúmenes de datos. La manipulación de datos puede afectar al rendimiento a costa de más potencia de proceso.

Siempre existen ventajas y desventajas al procesar los datos. Por ejemplo, al aumentar la granularidad, disminuye la capacidad para responder a distintos tipos de consultas (que requieren datos a nivel más detallado). Si la tabla utiliza un nivel bajo de granularidad, puede soportar las consultas que utilizan esos datos a costa del aumento del espacio de almacenamiento y la disminución del rendimiento.

Aunque la granularidad no afecta a la capacidad de responder a una consulta, el sistema puede necesitar más recursos para ejecutar la misma consulta. Supongamos que tiene dos tablas con distintos niveles de granularidad: una tabla con detalles de transacción y una tabla que resume las cuentas mensualmente. Para crear un informe de cuentas mensual, puede utilizar cualquiera de las tablas sin ninguna dependencia de la granularidad. Sin embargo, la consulta de la tabla de transacciones detalladas es una búsqueda que abarca más datos, lo que requiere un proceso para calcular los resultados. La tabla de resumen de cuentas mensual requiere menos recursos.

Cuando decida el nivel de granularidad, determine si el coste del volumen de datos compensa la capacidad de responder a las consultas.

Identificación de dimensiones y medidas de alto nivel

Identifique las dimensiones y medidas preliminares de alto nivel a partir de las cuales comprenderá la definición de grano. Para identificar estas dimensiones y medidas preliminares, no se lleva a cabo ningún análisis detallado. Cuando defina el grano correctamente, podrá encontrar fácilmente las dimensiones y medidas preliminares.

Las medidas preliminares son aquellas que se pueden identificar fácilmente consultando la definición de grano. Por ejemplo, las medidas como el precio unitario, la cantidad y el descuento se identifican fácilmente viendo el grano. Sin embargo, las medidas detalladas como el coste, el precio de fabricación y el coste de transporte no son medidas preliminares identificadas por el grano. Estos tipos de medidas están ocultas y generalmente no son visibles en un informe. Las medidas preliminares no son el conjunto final de medidas. La identificación formal de medidas detalladas se produce al identificar las medidas.

Estas dimensiones y medidas preliminares de alto nivel son útiles al identificar formalmente las dimensiones.

Creación de un informe de la fase de identificación del grano

El informe de definición del grano se crea para esta fase. El informe contiene una o más definiciones para el grano del proceso de negocio y define el tipo de tabla de hechos. El informe también incluye las dimensiones y medidas preliminares de alto nivel.


Comentarios