Next Tech

Presente y futuro de las bases de datos relacionales con Big Data

3 Mins de lectura

Hace unos días me preguntaba un cliente mi opinión sobre el futuro de las bases de datos relacionales respecto al progresivo aumento de popularidad de las bases de datos NoSQL en los últimos años.

Es conocido por todos que cada vez se generan más y más datos, y el escalado vertical (scale-up) que ofrecen las bases de datos relacionales, en principio, no parece una buena solución respecto al escalado horizontal (scale-out) de los entornos distribuidos de las principales bases de datos NoSQL.

Basándonos en esto y viendo que  el incremento de volumen de datos avanza a una velocidad mayor que el incremento de capacidad del hardware, es normal pensar que tarde o temprano, las bases de datos relacionales se van a quedar cortas.

Para analizar cómo afrontan hoy en día y qué opciones de futuro planean las bases de datos relacionales respecto a estos problemas, vamos a diferenciar los dos tipos de entornos que principalmente existen.

Por un lado tenemos entornos datawarehouse (DW), entornos analíticos donde la información se carga en batches y se transforma quedando generalmente estática para favorecer el reporting y explotación de la misma.

Por otro lado tenemos los entornos transaccionales (OLTP), entornos operacionales donde la información está viva, y en los cuales se favorece el rendimiento de estas frecuentes modificaciones.

Entornos datawarehouse

Hoy en día, la apuesta en este tipo de entornos de las bases de datos relacionales es claramente el almacenamiento de la información de forma columnar.

A diferencia del almacenamiento tradicional de la información en este tipo de bases de datos en forma de registros, el almacenamiento de la información de cada columna de forma conjunta ofrece un ratio de compresión de tamaño de los datos superior al 80% en la mayoría de casos.

Debido a esta significativa compresión es mas fácil mantener esos datos en memoria, añadido a la capacidad de procesar la información en batches de registros, ofrece un rendimiento muy competitivo sobre todo en consultas de agregación.

Tanto SQL Server, desde la versión 2012, como Oracle, desde la 12c, ofrecen sus tecnologías columnstore integradas en su propio motor de base de datos.

Basándose en esta tecnología, y hablando de cantidades ingentes de datos, no se quedan atrás y ofrecen soluciones en la nube distribuidas en entornos de procesamiento masivo en paralelo (MPP).

Respecto a SQL Server tenemos Azure SQL Data warehouse, anteriormente conocido como SQL Server Parallel Data Warehouse.

 

Azure SQL Data Warehouse

Gráfico sobre SQL Data Warehouse

 

Hablando de Oracle, han anunciado la versión para datawarehouses de su nueva base de datos Oracle 18c para Diciembre de 2017, distribuida y autónoma tanto en cloud privada como pública.

Información sobre la versión de de Oracle 18c .

Información sobre la versión de de Oracle 18c .

Entornos transaccionales

En este tipo de entornos, tanto para relacionales como para NoSQL, el objetivo es claro, mantener los datos en memoria y evitar accesos a disco.

Debido a que, tanto la velocidad de acceso como de escritura es mucho mayor en memoria que en disco, el único uso de la memoria para realizar las operaciones en este tipo de entornos es critica para el buen rendimiento de las mismas.

Hoy en día SQL Server, desde la versión 2014, ofrece su tecnología en memoria (In-Memory OLTP) integrada en el motor de base de datos.

 

Característica in memory oltp de SQL Server

Característica In-Memory oltp de SQL Server extraído del blog DBA Consulting.

 

Respecto a Oracle, se puede aplicar su tecnología de almacenamiento columnar de la que hablábamos antes, ya que también reside en memoria, pero en entornos puramente OLTP se recomienda usar otro producto aparte llamado Oracle TimesTen.

Como opciones de futuro, Oracle ha anunciado la versión para entornos OLTP de su nueva base de datos Oracle 18c para Junio del 2018, distribuida y autónoma tanto en cloud privada como pública.

Respecto a SQL Server de momento no parece haber ninguna solución distribuida para este tipo de entornos, aunque viendo casos de uso en una sola máquina se han registrado 1.200.000 batches/seg, una cifra bastante aceptable para un entorno OLTP.

 

En este artículo hemos repasado las principales características existentes de las principales bases de datos relacionales para afrontar el constante incremento de volumen de datos que experimentamos. También hemos visto como afrontan su futuro apostando por entornos distribuidos y, claramente especializados en diferentes tipos de entornos, principalmente como soluciones en la nube.

¿Quieres más información? Contacta con Hiberus Tecnologías Diferenciales y estaremos encantados de ayudarte.

1 posts

Sobre el autor
Referente Técnico de Bases de Datos.
Artículos

Tecnologías diferenciales: aplicamos la tecnología para evolucionar tu negocio

La especialización nos permite dar el mejor servicio a nuestros clientes.

Utilizamos las últimas tecnologías para construir soluciones que permitan diferenciarse a organizaciones públicas y privadas.

¿Te ayudamos?

Artículos relacionados
Banca y SegurosDigitalNext Tech

Transformación digital: qué es y por qué es tan importante

5 Mins de lectura
La Era Digital ha dado pie a muchos cambios a nivel empresarial, y es que muchos negocios han adaptado sus procesos y…
Next Tech

Angular vs React vs Vue

9 Mins de lectura
En este artículo damos respuesta a una pregunta que es muy frecuente entre desarrolladores, ¿cuál es el mejor framework? Para ello, tomamos…
Next TechSector Público

Gobierno de datos en la administración pública

4 Mins de lectura
Un correcto uso de los datos es indispensable para el correcto funcionamiento de cualquier organización, sobre todo si es pública. Afortunadamente, existen…

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *