Title: Almacenamiento de Datos y OLAP
1Almacenamiento de Datos y OLAP
- M.C. Juan Carlos Olivares Rojas
2Agenda
- Introducción
- Arquitectura de un datawarehouse
- OLAP
3Introducción
- Para cualquier Sistema de Información Avanzado
(SIA) el poder procesar información de manera
rápida se ha vuelto una necesidad muy importante. - Por este motivo se necesita la construcción de
base de datos con caracterÃsticas especiales que
permitan mejorar los procesos.
4Introducción
- En la gran mayorÃa de los casos, estos nuevos
diseños no siguen diseños lógicos, por lo que la
desnormalización de base de datos es muy común. - Muchas herramientas como hojas de cálculo y
paquetes estadÃsticos permiten obtener
información para el soporte para toma de
decisiones, desgraciadamente el volumen de
información es muy pequeño.
5Arquitectura de un datawarehouse
- Las bases de datos pueden ser clasificadas de
distintos tipos. En general se tienen bases de
datos transaccionales e históricas. - Las bases de datos históricas no son modificadas
pero sirven para llevar un registro de todo lo
ocurrido. - A continuación se dará un breve repaso de
términos básicos de Base de Datos.
6Administración de Almacenamiento
7Almacenamiento en Archivos
8Ventajas de las Base de Datos
9Normalización de BD
10Modelo Entidad-Relación
11Cómo se obtuvo esta consulta?
SELECT Part_Nmber, Part_Name, PART.SupplierNumber,
Supplier_Name FROM PART, SUPPLIER WHERE
Part_Number 137 AND Part_Number 150 AND
PART.Supplier_Number SUPPLIER.Supplier_Number
12Base de Datos Relacionales
13Bases de Datos Distribuidas
14Almacén de Datos
- Los almacenes de datos son del mismo tipo, no
volátiles y variantes en el tiempo. - Es una base de datos limpia ya que no están todas
las transacciones. - Un almacén de datos debe tener más de 500GB y una
tasa de crecimiento del 50 anual.
15Bases de Datos
16Almacén de Datos
17Datamarts
- Son repositorios de datos más pequeños utilizados
generalmente para reportes o usos más genéricos. - La caracterÃstica principal es que es volátil es
decir, los valores de los datos pueden ser
modificados para realizar simulaciones de
escenarios del tipo que pasarÃa si? - Existen diversos métodos de diseño, siendo los
más populares estrella y copo de nieve.
18Esquema Estrella
- También llamado dimensional, contiene una tabla
de hechos que es aquella que contiene toda la
información y tiene varias tablas de dimensiones
que contienen el catálogo de la información. - Se asemeja mucho a un base de datos normalizada,
entonces Cuál es la diferencia?
19Esquema Estrella
20Esquema Estrella
- El esquema de estrella sólo tiene un nivel.
- El tener todos los hechos juntos y las
dimensiones separadas permite que las juntas
sean mÃnimas ocupando menos tiempo las consultas. - La tabla de hechos es más grande en atributos y
tuplas que las de dimensiones.
21Esquema Copo de Nieve
- El diseño es ad hoc y es difÃcil de cambiar
(aplica también en estrella). - Es una variante del esquema de estrella, el cual
normaliza toda las tablas de dimensiones. - Tiene algunas mejoras de espacio pero en
ocasiones las consultas son más lentas.
22Esquema Copo de Nieve
23Actividades
- Instalar PostgreSQL y Oracle Express. Investigar
sintaxis de SQL y herramientas para hacer cubos
OLAP. - Conseguir una base de datos de ejemplo
(Normalizada) con un millón de registros o más.
De preferencia entre más grande el tamaño de la
base de datos mejor. - MinerÃa de Datos e Inteligencia de Negocios
proyecto por unidad (Examen Unidad 4 y 5).
24Inteligencia de Negocios
25Inteligencia de Negocios
26Errores de Diseño
- A continuación se muestran algunas
caracterÃsticas que hacen que la gran mayorÃa de
los diseños de base de datos para DSS sean
ineficientes - Filas duplicadas, al no tener ID.
- Desnormalización puede ser buena a nivel fÃsico
pero no a nivel lógico. - Esquemas de Estrella tratan de tomar atajos,
es poco el ahorro en muchos casos.
27Errores de Diseño
- Nulos. Se trata de ahorrar tamaño en algunos
campos poniendo valores nulos, lo cual no es
correcto. - Diseño de tablas de resumen aumenta la
redundancia de los datos. - Existen varias rutas de navegación, lo que hace
el diseño inconsistente.
28Preparación de los Datos
- A continuación se muestra el flujo de trabajo que
siguen los datos en un sistema DSS. - Extracción Consiste en obtener los datos de
bases de datos operacionales y otras fuentes.
Generalmente es un proceso manual aunque ya
existen algunos asistentes.
29Preparación de Datos
- Limpieza se requiere antes de procesar los
datos, implica acciones como llenado de valores
faltantes, correcciones tipográficas,
establecimiento de abreviaturas, etc. - Transformación y consolidación los datos se
adecuan a la aplicación, si vienen de varias
fuentes se integran en una sola, consolidándose
sobre todo en el tiempo.
30Preparación de los Datos
- Carga consiste en llevar los datos transformados
y consolidados hacia las base de datos de apoyo a
la toma de decisiones, la verificación de su
integridad y la construcción de Ãndices. - Actualización es un proceso poco desarrollado,
el cual consiste en la carga de los elementos más
actuales.
31OLAP
- OLAP (OnLine Analythic Process) Proceso AnalÃtico
en LÃnea permite obtener información de bases de
datos multidimensionales que son útiles en la
toma de decisiones. - En esquemas tradicionales, la agrupación de datos
se puede realizar pero va requerir de n
agrupaciones distintas para n consultas
diferentes, teniendo un resultado muy pobre.
32OLAP
- Considérese la siguiente tabla
- Obtener la cantidad total de envÃos.
- Obtener las cantidades totales de envÃos por
proveedor. - Obtener las cantidades totales de envÃos por
partes. - Obtener las cantidades totales de envÃos por
partes y proveedor.
33OLAP
- Proceso interactivo de crear, mantener, analizar
y elaborar informes sobre datos. - En muchas ocasiones se hacen consultas similares
con valores diferentes, lo que trae como
consecuencia muchas consultas independientes y
más retraso.
34OLAP
- SQL3 define tres operadores para GROUP BY
GROUPING SETS, ROLLUP y CUBE. - Las tablas en un almacén de datos se consideran
hipercubos dependiendo de sus dimensiones. - Existen dos tipos de OLAP ROLAP (Relacional) y
MOLAP (multidimensional).
35Bases de Datos Multidimensionales
36Estándares SQL
- En 1986 ANSI estandariza el lenguaje SQL y en
1987 ISO, después de 10 años de haber aparecido
SQL. - Se han tenido las siguientes actualizaciones
SQL89, SQL92 (las modificaciones más
importantes), SQL99 (BDOO) y SQL2003 (XML). - SQL cuenta con soporte para OLAP.
37Consultas Multidimensionales
- GROUP BY, ROLLUP y CUBE son casos particulares de
GROUPING SETS - GROUP BY CUBE (A,B,C) define los subconjuntos
((A,B,C), (A,B), (A,C), (A), (B,C), (B), (C), ()) - GROUP BY ROLLUP (A,B,C) define ((A,B,C), (A,B),
(A), ()) - GROUP BY (A,B,C) define (A,B,C)
38Referencias
- Date C. (2001), Introducción a los sistemas de
base de datos, 7a. Edición, Pearson educación,
México, 2001, ISBN 968-444-419-2, pp. 709-725.
39Preguntas, dudas y comentarios?