fbpx
Bases de datos en memoria

Parte 3 y última

Necesitas saber esto sobre los motores de bases de datos (III)

KelSin Global Consulting

Bases de datos en memoria

Una base de datos en memoria también conocida como base de datos en memoria principal, almacena sus datos en memoria para facilitar tiempos más rápidos de respuesta. La base de datos en memoria carga la data en un formato comprimido no relacional. Adicionalmente la base de datos en memoria optimiza el trabajo relacionado con el procesamiento de las consultas.

Este tipo de base de datos además de brindar tiempos extremadamente  rápidos de respuesta a consultas, reduce la necesidad de indexar datos en base de datos en memoria.

Adicionalmente la computación de 64 bits, servidores multi-nucleo y los bajos costos de memoria han hecho posible la aplicación de estas técnicas en base de datos en memoria.

Para el uso eficiente de la base de datos en memoria se debe habilitar el modo Quad Channel, que es la configuración más rápida en base de datos en memoria y consiste en llenar el primer banco de memoria (más próximo al procesador) que consta de 4 slot y llenar los 4 slots. Con el ello el uso intensivo de la base de datos en memoria se ve maximizado versus el uso del single channel.

Usos:

Como base de datos OLTP:

La base de datos en memoria OLTP almacena los datos a nivel de filas y se utilizan para almacenar y procesar datos transaccionales.

Como base de datos OLAP:

La base de datos en memoria OLAP es una base de datos analítica, que es a su vez un sistema de sólo lectura con datos históricos para la generación de indicadores en aplicaciones de inteligencia de negocios y el almacenamiento de esta base de datos es típicamente en columna.

Ventajas:

Las ventajas de trabajar con base de datos en memoria son:

–          Su principal soporte de almacenamiento es la memoria.

–          No consume CPU

–          Es más veloz que el almacenamiento en  disco.

Velocidad: la base de datos en memoria al almacenar toda su data en memoria RAM su velocidad de acceso es de 80milisegundo en promedio, mientras que la velocidad de acceso a disco duro es de 5 milisegundos, el cual es utilizado por base de datos tradicionales, es una diferencia de casi 100,000 veces. Y si estos tiempos los comparamos con almacenamiento en base de datos basado en discos de estado sólido o memoria FLASH no-volátil se estima en 1000 veces más lento que usando memoria RAM para esta base de datos.

Persistencia: La duda en general para base de datos en memoria es que sucede en caso de pérdida de fuente de energía, para ello las bases de datos en memoria permiten que las páginas de memoria RAM se escriban en almacenamiento no-volátil. Además la base de datos en memoria no considera completa la transacción completada hasta que esta no se grabe en el log de transacciones, ello también permite que en caso de falla se pueda recuperar la página más reciente de la base de datos en memoria y vuelva a aplicarse las operaciones desde el log.             

Entre los principales motores de bases de datos en memoria tenemos:

Base de datos en memoriaPrecioPlataformaLicenciaEscrita enÚltima actualización
Redis    09-feb-21
TarantoolGratisLinux, FreeBSD, macOSSimplified BSDC09-jun-21
MemSQL    30-jun-21
Aerospike    01-dic-19
VoltDB Windows, Linux, Mac  17-abr-20
Hazelcast    24-oct-20
Dynomite    23-jun-21
SAP HANA Database    26-sep-19
Raima Database Manager    21-may-21
Oracle Database In-Memory    29-dic-20

Comparativo de Motores de Bases de Datos SQL y No SQL

SQL

CostoVersión (estable)Sistema operativoSoporta transacciones
OracleSí/No18c (18.1)Multiplataforma
SQLServerSí/No14.0Linux / Microsoft Windows Server / Microsoft Windows
MySQLSí/No8.0.12Multiplataforma
PostgreSQLNo10.6Linux / Windows
Microsoft Access14.0.6123.5001Microsoft Windows
Teradata16.20SUSE Linux Enterprise Server
IBM DB211.1Multiplataforma
Informix12.10.xC2Multiplataforma
SAP ASE16.0Unix / Microsoft Windows
Amazon’s SimpleDBSí/NoAlojadoNo
Baldassari (2018)

NoSQL

CostoVersión (estable)Sistema operativoSoporta transacciones
MongoDBNo4.0.2Windows / Linux / OS X / Solaris / Free BSD
CassandraNo3.11.1MultiplataformaNo
RedisNo4.0.11Multiplataforma
HbaseNo1.2.1Multiplataforma
Neo4jSí/No3.3.0Multiplataforma
Oracle NoSQLSí/No18.1Multiplataforma
Amazon DynamoDBSí/NoMultiplataforma
CouchBaseNo5.5.0Multiplataforma
Memcached1.5.11Multiplataforma
CouchDBNo2.2.0MultiplataformaNo
Baldassari (2018)

Ranking de popularidad de bases de datos

Ranking de popularidad de bases de datos

Lee aquí la segunda parte de este artículo: Necesitas saber esto sobre los motores de bases de datos (II)

Autor: Francisco Serrano, Director de Desarrollo de KelSin Global Consulting

REFERENCIAS

Motor de base de datos, Wikipedia (2021)

Cómo funciona el motor de base de datos SQL, Empleos TI

“Estudio comparativo de motores de bases de datos SQL y NoSQL para la gestión de información transaccional”,Baldassari Valencia Holger David (2019).

Base de Datos en Memoria, BSG Institute, NICOLAS NAKASONE

What are the best scalable In-Memory Databases?, Slant (2021)

DB-Engines Ranking – Trend Popularity, Solid IT gmbh (2021)

Comments are closed