tool software online lucidchart generate caracteristicas database database-design database-schema olap oltp

database - software - ¿Qué son OLTP y OLAP? ¿Cuál es la diferencia entre ellos?



lucidchart generate sql (5)

Aquí encontrarás una mejor solución datawarehouse4u.info/OLTP-vs-OLAP.html

  • OLTP (Procesamiento de transacciones en línea) está involucrado en la operación de un sistema en particular. OLTP se caracteriza por un gran número de transacciones cortas en línea (INSERTAR, ACTUALIZAR, BORRAR). El énfasis principal para los sistemas OLTP se pone en el procesamiento de consultas muy rápido, manteniendo la integridad de los datos en entornos de acceso múltiple y una efectividad medida por la cantidad de transacciones por segundo. En la base de datos OLTP hay datos actuales y detallados, y el esquema utilizado para almacenar las bases de datos transaccionales es el modelo de entidad (generalmente 3NF). Se trata de consultas que acceden a registros individuales como actualizar su correo electrónico en la base de datos de la empresa.

  • OLAP (procesamiento analítico en línea) trata con datos históricos o datos de archivo. OLAP se caracteriza por un volumen relativamente bajo de transacciones. Las consultas son a menudo muy complejas e involucran agregaciones. Para los sistemas OLAP, un tiempo de respuesta es una medida de efectividad. Las aplicaciones OLAP son ampliamente utilizadas por las técnicas de Data Mining. En la base de datos OLAP hay datos históricos agregados, almacenados en esquemas multidimensionales (generalmente esquema en estrella). En algún momento, las consultas deben tener acceso a una gran cantidad de datos en los registros de la Administración, como el beneficio obtenido por su empresa el año pasado.

En realidad, ¿qué significan? Todos los artículos que encuentro sobre ellos no me dan una idea, o mi conocimiento es demasiado insuficiente para entenderlo.

Alguien me dará algunos recursos con los que pueda aprender esto desde cero.


La diferencia es bastante simple.

OLTP (Procesamiento de transacciones en línea).

OLTP es una clase de sistemas de información que facilitan y administran aplicaciones orientadas a transacciones. OLTP también se ha utilizado para referirse al procesamiento en el que el sistema responde inmediatamente a las solicitudes de los usuarios. Las aplicaciones de procesamiento de transacciones en línea son de alto rendimiento e inserto o actualización intensiva en la gestión de bases de datos. Algunos ejemplos de sistemas OLTP incluyen el ingreso de pedidos, ventas minoristas y sistemas de transacciones financieras.

OLAP (procesamiento analítico en línea)

OLAP forma parte de la categoría más amplia de inteligencia empresarial, que también abarca la base de datos relacional, la redacción de informes y la minería de datos. Las aplicaciones típicas de OLAP incluyen informes de negocios para ventas, marketing, informes de gestión, gestión de procesos de negocios (BPM), presupuestos y previsiones, informes financieros y áreas similares.

Ver más detalles OLTP y OLAP.


OLTP-: oltp significa procesamientos de transacciones en línea que se utilizan para administrar la información de datos del día a día actual. OLAP-: el soporte olap para el procesamiento analítico en línea que se utiliza para mantener el historial de los datos y se utiliza principalmente para el análisis de datos y también se puede llamar como almacén.


oltp: se utiliza principalmente para transacciones comerciales. se utiliza para recopilar datos comerciales. En SQL usamos el comando Insertar, actualizar y eliminar para recuperar una pequeña fuente de datos. Igualmente, están muy normalizados ... OLTP Se utiliza principalmente para mantener la integridad de los datos.

olap: se utiliza principalmente para informes, minería de datos y fines analíticos comerciales. para los datos grandes o masivos, deliberadamente se des-normaliza. almacena datos históricos ..


Respuesta muy corta:

Diferentes bases de datos tienen diferentes usos. No soy un experto en bases de datos. En caso de duda, solo uso SQL.

Respuesta corta :

Consideremos dos ejemplos de escenarios:

Escenario 1 :

