Articulo de referencia

Dimensión (almacén de datos)

Una tabla de dimensiones en un cubo OLAP con un esquema de estrella. Una dimensión es una estructura que categoriza hechos y medidas para que los usuarios puedan responder pregu...

Una tabla de dimensiones en un cubo OLAP con un esquema de estrella.

Una dimensión es una estructura que categoriza hechos y medidas para que los usuarios puedan responder preguntas de negocio. Las dimensiones más comunes son personas, productos, lugar y tiempo. [ 1 ] [ 2 ] (Nota: En ocasiones, las personas y el tiempo no se modelan como dimensiones).

En un almacén de datos , las dimensiones proporcionan información de etiquetado estructurada a medidas numéricas que, de otro modo, estarían desordenadas. Una dimensión es un conjunto de datos compuesto por elementos de datos individuales que no se superponen . Las funciones principales de las dimensiones son tres: proporcionar filtrado, agrupación y etiquetado.

Estas funciones suelen describirse como " segmentación y filtrado ". Un ejemplo común de almacén de datos utiliza las ventas como medida, con el cliente y el producto como dimensiones. En cada venta, un cliente compra un producto. Los datos se pueden segmentar eliminando a todos los clientes excepto a un grupo específico, y luego filtrar agrupándolos por producto.

Un elemento de datos dimensional es similar a una variable categórica en estadística.

Normalmente, las dimensiones en un almacén de datos se organizan internamente en una o más jerarquías. "Fecha" es una dimensión común, con varias jerarquías posibles:

  • "Los días (se agrupan en) meses (que se agrupan en) años",
  • "Los días (se agrupan en) semanas (que se agrupan en) años"
  • "Los días (se agrupan en) meses (que se agrupan en) trimestres (que se agrupan en) años"
  • etc.

Tipos

Dimensiones que cambian lentamente

Una dimensión de cambio lento es un conjunto de atributos de datos que cambian lentamente a lo largo del tiempo, en lugar de cambiar regularmente, por ejemplo, la dirección o el nombre. Estos atributos pueden cambiar a lo largo del tiempo y se combinarán como una dimensión de cambio lento. Estas dimensiones se pueden clasificar en los siguientes tipos:

  • Tipo 0 (Conservar original) : Los atributos nunca cambian. Sin historial.
  • Tipo 1 (Sobrescribir) : Los valores antiguos se sobrescriben con los nuevos valores del atributo. Sin historial.
  • Tipo 2 (Agregar nueva fila) : Se crea una nueva fila con una fecha de inicio/fin o una versión para un nuevo valor. Esto crea un historial.
  • Tipo 3 (Agregar nuevo atributo) : Se crea una nueva columna para un nuevo valor. El historial se limita al número de columnas designadas para almacenar datos históricos.
  • Tipo 4 (Agregar tabla de historial) : Una tabla guarda el valor actual, mientras que el historial se guarda en una segunda tabla.
  • Tipo 5 (Enfoque combinado 1 + 4) : Combinación del tipo 1 y el tipo 4. El historial se crea a través de una segunda tabla de historial.
  • Tipo 6 (Enfoque combinado 1 + 2 + 3) : Combinación de los tipos 1, 2 y 3. El historial se crea mediante filas y atributos separados.
  • Tipo 7 (Enfoque híbrido) : Se utilizan tanto la clave sustituta como la clave natural. [ 3 ]

Dimensión conforme

Una dimensión conformada es un conjunto de atributos de datos que se han referenciado físicamente en varias tablas de la base de datos utilizando el mismo valor clave para referirse a la misma estructura, atributos, valores de dominio, definiciones y conceptos. Una dimensión conformada abarca muchos hechos.

Las dimensiones se consideran conformes cuando son exactamente iguales (incluidas las claves) o cuando una es un subconjunto propio de la otra. Lo más importante es que los encabezados de fila generados en dos conjuntos de respuestas diferentes a partir de la misma dimensión o dimensiones conformes deben coincidir perfectamente.

Las dimensiones conformadas son idénticas o subconjuntos matemáticos estrictos de la dimensión más granular y detallada. Las tablas de dimensiones no están conformadas si los atributos tienen etiquetas diferentes o contienen valores diferentes. Las dimensiones conformadas se presentan en varias variantes. En su nivel más básico, las dimensiones conformadas significan exactamente lo mismo con cada tabla de hechos posible a la que se unen. La tabla de dimensiones de fecha conectada a los hechos de ventas es idéntica a la dimensión de fecha conectada a los hechos de inventario. [ 4 ]

Dimensión basura

