0% encontró este documento útil (0 votos)
18 vistas67 páginas

Tipos de Datos en Almacenes de Datos

El documento describe los sistemas de bases de datos relacionales y los almacenes de datos. Los sistemas OLTP almacenan datos operacionales para procesar transacciones, mientras que los almacenes de datos almacenan datos históricos para análisis. Los almacenes de datos extraen datos de múltiples fuentes y los organizan por temas para soportar consultas de negocios. También comparte las diferencias entre sistemas OLTP y almacenes de datos.

Cargado por

Luis Suntaxi
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
18 vistas67 páginas

Tipos de Datos en Almacenes de Datos

El documento describe los sistemas de bases de datos relacionales y los almacenes de datos. Los sistemas OLTP almacenan datos operacionales para procesar transacciones, mientras que los almacenes de datos almacenan datos históricos para análisis. Los almacenes de datos extraen datos de múltiples fuentes y los organizan por temas para soportar consultas de negocios. También comparte las diferencias entre sistemas OLTP y almacenes de datos.

Cargado por

Luis Suntaxi
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

BASE DE DATOS

Bases de datos Relacionales


 Los sistemas de gestión de bases de datos se utilizan en todo tipo de sectores, siendo los sistemas de
gestión de bases de datos relacionales el tipo de sistema dominante.
 Estos sistemas han sido diseñados para gestionar una alta tasa de transacciones, realizando con cada
transacción, normalmente pequeños cambios en los datos operacionales de la organización.
 A estos sistemas se les denominan sistemas de procesamiento de transacciones en línea (OLTP, Online
Transaction Processing).
 El tamaño de las bases de datos OLTP puede ir desde bases de datos de pequeño tamaño (MB), de
tamaño mediano (GB) y de gran tamaño (TB y PB) de capacidad de almacenamiento.
 Los sistemas OLTP están diseñados para maximizar la capacidad de procesamiento de transacciones.
 Los sistemas OLTP están optimizados para un alto número de transacciones que son predecibles,
repetitivas y que ejecutan actualizaciones intensivas en la BDD.
 Los sistemas OLTP (sistemas operacionales) tienen un propósito específico y es el de constituirse en una
herramienta de soporte y apoyo para registrar o controlar transacciones (operaciones) que se producen
dentro de un área de la organización.
Almacén de Datos
 Las personas encargadas de la toma de decisiones dentro de la organización requieren para su función,
disponer de herramientas de análisis, que estén basadas en la información con la que se cuenta o puede
la puede conseguir.
 A partir de este requerimiento, se crea el concepto de almacén de datos que tiene como fin almacenar
(contener) datos extraídos de diversas fuentes (internas y externas), mantenidos por diferentes unidades
operativas, junto con las transformaciones históricas y los correspondientes resúmenes.
EVOLUCIÓN DE LOS ALMACENES DE DATOS
 En la década de los 70 las organizaciones ganaban ventajas competitivas al utilizar sistemas que ofrecían
servicios más eficientes y baratos a los clientes. Pero se iba acumulando una creciente cantidad de datos
en las bases de datos.
 Los sistemas operacionales no fueron diseñados para soportar actividades orientadas para la toma de
decisiones dentro del negocio por lo que utilizar estos sistemas para este fin; no resultar nada sencillo.
(discrepancias en los tipos de datos)
• El concepto de almacén de datos intenta proporcionar una solución que satisfaga la necesidad de
disponer de un sistema capaz de soportar el proceso de toma de decisiones.
 El concepto de almacén de datos fue desarrollado por IBM, denominándola “almacén de información” y
fue presentada como una solución para acceder a los datos almacenados en sistemas no relacionales.
 Esto fue propuesto con el objetivo de permitir a las organizaciones utilizar sus archivos de datos para
obtener una ventaja comercial.
 Los primeros intentos de crear un almacén de información fueron en su mayor parte rechazados.
(enorme complejidad al implementarlo)

Definición de Almacén de Datos


 Bill Inmon el más reciente y exitoso defensor de los almacenes de datos, define a un almacén de datos
de la siguiente manera:
Una colección de datos clasificada por temas, integrada, variable en el tiempo y no volátil que se utiliza
como ayuda al proceso de toma de decisiones por parte de quienes dirigen una organización.
 Se llama DataWarehouse al almacén de datos que reúne la información histórica generada por todos los
distintos departamentos de una organización, orientada a consultas complejas y de alto rendimiento.
Análisis de esta definición
 Clasificada por temas: el almacén de datos está organizado de acuerdo con los temas (áreas, segmentos
o líneas de negocio) que más importancia (interés) tienen para la organización (clientes, productos,
ventas, geografía, tiempo, etc.) en lugar de organizarse por áreas de aplicación (facturación, control de
almacén y pedidos).
 Integrados: debe dotarse de coherencia a los datos provenientes de diversas fuentes (internas y
externas), para presentar una vista unificada de los datos a los usuarios.
 Variables en el tiempo: porque los datos del almacén de datos solo son precisos y válidos en algún
intervalo de tiempo.
 No volátiles: los datos no se actualizan en tiempo real sino que se refrescan en forma periódica a partir
de los sistemas operacionales.
 Un Almacén de Datos (DataWarehouse) pretende conseguir que cualquier departamento pueda acceder
a la información de cualquiera de los otros mediante un único medio, así como obligar a que los mismos
términos tengan el mismo significado para todos.
VENTAJAS DE LOS ALMACENES DE DATOS
 Un alto retorno de inversión.
 Ventajas competitivas: los altos retornos de inversión para aquellas empresas que han conseguido
implementar con éxito un almacén de datos.
 Mayor productividad: para los responsables de la toma de decisiones ya que los datos se transformaran
en información más significativa, lo que permitirá que realicen un análisis más relevante, preciso y
coherente de una determinada área o línea de negocio.
COMPARACION DE LOS SITEMAS OLTP Y LOS ALMACENES DE DATOS

COMPARACION DE LOS SITEMAS OLTP Y LOS ALMACENES DE DATOS


 Los sistemas OLTP están diseñados para maximizar la capacidad de procesamiento de transacciones, los
almacenes de datos están diseñados para soportar el procesamiento de consultas.
 Los sistemas OLTP están optimizados para un alto número de transacciones que son predecibles,
repetitivas y que ejecutan actualizaciones intensivas en la BDD.
 El almacén de datos está diseñado para soportar un número bajo de transacciones.
 Los sistemas OLTP y los almacenes de datos tienen diferentes características y se construyen con
diferentes propósitos, pero estos a su vez están relacionados en que OLTP proporcionan los datos de
origen para el almacén de datos.
 Propiedad de los datos Los datos confidenciales que antes sólo eran vistos y utilizados por un área de
negocio o un departamento concreto, pueden ser accesibles por parte de otras personas de la
organización.
PROBLEMA DE LOS ALMACENES DE DATOS

Subestimación de los recursos necesarios para la carga de datos


 Los desarrolladores subestiman el tiempo requerido para extraer, limpiar y cargar los datos en el
almacén.
Problemas ocultos de los sistemas de origen
 El desarrollador debe decidir si solucionar el problema en el almacén de datos o modificar los sistemas
de origen.
No se captura los datos requeridos
Los proyectos de almacenes de datos a menudo hacen que las organizaciones se percaten de que hay
datos que no están siendo capturados por los sistemas de origen existentes, por lo que la organización debe
decidir si hay que modificar los sistemas OLTP o si debe crearse un sistema dedicado a la captura de los datos
que faltan.
PROBLEMA DE LOS ALMACENES DE DATOS
Incremento de la demanda por parte de los usuarios finales
Las solicitudes de soporte por parte del personal de sistemas de información pueden incrementarse, en
lugar de reducirse.
Alta demanda de recursos
El almacén de datos puede utilizar una gran cantidad de espacio en disco.
Complejidad de la integración
Una organización debe invertir una cantidad significativa de tiempo en determinar hasta que punto
pueden integrarse las diferentes herramientas de almacén de datos disponibles dentro de la solución global que
se pretende poner en marcha
OLAP
On Line Analytical Processing (Procesamiento Analítico En Línea)
• Las aplicaciones informáticas clásicas de consulta, orientadas a la toma de decisiones, deben ser
programadas. Atendiendo a las necesidades del usuario, se crea una u otra interfaz.
• Pueden ser generalizadas
• Evitan la necesidad de desarrollar interfaces de consulta, y ofrecen un entorno único valido para el
análisis de cualquier información histórica, orientado a la toma de decisiones. A cambio, es necesario
definir dimensiones, jerarquías y variables, organizando los datos.
• Se trata de procesos de análisis de información. Estos sistemas están orientados al acceso en modo
consulta.
R-OLAP
• Es la arquitectura de base de datos multidimensional en la que los datos se encuentran almacenados en
una base de datos relacional, que tiene forma de estrella (copo de nieve o araña).
• En principio la base de datos sólo almacena información relativa a los datos en detalle, evitando
acumulados (evitando redundancia).
• En R-OLAP, al no haber redundancia, el fichero de base de datos es pequeño. Los procesos batch de
carga son rápidos (ya que no se requiere agregación), y sin embargo, las consultas pueden ser muy lentas,
por lo que se aplica la solución de tener al menos algunas consultas pre calculadas.
M-OLAP
• Se encuentran almacenados en ficheros con estructura multidimensional, los cuales reservan espacio
para todas las combinaciones de todos los posibles valores de todas las dimensiones de cada una de las
variables, incluyendo los valores de dimensión que representan acumulados.
• Contiene pre calculados (almacenados) todos los resultados posibles en una base de datos
• Consultas muy rápidas a cambio de mayores necesidades de almacenamiento, y retardos en las
modificaciones (que no deberían producirse salvo excepcionalmente), y largos procesos batch de carga
y cálculo de acumulados.
• El gran tamaño de las variables multidimensionales o el retardo en los procesos batch puede ser un
inconveniente.
Conceptos de Bases de Datos Multidimensionales
• BDR.- Base de Datos Relacional. Sistema de almacenamiento de datos basado en un conjunto de tablas
unidas mediante relaciones.
• BDM.- Base de datos Multidimensional. Base de datos de estructura basada en dimensiones orientada a
consultas complejas y alto rendimiento. Puede utilizar un SGBDR en estrella (Base de datos
Multidimensional a nivel lógico) o SGBDM (Base de datos Multidimensional a niveles lógico y físico o
Base de datos Multidimensional Pura)
• OLTP.- On Line Transactional Processing. Procesamiento Transaccional En Línea. Se trata de los procesos
clásicos de tratamiento automático de información, que incluyen Altas, Bajas, Modificaciones y
Consultas.
• OLAP.- On Line Analytical Processing
• DW.- DataWarehouse
• Datamart
• EIS.-Executive Information Systems. Sistemas de información para directivos.
• DSS.- Decision Support System. Sistema de ayuda a la toma de decisiones.
• Data Mining. Minado de datos
• KDD.- Knowdledge Discovery in Databases.
• Dimensión.- Criterio de clasificación de información. Eje de análisis. Lista de valores que proporciona un
índice a los datos. Por ejemplo: <Tiempo>, <Geografía>, <Producto>
• Rotación.- Cambio de dimensiones en un informe.
• Drill Down.- Descomponer (visualmente) en detalle un dato según una jerarquía de una dimensión.
• Drill Up.- Agregar (visualmente) un dato según una jerarquía de una dimensión.
• Elementos de una dimensión.- Posibles valores de un eje de análisis. Por ejemplo: "Enero de 1998",
"Trimestre 4 de 1998", o "1996" para la dimensión <Tiempo> y “Cuenca", "Ambato" o "Zona Norte" para
la dimensión <Geografía>
• Spread.- Proceso que produce dentro de una dimensión una progresión o algún tipo de reparto
proporcional de la cantidad asignada a un elemento entre otros de acuerdo a un criterio.
• Roll Up.- Proceso que calcula para un indicador, y para una o más de las dimensiones del indicador, los
valores agregados o padres sucesivos a partir de la suma de sus hijos, según jerarquías especificadas,
pudiendo poseer cada dimensión más de una jerarquía.
• Jerarquía.- Forma de agrupar todos o sólo algunos de los elementos de una dimensión con relaciones
padre-hijo. Casi siempre, pero no obligatoriamente, implican que el padre se calcula como la suma de
sus hijos. Una dimensión puede tener cero, una o varias jerarquías.
• Relaciones o Atributos.- Definen vínculos entre valores de dos dimensiones, de forma que cada valor de
una dimensión puede estar relacionado con uno o más valores de otra dimensión
• OLTP to OLAP.- Proceso de migración de datos desde un sistema OLTP a uno OLAP. Esta migración es
habitualmente el elemento crítico en un desarrollo OLAP
• R-OLAP
• M-OLAP
• H-OLAP. Arquitectura que combina las tecnologías ROLAP y MOLAP. En HOLAP, el soporte de
almacenamiento de datos y el motor de generación de vistas contienen elementos de ambas
tecnologías. Pretende combinar las ventajas de cada una sin sus inconvenientes.

