Semana 5 OLAP - OLTP - 2021 - 2
Semana 5 OLAP - OLTP - 2021 - 2
Semana 5 OLAP - OLTP - 2021 - 2
1. Feedback (Delegados).
Merge
• Dos fuentes de datos.
• Requieren ordenarse previamente.
• El destino de datos necesita estar ordenado.
Unión All
• Más de dos fuentes de datos.
• No requieren ordenamiento previo.
• El destino de datos no necesita estar
ordenado.
Caso – SSIS MultiCast
• Agregar ‘división condicional’ para solo filtrar los CREATE TABLE CONTACTO(
ID_CONTACTO INT IDENTITY,
datos de CORREO, TELEFÓNO no nulos.
VALOR_CONTACTO VARCHAR(100),
ID_TIPO_DOCUMENTO INTEGER,
NUM_DOCUMENTO VARCHAR(20)
)
Sistemas de Información
OLTP OLAP
• On-Line Transaction Processing. • On-Line Analytical Processing.
• Sistemas operacionales que capturan • Respuesta rápida y flexible a consultas, orientada
transacciones y las almacenan en Base de al análisis de datos.
Datos.
• Características:
• Características: • Optimizado para responder rápidamente a
• Transacciones en tiempo real (con día a día) consultas.
• Datos almacenados cambian continuamente. • Consulta interactiva de los usuarios.
• Mantienen los datos (INSER; DELETE;UPDATE) • Almacenan varios niveles de datos optimizadas para
• responden a consultas.
Estructuras de datos optimizadas – normalizadas.
• Proporciona una vista de datos multidimensional.
• Basado en reglas.
• Se puede cambiar fácilmente filas, columnas, y
• Limitado para la toma de decisiones, las consultas
históricas producen un impacto en la operación páginas en informes de OLAP.
del sistema.
• Usa Diagrama Entidad Relación (DER).
Sistemas de Información
Ejemplos
• Operación en sitio Web: • Sistemas de Información para ejecutivos
• Validar al cliente y autenticarlo en el sistema. • Alertas.
• Tomar el pedido. • Toma de decisiones.
• Controlar los topes de créditos.
• En la Actividad Financiera
• Informar los valores parciales de la compra y
acumulados. • Reportes analíticos.
• Requerir confirmación del cliente antes de enviar el • Planeamiento.
pedido. • Análisis.
• Enviar el pedido.
• Descontar del stock las cantidades vendidas. • En el Marketing
• Informar el número de venta y la fecha de entrega. • Análisis de productos.
• Saludar al cliente. • Análisis de Clientes.
• Análisis de Facturación.
• Realizar una transferencia:
• Verificar que está autorizado para realizarla. • Otros Usos
• Verificar que tiene saldo. • Análisis de la Producción.
• Inicializar la transferencia manejándola como una • Análisis de Servicios al cliente.
transacción. • Evolución del Costo del producto.
• Emitir comprobante.
• Saludar al Cliente.
¿Como se organizan los datos?
OLTP OLAP
• Generalmente se usa el modelo relacional. • Usamos el modelado dimensional
• Se busca eliminar redundancias. • También conocido como Modelo Estrella (Star join
Schema)
• Dividimos la información en entidades discretas.
• Técnica de diseño lógico.
• Se diseñan buscando el satisfacer los
requerimientos de un sistema de información. • Representa diagramas orientados a temas.
• Está basado en tablas con distintos atributos o • Busca presentar la información dentro de un
campos y las relaciones entre las tablas. Cada marco intuitivo.
tabla tiene un Clave primaria (“Primary key” o
PK en nuestro esquema) formada por uno o más • Permite un acceso de alta performance, por su
atributos y las tablas se relacionan entre ellas diseño es de alta performance en las consultas.
mediante las Claves externas (“Foreign Key” o • Fácilmente accesible y entendible.
FK en nuestro esquema) que actúan como
claves primarias en sus propias tablas.
Modelo Relacional
•Entidad
•Atributo
•Clave principal
•Relaciones
¿Cómo hacerlo?
Las entidades representan cosas u
objetos (ya sean reales o abstractos),
1. Identificar las entidades que se diferencian claramente entre sí.
2. Determinar las claves primarias Es el atributo de una entidad, al que le aplicamos una restricción
que lo distingue de los demás registros.
3. Describir los atributos de las entidades • Clave Primaria
• Clave Foránea
4. Establecer relaciones entre las entidades
Los atributos definen o identifican las características de entidad
5. Dibujar el modelo de datos (es el contenido de esta entidad). Cada entidad contiene distintos
atributos, que dan información sobre esta entidad. Estos atributos
6. Realizar comprobaciones. pueden ser de distintos tipos (numéricos, texto, fecha...).
Es un vínculo que nos permite definir una dependencia entre
varias entidades, es decir, nos permite exigir que varias entidades
compartan ciertos atributos de forma indispensable.
Ejemplo
Vendedores
Geografía
Contacto de Ventas
Regiones
Ventas Oficina
Compras
Tiempo
Almacén
Cliente
Ordenes de Compra
Devoluciones
Producto
Cuentas
Pagos de Clientes
Tienda
Cuentas Generales
Ejemplo
MEDICO
PACIENTE
PAGO
CITA
ESPECIALIDAD DETALLE_PAGO
SEDE
Modelo dimensional
Modelo de datos Lógico = Alto desempeño
Hechos
Medidas
Dimensiones
Atributos
Relaciones
¿Cómo hacerlo?
Modelo Copo de Nieve: Solo cuando exista una tabla de dimensión muy grande que degrade el tiempo de las consultas
CUBO
Ejemplo:
Si un gerente de ventas
necesita sacar información
de las ventas de productos
por ubicación y en
determinado tiempo.
CUBO
Fundamentos del Modelado Dimensional
4. Jerarquía. Relaciones padre-hijo dentro de una dimensión. Son las estructuras lógicas
que utilizan niveles pedidos como los medios de ordenamiento de datos.
5. Tabla de hechos: Almacena eventos y las métricas. Estas son las tablas centrales en
un esquema estrella de un modelo DW. Los tablas fact representan el conocimiento del
negocio y sus datos generalmente son numéricos y/o añadidos para ser analizados.
• Ejemplos:
• Ventas en $$
• Cantidad de productos
• Total de transacciones
• Cantidad de pacientes admitidos
• Llamadas efectuadas.
• ImporteTotal = precioProducto * cantidadVendida
• Rentabilidad = utilidad / PN
• CantidadVentas = cantidad
• PromedioGeneral = AVG(notasFinales)
Medidas-Métricas
Dimensión Miembro
Tiempo Meses, Trimestre, Años
Geografía País, Región, Ciudad
Cliente Id Cliente
Vendedor Id Vendedor
Jerarquía de las dimensiones
Almacén
ciudad región
almacén
tipo
Tiempo
semana
Granularidad
• Por ejemplo:
• Datos de ventas o compras de una
empresa, pueden registrarse día a día
• Datos pertinentes a pagos de sueldos o
cuotas de socios, podrán almacenarse
a nivel de mes.
Dimensiones
• Las tablas de hechos contienen las
dimensiones y las medidas de los
hechos.
Construcción Armado de la
Definición de
de las Tabla de
las Medidas
2 Dimensiones 3 Hechos 4
Decidir la
granularidad
1
Requerimientos del usuario
Dimensiones
Ventas_Importe X X X X X
Ventas_Costo X X X X X
Ventas_Unidades X X X X X
Ventas_ImporteTotal X X X X X
Ventas_Ganancia X X X X X
Ventas_Promedio X X X X X
Decidir la granularidad
• La granularidad:
• Es el nivel de detalle al que se desea almacenar información sobre
la actividad a modelar.
• Define el nivel atómico de datos en el almacén de datos.
• Determina el significado de las tuplas de la tabla de hechos.
• Determina las dimensiones básicas del esquema.
Dimensiones
Ventas_Importe X X X X X
Ventas_Costo X X X X X
Ventas_Unidades X X X X X
Ventas_ImporteTotal X X X X X
Ventas_Ganancia X X X X X
Ventas_Promedio X X X X X
Producto
Familia
Departamento
Categoria
Sub-Categoria
Sub-Categoria
Sub-Categoria Producto
Categoria
Categoria
Departamento
Departamento
Dimensiones
Familia
Familia
Ventas_Importe X X X X X
Ventas_Costo X X X X X
Ventas_Unidades X X X X X
Ventas_ImporteTotal X X X X X
Ventas_Ganancia X X X X X
Ventas_Promedio X X X X X
Fact_Ventas
Tabla de Hechos
ID_Tiempo
ID_Producto
ID_Cliente
ID_Vendedor
ID_Sucursal
Dimensiones
Ventas_Importe X X X X X
Ventas_Costo X X X X X
Ventas_Unidades X X X X X
Ventas_ImporteTotal X X X X X
Ventas_Ganancia X X X X X
Ventas_Promedio X X X X X
Definición de las medidas
Fact_Ventas Fact_Ventas
ID_Tiempo ID_Tiempo
ID_Producto ID_Producto
ID_Cliente ID_Cliente
ID_Vendedor ID_Vendedor
ID_Sucursal ID_Sucursal
Fact_Ventas
ID_Fecha
ID_Producto
ID_Cliente
ID_Vendedor
Ventas_Importe
Ventas_Costo
Ventas_Unidades
Medidas
Dimensión Tiempo Dimensión Sucursal
Dimensión Vendedor
* Año * Sucursal
** Semestre ** Tipo Sucursal * Sucursal
*** Trimestre *** País ** Sección
**** Mes **** Provincia *** Vendedor
***** Ciudad
***** Día
Fact_Ventas
Fact_Ventas
Producto
ID_Tiempo
ID_Producto
Familia
ID_Fecha
ID_Cliente
ID_Vendedor
ID_Producto Departamento
ID_Sucursal
ID_Cliente Categoria
Sub-Categoria
ID_Vendedor Sub-Categoria
Ventas_Importe Sub-Categoria Producto
Ventas_Costo
Ventas_Unidades Categoria
Dimensión Cliente Categoria
Departamento
* País
** Provincia Departamento
*** Ciudad
**** Razón Social Familia
Familia
Tipos de OLAP
Latencia
Data
almacenada
ROLAP HOLAP MOLAP
Tabla1
Tabla1 Tabla2
Tabla2
Tabla1
Tabla2
Servidor Query FRONT END
ROLAP Análisis
Tablas (datos+
Data agregada) Es capaz de usar datos precalculados (si estos están
disponibles), o de generar dinámicamente los resultados
desde la información elemental (menos resumida).
Fuente: Análisis del modelo de almacenamiento MOLAP frente análisis del modelo de almacenamiento MOLAP frente al modelo de almacenamiento ROLAPM.
Tamayo, F. Moreno (2016)
Tipos de OLAP
Tabla1
Tabla2
Query
Servidor FRONT END
HOLAP Análisis
Data agregada
Resuelve el problema de dispersión, dejando los datos
menos agregados en la BD relacional, pero almacena los
agregados en un formato multidimensional, minimizando la
presencia de celdas vacías.
Fuente: Análisis del modelo de almacenamiento MOLAP frente análisis del modelo de almacenamiento MOLAP frente al modelo de almacenamiento ROLAPM.
Tamayo, F. Moreno (2016)
Comparando Estructuras de almacenamiento
Tabla Tabla
Data Base Cubo
Relacional Relacional
Tabla
Agregación Cubo Cubo
Relacional
Rendimiento de
Rapidísimo Más Rápido Rápido
Consultas