Una dimensión basura es una agrupación conveniente de indicadores y banderas de cardinalidad baja. Al crear una dimensión abstracta, estos indicadores y banderas se eliminan de la tabla de hechos y se colocan en un marco dimensional útil. [ 5 ] Una dimensión basura es una tabla de dimensiones que consta de atributos que no pertenecen a la tabla de hechos ni a ninguna de las tablas de dimensiones existentes. La naturaleza de estos atributos suele ser texto o varios indicadores, por ejemplo, comentarios no genéricos o simples indicadores de sí/no o verdadero/falso. Este tipo de atributos generalmente quedan cuando se han identificado todas las dimensiones obvias en el proceso de negocio y, por lo tanto, el diseñador se enfrenta al desafío de dónde colocar estos atributos que no pertenecen a las otras dimensiones.

Una solución consiste en crear una nueva dimensión para cada uno de los atributos restantes, pero debido a su naturaleza, podría ser necesario crear una gran cantidad de nuevas dimensiones, lo que resultaría en una tabla de hechos con un número muy elevado de claves foráneas. El diseñador también podría optar por dejar los atributos restantes en la tabla de hechos, pero esto podría aumentar innecesariamente la longitud de las filas de la tabla si, por ejemplo, el atributo es una cadena de texto larga.

La solución a este desafío consiste en identificar todos los atributos y luego agruparlos en una o varias dimensiones de datos aleatorios. Una dimensión de datos aleatorios puede contener varios indicadores booleanos (verdadero/falso o sí/no) sin correlación entre sí, por lo que sería conveniente convertirlos en un atributo más descriptivo. Por ejemplo, un indicador sobre si un paquete ha llegado: en lugar de indicarlo como "sí" o "no", se convertiría en "llegado" o "pendiente" en la dimensión de datos aleatorios. El diseñador puede optar por construir la tabla de dimensiones de manera que contenga todos los indicadores que aparecen con todos los demás, cubriendo así todas las combinaciones. Esto establece un tamaño fijo para la tabla, que sería de 2 x filas, donde x es el número de indicadores. Esta solución es apropiada en situaciones donde el diseñador prevé encontrar muchas combinaciones diferentes y donde las combinaciones posibles están limitadas a un nivel aceptable. En situaciones donde el número de indicadores es elevado, lo que genera una tabla muy grande, o donde el diseñador solo prevé encontrar algunas de las combinaciones posibles, sería más apropiado construir cada fila en la dimensión de datos no deseados a medida que se encuentren nuevas combinaciones. Para limitar el tamaño de las tablas, en otras situaciones, podrían ser apropiadas múltiples dimensiones de datos no deseados, dependiendo de la correlación entre los distintos indicadores.

Las dimensiones de datos basura también son apropiadas para colocar atributos como comentarios no genéricos de la tabla de hechos. Dichos atributos podrían consistir en datos de un campo de comentarios opcional cuando un cliente realiza un pedido y, como resultado, probablemente estarán en blanco en muchos casos. Por lo tanto, la dimensión de datos basura debe contener una sola fila que represente los espacios en blanco como una clave sustituta que se utilizará en la tabla de hechos para cada fila devuelta con un campo de comentarios en blanco. [ 6 ]

Dimensión degenerada

Una dimensión degenerada es una clave, como un número de transacción, número de factura, número de boleto o número de conocimiento de embarque, que no tiene atributos y, por lo tanto, no se une a una tabla de dimensiones real. Las dimensiones degeneradas son muy comunes cuando la granularidad de una tabla de hechos representa un único elemento de transacción o línea, ya que la dimensión degenerada representa el identificador único del elemento principal. Las dimensiones degeneradas suelen desempeñar un papel fundamental en la clave primaria de la tabla de hechos. [ 7 ]

Dimensión de juego de rol

Las dimensiones se suelen reutilizar para múltiples aplicaciones dentro de la misma base de datos. Por ejemplo, una dimensión "Fecha" puede usarse para "Fecha de venta", "Fecha de entrega" o "Fecha de alquiler". Esto se conoce como "dimensión multifuncional". Esta funcionalidad se puede implementar mediante una vista de la misma tabla de dimensiones.

Dimensiones del estabilizador

Por lo general, las tablas de dimensiones no hacen referencia a otras dimensiones mediante claves foráneas. Cuando esto ocurre, la dimensión referenciada se denomina dimensión de apoyo. Las dimensiones de apoyo se consideran una mala práctica en el almacenamiento de datos: se recomienda utilizar tablas de hechos que relacionen ambas dimensiones. [ 8 ]

Dimensión reducida

Se dice que una dimensión conformada es una dimensión reducida cuando incluye un subconjunto de las filas y/o columnas de la dimensión original. [ 9 ]

dimensión de fecha del calendario