R-OLAP H-OLAP M-OLAP

Espacio Bajo Medio Alto


Ocupado

Velocidad de Baja Media Alta


las consultas

Carga de los Alta Media Media


procesos
Batch
COMO DISEÑAR GRANDES VARIABLES EN BASES DE DATOS MULTIDIMENCIONALES
 Se presentan dos problemas asociados al trabajo con variables multidimensionales de gran tamaño (la
falta de espacio en disco y la necesidad de procesos de cálculo de valores agregados más rápidos)
proponiendo diversas soluciones aplicables en tiempo de diseño de la base de datos que las contiene.
 Aunque pudiera parecer extraño, existen muchos casos en los que el número de datos calculados
mediante agregación es muy superior al de los datos simplemente cargados directamente en la base de
datos. En la Analogía piramidal de los datos tendríamos una pirámide invertida.
INTRODUCCION
 El uso de dimensiones es una forma de mostrar (y a veces almacenar) datos muy útil en sistemas con
grandes cantidades de información. Las dimensiones son ejes de análisis o criterios de clasificación de la
información que ofrecen un índice a los datos mediante una lista de valores. Por ejemplo son
dimensiones <Tiempo>, <Geografía> y <Producto>.
 Se llama DataWarehouse al almacén de datos que reúne la información histórica generada por todos los
distintos departamentos de una organización, orientada a consultas complejas y de alto rendimiento.
Un DataWarehouse pretende conseguir que cualquier departamento pueda acceder a la información de
cualquiera de los otros mediante un único medio, así como obligar a que los mismos términos tengan el
mismo significado para todos.
 Un Datamart es un almacén de datos históricos relativos a un departamento de una organización, así
que puede ser simplemente una copia de parte de un DataWarehouse para uso departamental
 PROCESO BATCH. Llevar a cabo una operación particular de forma automática en un grupo de archivos
todos de una vez, en lugar de "manualmente" abrir, editar y guardar cada archivo por vez. Por ejemplo,
un programa que convierta un grupo de imágenes de un formato a otra todas de una vez sería una
utilidad de procesamiento batch.
 Tanto el DataWarehouse como el Datamart son sistemas orientados a la consulta, en los que se producen
