Download Almacenamiento de Datos y OLAP

Document related concepts
no text concepts found
Transcript
Almacenamiento de Datos y
OLAP
M.C. Juan Carlos Olivares Rojas
Agenda
Introducción
Arquitectura de un datawarehouse
OLAP
Introducció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.
Introducció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.
Arquitectura 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.
Administración de
Almacenamiento
Almacenamiento en Archivos
Ventajas de las Base de Datos
Normalización de BD
Modelo Entidad-Relación
¿Có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
Base de Datos Relacionales
Bases de Datos Distribuidas
Almacé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.
Bases de Datos
Almacén de Datos
Datamarts
• 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.
Esquema 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?
Esquema Estrella
Esquema 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.
Esquema 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.
Esquema Copo de Nieve
Actividades
• 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).
Inteligencia de Negocios
Inteligencia de Negocios
Errores 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.
Errores 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.
Preparació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.
Preparació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.
Preparació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.
OLAP
• 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.
OLAP
• Considérese la siguiente tabla:
V# P# Cant
V1 P1 300
V1 P2 200
V2 P1 300
V2 P2 400
V3 P2 200
V4 P2 200
• Obtener la cantidad total
envíos.
• Obtener las cantidades totales
envíos por proveedor.
• Obtener las cantidades totales
envíos por partes.
• Obtener las cantidades totales
envíos por partes y proveedor.
de
de
de
de
OLAP
• 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.
OLAP
• 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).
Bases de Datos
Multidimensionales
Está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.
Consultas 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), (A,B), (A), ())
(A,B,C)
• GROUP BY (A,B,C) define: (A,B,C)
define:
Referencias
• Date C. (2001), “Introducción a los sistemas de
base de datos”, 7a. Edición, Pearson
educación, México, 2001, ISBN: 968-444-4192, pp. 709-725.
¿Preguntas, dudas y
comentarios?