Se puede utilizar un tipo especial de dimensión para representar fechas con una granularidad de un día. Las fechas se referenciarían en una tabla de hechos como claves foráneas a una dimensión de fecha. La clave primaria de la dimensión de fecha podría ser una clave subrogada o un número con el formato AAAA/MM/DD.

La dimensión de fecha puede incluir otros atributos, como la semana del año o indicadores que representen días laborables, festivos, etc. También puede incluir filas especiales que representen fechas desconocidas o aún por definir. Esta dimensión debe inicializarse con todas las fechas necesarias, por ejemplo, las de los próximos 10 años, o más si se requiere, o fechas pasadas si se gestionan eventos anteriores.

En cambio, el tiempo suele representarse mejor como una marca de tiempo en la tabla de hechos . [ 10 ]

Uso de términos de representación ISO

Al hacer referencia a datos de un registro de metadatos como ISO/IEC 11179 , se suelen utilizar como dimensiones términos de representación como "Indicador" (un valor booleano verdadero/falso) y "Código" (un conjunto de valores enumerados que no se superponen). Por ejemplo, utilizando el Modelo Nacional de Intercambio de Información (NIEM), el nombre del elemento de datos sería "PersonGenderCode" y los valores enumerados podrían ser "masculino", "femenino" y "desconocido".

Tabla de dimensiones

En el almacenamiento de datos , una tabla de dimensiones es una de las tablas complementarias de una tabla de hechos .

La tabla de hechos contiene datos empresariales (o medidas) y claves foráneas que hacen referencia a claves candidatas (normalmente claves primarias ) en las tablas de dimensiones.

A diferencia de las tablas de hechos, las tablas de dimensiones contienen atributos (o campos) descriptivos que suelen ser campos de texto (o números discretos que se comportan como texto). Estos atributos están diseñados para cumplir dos funciones fundamentales: restringir o filtrar las consultas y etiquetar los conjuntos de resultados de las mismas.

Los atributos de dimensión deben ser:

  • Descriptivo (etiquetas que constan de palabras completas)
  • Descriptivo
  • Completo (sin valores faltantes)
  • Valores discretos (con un solo valor por fila de la tabla de dimensiones)
  • Calidad garantizada (sin errores ortográficos ni valores imposibles).

Las filas de las tablas de dimensiones se identifican de forma única mediante un solo campo clave. Se recomienda que este campo clave sea un número entero simple, ya que su valor carece de significado y solo se utiliza para unir campos entre las tablas de hechos y de dimensiones. Las tablas de dimensiones suelen usar claves primarias que también funcionan como claves subrogadas. Estas claves subrogadas a menudo se generan automáticamente (por ejemplo, una columna de identidad de Sybase o SQL Server, un número serial de PostgreSQL o Informix, una secuencia de Oracle o una columna definida con AUTO_INCREMENT en MySQL).

El uso de claves de dimensión sustitutas ofrece varias ventajas, entre ellas:

  • Rendimiento . El procesamiento de uniones se vuelve mucho más eficiente al usar un solo campo (la clave subrogada ).
  • Protección contra prácticas de gestión de claves operativas. Esto evita situaciones en las que las filas de datos eliminadas puedan reaparecer cuando sus claves naturales se reutilizan o reasignan después de un largo período de inactividad.
  • Mapeo para integrar fuentes dispares
  • Manejo de conexiones desconocidas o no aplicables
  • Seguimiento de los cambios en los valores de los atributos de dimensión.

Si bien el uso de claves sustitutas supone una carga para el sistema ETL , el procesamiento de la canalización se puede mejorar, y las herramientas ETL incorporan un procesamiento mejorado de claves sustitutas.

El objetivo de una tabla de dimensiones es crear dimensiones estandarizadas y uniformes que puedan compartirse en todo el entorno de almacenamiento de datos de la empresa , y que permitan la unión con múltiples tablas de hechos que representen diversos procesos de negocio.

Las dimensiones conformadas son importantes para la naturaleza empresarial de los sistemas DW/BI porque promueven:

  • Coherencia. Cada tabla de hechos se filtra de forma coherente, de modo que las respuestas a las consultas se etiquetan de forma consistente.
  • Integración. Las consultas pueden analizar en detalle diferentes tablas de hechos de procesos por separado y, a continuación, combinar los resultados en función de atributos de dimensión comunes.
  • Se reduce el tiempo de desarrollo para su comercialización. Las dimensiones comunes están disponibles sin necesidad de recrearlas.

Con el tiempo, los atributos de una fila determinada en una tabla de dimensiones pueden cambiar. Por ejemplo, la dirección de envío de una empresa puede cambiar. Kimball se refiere a este fenómeno como dimensión de cambio lento . Las estrategias para abordar este tipo de cambio se dividen en tres categorías:

  • Tipo uno: Simplemente sobrescribe el/los valor/es anterior/es.
  • Tipo dos: Añadir una nueva fila que contenga el/los nuevo/s valor/es y distinguir entre las filas utilizando técnicas de versionado de tuplas .
  • Tipo tres: Añadir un nuevo atributo a la fila existente.

Patrones comunes

Fecha y hora

Fuente: [ 11 ]

Dado que muchas tablas de hechos en un almacén de datos son series temporales de observaciones, a menudo se necesitan una o más dimensiones de fecha. Una de las razones para tener dimensiones de fecha es incorporar información del calendario en el almacén de datos en lugar de codificarla directamente en la aplicación. Si bien una simple marca de tiempo SQL es útil para proporcionar información precisa sobre el momento en que se registró un hecho, no puede brindar información sobre días festivos, períodos fiscales, etc. Aun así, una marca de tiempo SQL puede ser útil para almacenar en la tabla de hechos, ya que permite realizar cálculos precisos.

Incluir la fecha y la hora en la misma dimensión puede generar fácilmente una dimensión enorme con millones de filas. Si se requiere un alto nivel de detalle, suele ser recomendable separar la fecha y la hora en dos o más dimensiones independientes. Una dimensión de tiempo con una granularidad de segundos al día solo tendrá 86 400 filas. Se puede elegir un nivel de detalle mayor o menor para las dimensiones de fecha y hora según las necesidades. Por ejemplo, las dimensiones de fecha pueden tener una precisión de año, trimestre, mes o día, y las de tiempo, de horas, minutos o segundos.

Como regla general, la dimensión de hora del día solo debe crearse si se necesitan agrupaciones jerárquicas o si existen descripciones textuales significativas para períodos de tiempo dentro del día (por ejemplo, "hora punta de la tarde" o "primer turno").

Si las filas de una tabla de hechos provienen de varias zonas horarias, puede ser útil almacenar la fecha y la hora tanto en la hora local como en la hora estándar. Esto se puede lograr creando dos dimensiones para cada dato de fecha y hora necesario: una para la hora local y otra para la hora estándar. Almacenar la fecha y la hora en ambas modalidades permitirá analizar cuándo se crean los hechos tanto a nivel local como global. La hora estándar elegida puede ser la hora estándar global (por ejemplo, UTC ), la hora local de la sede de la empresa (por ejemplo, CET ) o cualquier otra zona horaria que resulte conveniente.

Véase también

Referencias

  1. " Guía de almacenamiento de datos de Oracle ", Oracle Corporation, consultado el 9 de junio de 2014.
  2. Definición: Dimensión " Gestión de datos de búsqueda, TechTarget, consultado el 9 de junio de 2014
  3. Ross, Margy (5 de febrero de 2013). "Consejo de diseño n.° 152: Tipos de dimensión que cambian lentamente: 0, 4, 5, 6 y 7" . Kimball Group . Consultado el 12 de enero de 2022 .
  4. Ralph Kimball, Margy Ross, The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling, Segunda edición, Wiley Computer Publishing, 2002. ISBN 0471-20024-7Páginas 82-87, 394
  5. Ralph Kimball, Margy Ross, The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling, Segunda edición, Wiley Computer Publishing, 2002. ISBN 0471-20024-7Páginas 202, 405
  6. Kimball, Ralph, et al. (2008): The Data Warehouse Lifecycle Toolkit, Segunda edición, Wiley Publishing Inc., Indianápolis, IN. Páginas 263-265
  7. Ralph Kimball, Margy Ross, The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling, Segunda edición, Wiley Computer Publishing, 2002. ISBN 0471-20024-7Páginas 50, 398
  8. Ralph Kimball; Margy Ross (2013). The Data Warehouse Toolkit, 3.ª edición . Wiley. pág. 50. ISBN  978-1-118-53080-1.
  9. Ralph Kimball; Margy Ross (2013). The Data Warehouse Toolkit, 3.ª edición . Wiley. pág. 51. ISBN  978-1-118-53080-1.
  10. Ralph Kimball; Margy Ross (2013). The Data Warehouse Toolkit, 3.ª edición . Wiley. pág. 48. ISBN  978-1-118-53080-1.
  11. Ralph Kimball, The Data Warehouse Toolkit, Segunda edición, Wiley Publishing, Inc., 2008. ISBN 978-0-470-14977-5Páginas 253-256

Obtenido de " https://en.wikipedia.org/w/index.php?title=Dimension_(data_warehouse)&oldid=1312010020 "