procesos batch de carga de datos (altas) con una frecuencia baja y conocida. Ambos son consultados
mediante herramientas OLAP (On Line Analytical Processing) que ofrecen una visión multidimensional
de la información.
 Sobre estas bases de datos se pueden construir EIS (Executive Information Systems ( Sistemas de
Información para ejecutivos o Directivos) y DSS (Decision Support Systems, Sistemas de Ayuda a la toma
de Decisiones). Por otra parte, se conoce como Data Mining al proceso no trivial de análisis de grandes
cantidades de datos con el objetivo de extraer información útil, por ejemplo para realizar clasificaciones
o predicciones.
 Aquí se muestra una representación espacial de una variable multidimensional con una, dos y tres
dimensiones. En esta figura los cubitos representan valores de dimensión, y las esferas son datos.

 Una variable unidimensional podría ser el cambio del euro con el dólar, que sólo varía en la dimensión
<tiempo>. Los cubitos serían, por ejemplo, los días del año y las esferas serían los valores numéricos
correspondientes al cambio monetario en cada momento. Un ejemplo de variable de dos dimensiones
es el número de habitantes, que se mueve por las dimensiones <Geografía> y <tiempo>. Finalmente, los
ingresos de una organización podrían almacenarse mediante una variable de tres dimensiones:
<producto>, <Geografía> y <tiempo>.
 Normalmente los elementos de una dimensión forman una jerarquía, con lo que algunos son padres de
otros. Cuando las variables multidimensionales de un datamart o datawarehouse son cargadas con
nueva información (por ejemplo, mensualmente a partir de ficheros de texto), ésta se refiere a los nodos
hoja del árbol jerárquico de cada una de las dimensiones.
 Por ejemplo, la información de ventas llega detallada por producto, por provincia y por mes. Pero si
queremos obtener el total de ventas de todos los productos, el total de ventas de todas las provincias,
el de todos los meses del año, o alguna combinación de estos, deberemos realizar un proceso de
agregación de la información.
 Por ejemplo, en la dimensión Producto incluiremos un valor llamado "Total Productos" que será padre
de todos los demás productos y que contendrá el acumulado de todos ellos. En la dimensión tiempo
podremos tener, por ejemplo, el año 2000 descompuesto en trimestres, y estos a su vez en meses. La
información llega detallada por producto y por mes, y posteriormente a la carga de datos, se realiza un
proceso de agregación que calcula estos acumulados.
DATAWAREHOUSE
 Un datawarehouse es un conjunto de datos integrados, orientados a una materia que varían con el
tiempo y que no son transitorios, los cuales soportan el proceso de toma de decisión
 No son transitorios
 No son volátiles
 No se llevan a cabo modificaciones o eliminaciones, solo inserciones
 Guarda datos sumarizados
 Orientados a una materia
 Orientados a una materia: Organiza y orienta los datos en función del usuario final y sus temas de interés
 Ejemplo: Ventas, Competencias, Internaciones
 Datos integrados
 Los datos provienen de diferentes fuentes
 La integración de datos se logra mediante la consistencia en la Convenciones de nombres,
Unidades de medida y codificación
 Varían con el tiempo
 Mantiene tanto datos históricos como datos actuales
 La información histórica es de gran importancia, permite analizar tendencias
 Software de consultas
 Generadores de reportes
 Data mining
 Metadatos: Representan toda la información de administración y seguimiento necesarios para Acceso a
datos, Compresión y utilización de los mismos
 Datamarts
 Subconjuntos departamentales que focalizan objetos seleccionados
 Se caracteriza por una definición de requerimientos más rápida y fácil
 Pueden integrarse en un futuro en un DataWarehouse
 Datamining :Extracción de información oculta y predecible de grandes bases de datos
 Predicción automatizada de tendencias y comportamientos
 Descubrimiento automatizado de modelos previamente desconocidos
Modelo Conceptual de un datawarehouse
Esquema de Hechos: El esquema de DataWarehouse consiste en un conjunto de esquemas de hechos.
 Componentes:
 Hechos: es un enfoque de interés para la empresa, Ej. : ventas, competencias, internaciones
 Dimensiones: determina la granularidad para la determinación de los hechos. Ej. : producto,
fecha, almacén
 Jerarquías: La dimensiones se asocian con sus jerarquías y especifican distintos niveles de
agrupamiento

Hipercubo:
 Operaciones:
 Pivoting: se rota el cubo para ver una cara en particular. Por Ej. : analizar informaciones referidas
a un proveedor.
 Slicing Dicing: se selecciona algún subconjunto del cubo. Analizar el cubo de datos
restringiéndolo para algunos proveedores, productos y fechas
 Roll Up: se agrupa por alguna dimensión determinada. Por Ej. : Analizar las ventas de producto a
las ventas por tipo de producto
Implementaciones relacionales
 Esquema estrella: Compuesto por una tabla central −tabla de hechos− y un conjunto de tablas
mostradas en una forma radial alrededor de ésta −tablas dimensión
 Copo de nieve ó Pochoclo: Extensión del esquema estrella, donde cada una de las tablas del
esquema se divide en más tablas −tablas más normalizadas−


Modelo Constelación
Diseño conceptual de un DataWarehouse
 Metodología semi automática para construir un modelo lógico de un DataWarehouse a partir de un
Modelo Entidad Interrelación
 Ejemplo:
 Transformación de una relación en entidad
 Metodología :
 Construir el árbol de atributos
 Recortar e injertar el árbol
 Definir dimensiones
 Definir atributos de hecho
 Definir jerarquias
DATAMINING
 Es la extracción de Información oculta y predecible de grandes base de datos. Las herramientas de
datamining predicen futuras tendencias y comportamientos, permitiendo en los negocios tomas
decisiones proactivas. El usuario trata de obtener una relación de los datos que tengan repercusiones en
su negocio.
 Los fundamentos de Dataminig:
 Recolección masiva de datos
 Potentes computadoras con multiprocesadores
 Algoritmos de datamining
 El Alcance de Dataminig
 Predicción automatizada de tendencias y comportamientos.
 Descubrimiento automatizado de modelos previamente desconocidos.
 Técnicas más comunes usadas en Dataminig
 Redes neuronales artificiales
 Árboles de decisión
 Algoritmos Genéticos
 Regla de inducción
 ANOVA (análisis de la varianza)
 Regresión
 Ji cuadrado
 Lógica Difusa
 Series Temporales
 Cómo Trabaja Dataminig
 Las computadoras son cargadas con mucha información donde una respuesta es conocida y luego
El software de datamining debe correr a través de los datos y distinguir Las características de los
datos que levarán al modelo. Una vez que El modelo se construyó, puede ser usado en situaciones
similares donde no se conoce la respuesta.
Cálculo del tamaño de una variable multidimensional
Durante el diseño de la base de datos multidimensional, antes de la creación de los objetos, es
interesante predecir, para cada una de las variables que se espera utilizar lo siguiente:
• El tamaño en disco ocupado por la variable
• El tiempo que tardará el proceso de agregación de los valores acumulados
• El tamaño de una variable multidimensional dependerá del número de valores de cada una de las
dimensiones por las que "se mueva" la variable, incluyendo los valores acumulados.
• Dada una variable multidimensional V dimensionada por D 1, D2,... Dn
• V(D1, D2,... Dn)
• Siendo N[Di] el número de valores de cada dimensión, el número de celdas de la variable
multidimensional NC[V] será el producto de estos valores, es decir:
• Por ejemplo, dada la variable multidimensional [Link] (<Artículo>, <Geografía>, <Tiempo>)
• Siendo N[<Artículo >] = 10 N[<Geografía>] = 50 N[<Tiempo>] = 20
• Podemos calcular el número de celdas de la variable de la forma:
• NC[V] = N[<Artículo >] * N[<Geografía>] * N[<Tiempo>] = 10 * 50 * 20 = 10000
• Un fichero que cargue nuestra variable de ejemplo podría tener el siguiente aspecto:
"1";"32";"199912";"325"
"1";"48";"200001";"222"
"3";"32";"200001";"125"
"3";"48";"200001";"1235"
• El formato de las líneas es:
• "<Artículo>";"<Geografía>";"<Tiempo>";"Unidades Vendidas"
• Cada una de las líneas leídas de este fichero se atribuirán, en principio, a una celda de detalle.
Asignaremos cada dato (el campo Unidades Vendidas) a una celda del cubo de [Link], identificada
por un valor
• Artículo, Geografía , Tiempo.
• Las celdas de detalle son aquellas que son hojas en todas las dimensiones.
• Las celdas de acumulados (o las celdas que no son de detalle) serán aquellas que no son hojas en todas
las dimensiones, o lo que es lo mismo, que son celdas de acumulados por al menos una de las
dimensiones.
• El número total de celdas acumuladas (NCA) lo podemos calcular restando del total de celdas (NC), las
que son de detalle (NCD).
• NC[V] = NCD[V] + NCA[V]
NCA[V] = NC[V] - NCD[V]
• El número de celdas acumuladas (NCA) será mayor que el número de celdas de detalle (NCD) cuando:
• NCA[V] > NCD[V]
NC[V] - NCD[V] > NCD[V]
NC[V] > 2 * NCD[V]
Cómo reducir el tamaño de una variable
 Las variables multidimensionales pueden estar comprimidas, por ejemplo,
 Mediante la tecnología sparse de Oracle Express.
 Sin embargo, es posible que por diversas razones no queramos utilizar una variable comprimida, o que
a pesar de utilizar compresión, el espacio ocupado por la variable siga siendo excesivo.
 Las formas de reducir el tamaño de una variable son eliminar dimensiones y eliminar valores de
dimensión.
 Por ejemplo, si podemos prescindir de un detalle diario, y nos basta la información semanal, podremos
ahorrar mucho espacio en disco.
 Una vez que las dimensiones y valores de dimensión se han reducido al mínimo aceptable, y existiendo
aún problemas de espacio.
 Queda la opción de eliminar algunos de los valores acumulados de la dimensión, ya que podrán ser
calculados a partir de sus hijos.
 Pero no deberíamos aplicar masivamente esta solución, ya que entorpeceríamos las consultas.
 Precisamente, las bases de datos multidimensionales pretenden, entre otras cosas, agilizar consultas
disponiendo de valores precalculados.
 Lo más adecuado es aplicar esta técnica en dimensiones pequeñas.
 Por ejemplo, si la variable posee alguna dimensión con tres valores, uno de ellos total, eliminando el
valor total de la dimensión se ahorra un tercio del espacio, y los cálculos realizados bajo demanda
suponen sumas de pocos (dos) valores. En cambio, si el número de valores de la dimensión fuese
elevado, el ahorro sería mucho menor, y los cálculos más lentos.
 En realidad podríamos eliminar cualquiera de los tres valores, y ya que el total será probablemente el
más consultado tal vez fuera mejor eliminar alguno de los hijos, aunque esto complicaría los programas
de carga de datos.
A continuación veremos un ejemplo de esto con una variable de tres dimensiones.
Esta solución implica el uso de variables y fórmulas multidimensionales.
En las bases de datos multidimensionales se almacenan tanto variables como fórmulas.
Las variables contienen datos.
Las fórmulas en cambio, son expresiones o programas que acceden a variables y/o a otras fórmulas, y que
indican la manera de calcular los datos que serán presentados al usuario.
Según la solución propuesta, en vez de almacenar una variable del tipo. V(D1 D2 D3)

Cuyas necesidades de espacio serán menores o iguales, siempre que se cumpla que
Dt1 * Dt2 * Dt3 >= Dt1 * Dt2 + Dt1 * Dt3 + Dt2 * Dt3
Siendo esta una condición que se cumple habitualmente. Para el caso que nos ocupa, puede considerarse
que se cumple siempre, ya que es condición suficiente (aunque no necesaria).
si n es el número de dimensiones y D ti es el número de valores de la dimensión i, basta con que se cumpla.
Se construye una fórmula
F1(D1 D2 D3)
que dependiendo del total consultado, extraiga los datos de una u otra variable, de la forma:
F1 =
if D1 = 'T'
V3
else if D2 = 'T'
V2
else if D3 = 'T'
V1
else
NA
Utilizando la analogía espacial, en vez de almacenar todo el cubo de datos, se almacenan sólo los datos de
las caras del cubo, Se almacenarán tantas caras de cubo como dimensiones existan, en este caso, sólo tres.
 Por ejemplo, si el número de valores de cada dimensión fueran 10, 50 y 20 respectivamente, en vez de
almacenar los datos en una variable de 10 * 50 * 20 celdas = 10000 celdas, tendríamos tres variables
de 10 * 50, 10 * 20 y 50 * 20 celdas, en total, 500 + 200 + 1000 = 1700 celdas.
Podría almacenarse en 10 variables, cuyo número corresponde con todas las combinaciones de las dos
dimensiones que se consultarán a total:
D1 D2
D1 D3
D1 D4
D1 D5
D2 D3
D2 D4
D2 D5
D3 D4
D3 D5
D4 D5
O desde otro punto de vista, y dado que

comb(n, m) = comb(n, n - m)
se trata de todas las combinaciones de las tres de esas cinco
dimensiones que no estarán a total:

V1(D1 D2 D3)
V2(D1 D2 D4)
V3(D1 D2 D5)
V4(D1 D3 D4)
V5(D1 D3 D5)
V6(D1 D4 D5)
V7(D2 D3 D4)
V8(D2 D3 D5)
V9(D2 D4 D5)
V10(D3 D4 D5)
Si la variable fuese de dos dimensiones, y obligamos a que al menos
una de ellas sea total, tendríamos
V(D1 D2)
Almacenada mediante
V1(D1) V2(D2)
Que reduce el espacio ocupado siempre que
Dt1 * Dt2 > Dt1 * + Dt2
Y creándose la formula
F1(D1 D2)
F1 =
if D1 = 'T'
V2
else if D2 = 'T'
V1
else
NA
Podemos aplicar este sistema con cualquier valor de dimensión y no
sólo con el valor total,simplemente incluyendo una nueva variable que
implícitamente almacene los valores que
correspondan con ese valor de dimensión, cuya dimensión será
precisamente la que esa variable no posee.
Por ejemplo, dada una variable multidimensional de cuatro
dimensiones:
V(D1 D2 D3 D4)
V(D1 D2 D3 D4)
Si la dimensión D2 estuviese formada por un total T que tuviese dos
Hijos subtotales ST1 y ST2, los datos se pueden almacenar en las
variables:

V1(D1 D2 D3) Implícitamente supone D4 a T


V2(D1 D2 D4) Implícitamente supone D3 a T
V3(D1 D3 D4) Implícitamente supone D2 a T
V4(D2 D3 D4) Implícitamente supone D1 a T
V5(D1 D3 D4) Implícitamente supone D2 a ST1
V6(D1 D3 D4) Implícitamente supone D2 a ST2
Creándose la fórmula
F1(D1 D2 D3 D4)
F1 =

if D1 = 'T'
V4
else if D2 = 'T'
V3
else if D3 = 'T'
V2
else if D4 = 'T'
V1
else if D2 = 'ST1'
V5
else if D2 = 'ST2'
V6
else
NA

Cómo reducir el tiempo de las agregaciones


Si el numero de agregaciones es excesivo, una solución es no
Precalcularlas todas, y calcularlas bajo demanda.
Por ejemplo, si la dimensión D1 posee cuatro valores que son: T, V1,
V2 y V3, siendo T el padre de V1, V2 y V3, una variable cualquiera
dimensionada por D1, como por ejemplo
V1(D1 D2 D3 D4 D5 D6 D7)
podría no necesitar ser agregada por D1 siempre que, en vez de
Consultar directamente V1, se consultase una fórmula F1 que
calculase sobre la marcha el acumulado T en caso de solicitarse, es
decir:
F1 =

if D1 = 'T'
V1(D1 'V1') + V1(D1 'V2') + V1(D1 'V3')
else
V1
 Si el tamaño de una variable es excesivo, podemos reducirlo descomponiendo la variable en otras a las
cuales le falte alguna de las dimensiones, consultando una fórmula que extraiga cada vez la
información de la variable correspondiente.
 Si las agregaciones son lentas, podemos no agregar por todas las dimensiones y calcular bajo demanda
las agregaciones restantes. En este caso, es interesante que la dimensión excluida de la agregación sea
grande.
Data Warehousing

Tema: Análisis y diseño de Almacenes de Datos

Conceptos básicos
Ralph Kimball (Bottom-Up)“la información se extrae de los sistemas transaccionales para ser cargada en
diferentes Data Marts, cada uno de los cuales son independientes. Estos podrían ser implementados con
ROLAP o MOLAP
El modelo anterior se supone que debería evolucionar a lo largo del tiempo para formar un DW. Los Data
Marts, en este caso, estarían todos en un mismo repositorio.
Inmon (top-down). Coincide con el segundo caso que vimos de Kimball. Pero en este caso el DW no está
modelado dimensionalmente, sino que está en tercera forma normal (3NF).
En esta metodología los Data marts se crearán después de haber terminado el data warehouse completo de la
organización.
Características almacenes de datos:
❖ Integrados
❖ Temáticos (Orientado a temas)
❖ Históricos
❖ No volátiles
Un almacén de datos no debe ser construido todo de una sola vez. Por el contrario, deben ser diseñados y
poblados paso a paso, de forma que sean evolutivos y no revolucionarios.
Arquitectura almacenes de datos

Diseño de almacenes de datos


Para el diseño de un almacén de datos hay dos elementos fundamentales a tener en cuenta:
❖ Granularidad
❖ Particionamiento
Granularidad
La granularidad se refiere al nivel de detalles o resumen de las unidades de datos en el almacén. Cuanto
más detalle exista, menor será el nivel de granularidad. Cuanto menos detalle exista, mayor será el nivel
de granularidad.
Particionamiento.
Se utiliza mayormente para dividir una tabla de hechos, en varias tablas más pequeñas, a través de un
criterio preestablecido.
Razones principales
❖ Optimizar el mantenimiento del almacén y de sus procesos de ETL.
❖ Aumentar el rendimiento de las consultas.
Diseño conceptual de un almacén de datos
En este esquema se especifican los objetos del negocio, en términos de: hechos, dimensiones y medidas.
Hecho: Evento específico que constituye la unidad fundamental de análisis de datos, para la toma de
decisiones. Ejemplos: ventas, exportaciones, inversiones, etc.
Dimensiones: Es una entidad de negocios respecto de la cual se deben calcular las medidas. Ejemplos:
clientes, productos, tiempo, localización geográfica, etc.
Medidas: Valores cuantitativos que almacenan las métricas del negocio. Están representados por
columnas numéricas en la tabla de hechos.
Cuando se define una medida se debe tener en cuenta cual será la forma de agregación al subir por la
estructura dimensional (jerarquías).
Conceptos de análisis
❖ Requisito de información: Se definen a través de las necesidades de información que el cliente solicita.
❖ Caso de uso de información: Representan agrupaciones de los requisitos de información.
Enfoques de análisis
❖ Datos: Se tienen en cuenta los datos presentes en el sistema fuente para modelar el almacén de datos.
❖ Usuarios: Se tienen en cuenta las necesidades de los usuarios finales de la solución.
❖ Híbrido : Se complementan los enfoques anteriores.
Enfoque híbrido

Identificar requisitos
1. Identificar áreas de análisis de interés.
2. Por cada área de análisis, identificar procesos de negocios o conceptos que requieran ser analizados.
3. Por cada proceso de negocio o concepto, identificar elementos o aspectos medibles de interés. Definir
granularidad.
4. Identificar perspectivas o perfiles de análisis de los elementos medibles identificados.
Identificar requisitos

Ejemplo de requisitos
❖ Obtener los ingresos de ventas por tienda y cliente asociado.
❖ Obtener los ingresos por cada producto en cada una de las tiendas.
❖ Obtener la cantidad de productos vendidos por tipo de producto y por cliente.
Comprobar disponibilidad

Agrupar requisitos
Trazabilidad análisis-diseño

Conceptos de Diseño
❖ Dimensiones: Características de un concepto presente en el negocio.
❖ Jerarquías: Representan una organización determinada dentro de los atributos de una dimensión.
❖ Hechos: Variables de negocio sobre los que se va a totalizar, promediar, y en general realizar
operaciones de agregación que conduzcan a conclusiones sobre la evolución del área o departamento
que se estudie.
❖ Medidas: Variables cualitativas que se almacenan en los hechos y constituyen la base para la
obtención de los indicadores que reportan los análisis que respaldan la toma de decisiones.
Visión multidimensional

Diseño
❖ Diseño conceptual: Define el Almacén de Datos desde un punto de vista conceptual, es decir, desde el
mayor nivel de abstracción y contiene únicamente los objetos y relaciones más importantes.
❖ Diseño lógico: Abarca aspectos lógicos del diseño del Almacén de Datos, como la definición de las
tablas y claves, etc. Es dependiente de la plataforma a desplegar el almacén de datos.
❖ Diseño físico: Define los aspectos físicos del Almacén de Datos, como el almacenamiento de las
estructuras lógicas en diferentes discos o la configuración de los servidores de bases de datos que
mantienen el almacén de datos.
Diseño lógico
Depende del tipo de servidor OLAP
Las Herramientas de OLAP presentan al usuario una visión multidimencional de los datos para cada actividad
que es objeto de análisis.
❖ MOLAP (Multidimensional OLAP)
➢ Arrays multidimensionales
❖ ROLAP (Relational OLAP)
❖ Esquema estrella de R. Kimball
➢ Tablas relacionales para representar hechos y dimensiones
➢ Variantes esquema estrella.
✓ Constelaciones de hechos.
✓ Copos de nieve.
Diseño de almacenes de datos
En la concepción del esquema lógico se define qué estilo de diseño de almacén de datos va a seguirse.

Diseño de almacenes de datos


Esquema estrella:
Una tabla de hechos está relacionada con varias tablas de dimensiones que contienen información
desnormalizada de los hechos.

Resultando un esquema donde:


❖ El centro lo constituye la tabla de hechos.
❖ Las puntas de la estrella son las tablas de dimensiones.
Diseño lógico relacional estrella

Diseño de almacenes de datos


El esquema estrella puede ser simple o complejo.
❖ Un esquema estrella simple consiste de una tabla de hechos y varias tablas de dimensiones.
❖ Un esquema estrella complejo puede tener más de una tabla de hechos y cientos de tablas de
dimensiones.
Diseño lógico relacional estrella
❖ Fácil de entender para los usuarios
❖ Llaves primarias representan una dimensión
❖ Ninguna columna de llaves son valores
❖ Hechos usualmente son altamente normalizados
❖ Las dimensiones están completamente desnormalizadas
❖ Brinda respuesta rápida a las consultas (Se mejora el rendimiento reduciendo los joins en las tablas)
Diseño de almacenes de datos
Esquema copo de nieve:
El esquema de copo de nieve corresponde a la normalización del esquema en estrella. En este las tablas de
dimensiones son normalizadas para simplificar las operaciones de selección de datos.
Diseño lógico relacional copo de nieve
Diseño lógico relacional copo de nieve
❖ De uso directo por algunas herramientas
❖ Más flexible al cambio
❖ Provee una carga más rápida de datos
❖ Puede volverse grande e inmanejable
❖ Degrada el rendimiento de la consulta
❖ Metadatos más complejos
Diseño lógico relacional constelación de hechos

Dimensión Tiempo

Llaves primarias de las dimensiones


❖ Todas las tablas de dimensiones tienen una llave primaria para identificar las filas de la misma.
❖ NO DEBEN usarse las llaves del sistema operacional.
❖ Deben ser llaves sin significado para el negocio.
Diseño físico
❖ Organización física de los datos en la base de datos.
❖ Implementación de scripts requeridos para el despliegue y la posterior carga de datos.
❖ Implementación de mecanismos de optimización.
❖ Definición de procesos de administración.
Sistemas de Bases de datos Multidimensionales OLAP
OLAP (On-Line Analytical Process)
Son aplicaciones que se encargan de analizar datos del negocio para generar información táctica y
estratégica que sirve de soporte para la toma de decisiones.
Norte de las empresas
Características
1.- Estructura de datos transparente al usuario
2.- Solo Consulta, trabajan sobre la información operacional generada por los sistemas OLTP
3.- Consultas sobre grandes volúmenes de datos
4.- Información histórica
5.- Modo de actualización Batch
6.- Alta redundancia de datos para facilitar la generación de consultas y obtener buenos
tiempos de respuesta.
Comparación Sistemas OLTP vs OLAP

OLAP - Modelos de Bases de Datos


OLAP - MOLAP Servers
OLAP - ROLAP Servers

Escogiendo la Arquitectura

HOLAP
Estos sistemas mantienen los registros detallados en la base de datos relacional, mientras que los datos
resumidos o agregados se almacenan en una base de datos multidimensional separada.
Son conocidos como Híbridos debido a que contiene las características de los sistemas anteriores.
Esquema en estrella (star)

Esquema en copo de nieve (snowflake)

Constelaciones de hechos
Los esquemas en estrella y bola de nieve pueden generalizarse con la inclusión de distintas tablas de hechos
que comparten todas o algunas de las dimensiones.

También podría gustarte