Bases de Datos OLTP y OLAP
Bases de Datos OLTP y OLAP
Bases de Datos OLTP y OLAP
http://www.sinnexus.com/business_intelligence/olap_vs_oltp.aspx
Los sistemas OLTP son bases de datos orientadas al procesamiento de transacciones. Una
transacción genera un proceso atómico (que debe ser validado con un commit, o invalidado
con un rollback), y que puede involucrar operaciones de inserción, modificación y borrado
de datos. El proceso transaccional es típico de las bases de datos operacionales.
El acceso a los datos está optimizado para tareas frecuentes de lectura y escritura.
(Por ejemplo, la enorme cantidad de transacciones que tienen que soportar las BD de
bancos o hipermercados diariamente).
Los sistemas OLAP son bases de datos orientadas al procesamiento analítico. Este análisis
suele implicar, generalmente, la lectura de grandes cantidades de datos para llegar a extraer
algún tipo de información útil: tendencias de ventas, patrones de comportamiento de los
consumidores, elaboración de informes complejos… etc. Este sistema es típico de los
datamarts.
El acceso a los datos suele ser de sólo lectura. La acción más común es la consulta,
con muy pocas inserciones, actualizaciones o eliminaciones.
Los datos se estructuran según las áreas de negocio, y los formatos de los datos están
integrados de manera uniforme en toda la organización.
http://datawarehouse4u.info/OLTP-vs-OLAP.html
We can divide IT systems into transactional (OLTP) and analytical (OLAP). In general we can
assume that OLTP systems provide source data to data warehouses, whereas OLAP systems help
to analyze it.
The following table summarizes the major differences between OLTP and OLAP system design.
OLTP System OLAP System
Online Transaction Processing Online Analytical Processing
(Operational System) (Data Warehouse)
Operational data; OLTPs are the Consolidation data; OLAP data comes
Source of data
original source of the data. from the various OLTP Databases
Purpose of To control and run fundamental To help with planning, problem
data business tasks solving, and decision support
Reveals a snapshot of ongoing Multi-dimensional views of various
What the data
business processes kinds of business activities
Inserts and Short and fast inserts and updates Periodic long-running batch jobs
Updates initiated by end users refresh the data
Relatively standardized and
Often complex queries involving
Queries simple queries Returning
aggregations
relatively few records
Depends on the amount of data
involved; batch data refreshes and
Processing
Typically very fast complex queries may take many hours;
Speed
query speed can be improved by
creating indexes
Larger due to the existence of
Space Can be relatively small if
aggregation structures and history data;
Requirements historical data is archived
requires more indexes than OLTP
Typically de-normalized with fewer
Database Highly normalized with many
tables; use of star and/or snowflake
Design tables
schemas
Backup religiously; operational
Instead of regular backups, some
data is critical to run the business,
Backup and environments may consider simply
data loss is likely to entail
Recovery reloading the OLTP data as a recovery
significant monetary loss and legal
method
liability
source: www.rainmakerworks.com
Persistencia MOLAP, ROLAP, HOLAP
http://www.sinnexus.com/business_intelligence/olap_avanzado.aspx
Un principio clave del OLAP es que los usuarios deberían obtener tiempos de respuesta
consistentes para cada vista de datos que requieran. Dado que la información se colecta en
el nivel de detalle solamente, el resumen de la información es usualmente calculado por
adelantado. Estos valores precalculados son la base de las ganancias de desempeño del
OLAP.
En los primeros días de la tecnología OLAP, la mayoría de las compañías asumía que la
única solución para una aplicación OLAP era un modelo de almacenamiento no relacional.
Después, otras compañías descubrieron que a través del uso de estructuras de base de datos
(esquemas de estrella y de copo de nieve), índices y el almacenamiento de agregados, se
podrían utilizar sistemas de administración de bases de datos relacionales (RDBMS) para el
OLAP.
Estos vendedores llamaron a esta tecnología OLAP relacional (ROLAP). Las primeras
compañías adoptaron entonces el término OLAP multidimensional (MOLAP), estos
conceptos, MOLAP y ROLAP, se explican con más detalle en los siguientes párrafos. Las
implementaciones MOLAP normalmente se desempeñan mejor que la tecnología ROLAP,
pero tienen problemas de escalabilidad. Por otro lado, las implementaciones ROLAP son
más escalables y son frecuentemente atractivas a los clientes debido a que aprovechan las
inversiones en tecnologías de bases de datos relacionales preexistentes.
Sistemas MOLAP
Tras rellenar esta estructura, se generan unos índices y algoritmos de tablas hash para
mejorar los tiempos de accesos a las consultas. Una vez que el proceso de compilación se
ha acabado, la MDDB está lista para su uso. Los usuarios solicitan informes a través de la
interfase, y la lógica de aplicación de la MDDB obtiene el dato.
Sistemas ROLAP
El sistema ROLAP utiliza una arquitectura de tres niveles. La base de datos relacional
maneja los requerimientos de almacenamiento de datos, y el motor ROLAP proporciona la
funcionalidad analítica. El nivel de base de datos usa bases de datos relacionales para el
manejo, acceso y obtención del dato. El nivel de aplicación es el motor que ejecuta las
consultas multidimensionales de los usuarios.
El motor ROLAP se integra con niveles de presentación, a través de los cuáles los usuarios
realizan los análisis OLAP. Después de que el modelo de datos para el datawarehouse se ha
definido, los datos se cargan desde el sistema operacional. Se ejecutan rutinas de bases de
datos para agregar el dato, si así es requerido por el modelos de datos. Se crean entonces los
índices para optimizar los tiempos de acceso a las consultas.
Los usuarios finales ejecutan sus análisis multidimensionales, a través del motor ROLAP,
que transforma dinámicamente sus consultas a consultas SQL. Se ejecutan estas consultas
SQL en las bases de datos relacionales, y sus resultados se relacionan mediante tablas
cruzadas y conjuntos multidimensionales para devolver los resultados a los usuarios.
Sistemas MOLAP
Un desarrollo un poco más reciente ha sido la solución OLAP híbrida (HOLAP), la cual
combina las arquitecturas ROLAP y MOLAP para brindar una solución con las mejores
características de ambas: desempeño superior y gran escalabilidad. Un tipo de HOLAP
mantiene los registros de detalle (los volúmenes más grandes) en la base de datos
relacional, mientras que mantiene las agregaciones en un almacén MOLAP separado.
Diferencias entre un sistema OLTP y
OLAP
Vigencia de los datos Los datos se usan a medida Se guardan los datos
que se van produciendo y actuales y los históricos
dejan de ser importantes a para poder realizar análisis
corto plazo. comparativos.
Cambios en los datos Modifica sus datos en forma No tiene como objetivo la
constante porque maneja presentación de los datos
las transacciones de la en línea ni tampoco
empresa. modificar datos originales,
solo consultarlos.
Tabla comparativa OLTP y OLAP
http://bdavanzada.bligoo.com.mx/tabla-comparativa-oltp-y-olap#.V0N1geT53Vs
Top 10 Business Intelligence Trends New For 2016. Read Free Report!
OLTP OLAP
Procesamiento de transacciones en Es el acrónimo en ingles de
línea es un tipo de sistemas que procesamiento analítico en línea es
facilitan y administran una solución utilizada en el campo de
aplicaciones transaccionales la llamada inteligencia
usualmente de datos.
Objetivos principales
Objetivos principales
Los OLTP tienen como objetivos
principales asistir a aplicaciones Apuntan a asistir en el análisis del negocio
específicas, p.e. ATM, y Mantener identificando tendencias comprando
integridad de los datos. periodos , gestiones ,mercados índices
mediante el almacenamiento de datos
Alineación de datos
Alineación de los datos
Los OLTP están alineados por aplicación.
Diferentes sistemas tienen distintos tipos de Los sistemas OLAP están alineados por
datos, Los cuales son estructurados por dimensión. Todos los tipos de datos
aplicación. Se focaliza en el cumplimiento integrados en un solo sistema. Los datos
de requerimientos de una aplicación en son organizados definiendo dimensiones del
especial o una tarea específica. negocio (áreas temáticas o sujetos). Se
focaliza en el cumplimento de
Integración de datos requerimientos del análisis del negocio.
Atomized Summarized
Present Historical
Record-at-a-time Many records at a time
Process oriented Subject oriented
Las aplicaciones OLTP tienden a tratar con datos atomizados “registro a un tiempo”, considerando
que las aplicaciones de OLAP normalmente se tratan de los datos resumidos. Mientras las
aplicaciones OLTP generalmente no requieren de datos históricos, casi cada aplicación de OLAP se
preocupa por ver las tendencias y por consiguiente requiere de datos históricos. Como
consecuencia, las bases de datos OLAP necesitan la capacidad de ocuparse de datos series de.
Mientras las aplicaciones OLTP y bases de datos tienden a ser organizados alrededor de procesos
específicos (como ordenes de entrada), las aplicaciones OLAP tienden a ser “orientadas al tema”,
respondiendo a preguntas como “¿Qué productos están vendiendo bien?” o “¿Dónde están mis
oficinas de ventas más débiles?”.
2013 junio 25
by classora
Las bases de datos multidimensionales son una variación del modelo relacional que
utiliza cubos OLAP para organizar los datos y expresar las relaciones entre ellos. Las
principales ventajas de este tipo de bases de datos son la versatilidad para cruzar
información y la alta velocidad de respuesta. Esto las convierte en herramientas básicas
para soluciones de Business Intelligence o de Big Data, donde el análisis de los datos
resulta crucial.
Los sistemas OLTP son bases de datos relacionales (RDBMS) orientadas a transacciones.
Una transacción es una secuencia de operaciones llevada a cabo por una base de datos de
manera atómica. Las operaciones pueden ser de cuatro tipos diferentes: SELECT, INSERT,
DELETE y UPDATE. Al tratarse de un proceso atómico, cada transacción solo tiene dos
posibles finales: commit (si se han llevado a cabo correctamente todas las operaciones) o
rollback (cuando una operación de la secuencia ha fallado, en cuyo caso hay que deshacer
los cambios producidos por el resto de las operaciones de la transacción y alertar del error).
Las transacciones son el pilar de prácticamente cualquier programa de gestión o página web
del mundo. Su necesidad se ve muy clara, por ejemplo, en el sector de la banca.
Los sistemas OLAP son bases de datos orientadas al procesamiento analítico. Este análisis
suele implicar, generalmente, la lectura de grandes cantidades de datos para llegar a extraer
algún tipo de información útil: tendencias de ventas, patrones de comportamiento de los
consumidores, elaboración de informes complejos… etc.
Indicadores: también denominados métricas o ratios, son los valores numéricos con los
que se opera. Por ejemplo: nº de clientes, nº de proveedores, importe de las ventas, nº de
ventas, importe de las compras, nº de compras… etc.
Dimensiones: son las características por las que se pueden filtrar y cruzar los indicadores.
Por ejemplo: tiempo (fijando un determinado día, mes o año), geografía (fijando un
determinado país, región o ciudad), proveedor, cliente, modo de pago… etc.
Las columnas correspondientes a las dimensiones tienen claves foráneas a tablas de
dimensión, que generalmente son tablas de maestros con clave-valor (esquema en estrella)
o tablas organizadas en jerarquías (esquema en copo de nieve) como: ciudad – provincia –
país.
En general suele resultar necesario dimensionar la volumetría de los cubos para conseguir
que generen los informes deseados, y monitorizar su tamaño para garantizar que los
resultados se obtienen en el tiempo esperado. En este sentido suele resultar fundamental
tener en cuenta dos características básicas: la cardinalidad del cubo, posibles
combinaciones de todos los valores de todas las dimensiones, y la granularidad del cubo,
nivel de detalle máximo de los datos, o lo que es lo mismo, nivel de agregación mínimo de
la información.
Optimizadas para operaciones de lectura: dado que la acción más común es la consulta,
estas bases de datos disponen de valores agregados y resultados precalculados que les
permiten responder en tiempo récord. Evitar las restricciones ACID les da agilidad.
Organizadas según las necesidades analíticas: los datos están estructurados según las
áreas de negocio, y los formatos de los datos están integrados de manera uniforme en
toda la organización. Se busca evitar islas de datos.
Asíncronas: no siempre se actualizan en tiempo real, sino que se suelen alimentar con
información procedente de las bases de datos relacionales mediante un proceso de
extracción, transformación y carga (ETL).
Consultas realizadas en MDX: este lenguaje, MDX (MultiDimensional eXpressions) fue
desarrollado inicialmente por Microsoft y adoptado posteriormente como estándar para
leer cubos OLAP. Un cliente puede manipular el cubo de distintas formas: rotarlo,
rebanarlo cortarlo en dados… etc.
Gestión de datos históricos a largo plazo: una de las exigencias analíticas consiste en
realizar estudios de evolución a lo largo del tiempo, esto requiere que estas bases de
datos mantengan un histórico a largo plazo, normalmente no inferior a cinco años.
Tras rellenar esta estructura, se generan unos índices y algoritmos de tablas hash para
mejorar los tiempos de accesos a las consultas. Una vez que el proceso de compilación se
ha acabado, la MDDB está lista para su uso. Los usuarios solicitan informes a través de la
interfaz, y la lógica de aplicación de la MDDB obtiene el dato.
Sistemas ROLAP: los usuarios ejecutan sus análisis multidimensionales, a través del
motor ROLAP, que transforma dinámicamente sus consultas a consultas SQL. Se ejecutan
estas consultas SQL en las bases de datos relacionales, y sus resultados se relacionan
mediante tablas cruzadas y conjuntos multidimensionales para devolver los resultados a los
usuarios.
Sistemas HOLAP: un desarrollo un poco más reciente ha sido la solución OLAP híbrida
(HOLAP), la cual combina las arquitecturas ROLAP y MOLAP para brindar una solución
con las mejores características de ambas: desempeño superior y gran escalabilidad. Un tipo
de HOLAP mantiene los registros de detalle (los volúmenes más grandes) en la base de
datos relacional, mientras que mantiene las agregaciones en un almacén MOLAP separado.
Más información
Como en otras ocasiones, si te interesa conocer más información sobre este tema no dudes
en contactar con nosotros para que te enviemos documentación adicional. Cuenta con
Classora Technologies para estar informado sobre bases de datos multidimensionales.