Está creando una tienda / sitio web en línea y desea poder:

  • Almacenar datos de usuario, contraseñas, transacciones anteriores ...
  • Almacenar productos reales, su precio asociado.

Desea poder encontrar datos para un usuario en particular, cambiar su nombre ... Básicamente, realice las operaciones INSERTAR, ACTUALIZAR Y BORRAR en los datos de un usuario. Lo mismo con los productos, etc.

Desea poder realizar transacciones, posiblemente involucrando a un usuario que compra un producto (eso es una relación). Entonces, OLTP es probablemente una buena opción (piense en las bases de datos SQL).

Escenario 2:

Tienes una tienda / sitio web en línea y quieres calcular cosas como

  • El "dinero total gastado para todos los usuarios"
  • "¿Cuál es el producto más vendido?"

Esto cae en el dominio de analítica / inteligencia empresarial, por lo tanto, OLAP es probablemente más adecuado.

Si piensa en términos de "Sería bueno saber cómo / qué / cuánto" ..., y eso implica todo "objeto" de uno o más tipos (por ejemplo, todos los usuarios y la mayoría de los productos para conocer el total gastado) entonces OLAP es probablemente más adecuado.

Respuesta más larga:

Por supuesto que las cosas no son tan simples. Es por eso que tenemos que poner etiquetas pequeñas como OLTP y OLAP en primer lugar. Cada base de datos debe ser evaluada independientemente al final.

Entonces, ¿cuál podría ser la diferencia fundamental entre OLAP y OLTP?

Bueno, las bases de datos tienen que almacenar datos en algún lugar. No debería sorprender que la forma en que se almacenan los datos se refleje en gran medida en el posible uso de dicha base de datos. Los datos generalmente se almacenan en un disco duro. Pensemos en un disco duro como una hoja de papel realmente ancha, donde podemos leer y escribir cosas. Hay dos formas de organizar nuestras lecturas y escrituras para que puedan ser eficientes y rápidas.

Una forma es hacer un libro que sea un poco como un directorio telefónico . En cada página del libro, almacenamos la información sobre un usuario en particular. Ahora que bien, podemos encontrar la información para un usuario en particular muy fácilmente. Solo salta a la pagina! Incluso podemos tener una página especial al principio para decirnos qué página son los usuarios si queremos. Pero, por otro lado, si queremos encontrar, digamos, cuánto dinero gastan todos nuestros usuarios, tendríamos que leer cada página, es decir. todo el libro Eso sería un libro / base de datos basado en filas (OLTP). La página opcional al principio sería el índice.

Otra forma de usar una hoja grande de papel es hacer un libro de contabilidad . No soy un contador, pero imaginemos que tendríamos una página para "gastos", "compras" ... Eso está bien porque ahora podemos consultar cosas como "dame los ingresos totales" muy rápidamente (solo lee las "compras " página). También podemos pedir cosas más involucradas, como "dame los diez mejores productos vendidos" y tener un rendimiento aceptable. Pero ahora considere lo doloroso que sería encontrar los gastos para un usuario en particular. Tendría que revisar la lista completa de gastos de todos y filtrar los de ese usuario en particular, luego sumarlos. Lo que básicamente equivale a "leer todo el libro" de nuevo. Eso sería una base de datos basada en columnas (OLAP).

De ello se deduce que :

  • OLTP bases de datos OLTP están destinadas a ser utilizadas para realizar muchas transacciones pequeñas y, por lo general, sirven como una "fuente única de verdad".

  • OLAP bases de datos OLAP , por otro lado, son más adecuadas para análisis, extracción de datos, menos consultas, pero generalmente son más grandes (operan con más datos).

Por supuesto, es un poco más complicado que eso y eso es un resumen de 20 000 pies de cómo difieren las bases de datos, pero me permite no perderme en un mar de siglas.

Hablando de acrónimos:

  • OLTP = procesamiento de transacciones en línea
  • OLAP = procesamiento analítico en línea

Para leer un poco más, aquí hay algunos enlaces relevantes que inspiraron mucho mi respuesta: