La base de datos relacional y el big data

Share on facebook
Share on twitter
Share on linkedin
Share on telegram
Share on whatsapp

Contenidos

¿Puede un obstáculo ser base de datos relacional cuando se trata de grandes volúmenes de datos?

Regularmente, una base de datos relacional está diseñada para funcionar en un solo servidor. Esto se hace para mantener la integridad de unfirmas de tablas y evitar problemas cuando se trata de computación distribuida.

base20de20datos20relacional-9791221

Pero hoy en día nos encontramos en un punto de inflexión en términos de volumen de datos. Ellos esperan crecimiento de big data desde ahora hasta 2020. Las predicciones son de 44 zettabytes para entonces, y recordemos que un zettabyte es un billón de gigabytes. Las compañías disponen millones de usuarios y grandes cantidades de datos y ya están comenzando a ejecutar sus aplicaciones en la nube. Necesitan entregar contenido dinámicamente a millones de computadoras de escritorio, tabletas, teléfonos inteligentes, etc. y disponen que hacerlo en diferentes ubicaciones geográficas.

Administrar esta nueva realidad, en la que las instituciones necesitan escalabilidad, para poder agregar cada vez más datos y más usuarios, y elasticidad, para que el sistema pueda adaptarse en función de las demandas de datos, una base de datos relacional es un desafío.

Escalar a una base de datos relacional es complicado

Lograr escalabilidad y elasticidad es un gran desafío para una base de datos relacional. Las bases de datos relacionales se diseñaron cuando los datos podían mantenerse pequeños y ordenados, pero este ya no es el caso. Todos los proveedores de bases de datos comentan que su base de datos puede escalar para manejar Big Data. Lo hacen debido a que no disponen otra alternativa, pero la realidad es que si observas más de cerca para ver qué funciona verdaderamente y qué no, los problemas con una base de datos relacional se vuelven muy claros.

Una base de datos relacional está diseñada para ejecutarse en un solo servidor para mantener la integridad del mapeo de la tabla y evitar los problemas de la computación distribuida. Con este diseño, Si este sistema necesita escalar, los clientes deberán de comprar hardware propietario cada vez más grande, más complejo y más caro, con más capacidad de procesamiento, memoria y almacenamiento.. Las actualizaciones además son un desafío, dado que la organización tiene que pasar por un largo procedimiento de compra y Deben desconectar muchas veces el sistema para realizar el cambio.. Todo esto pasa mientras el número de usuarios sigue aumentando, experimentando un estrés creciente e incurriendo en más riesgo.

Las nuevas arquitecturas solo ocultan el problema subyacente

Para abordar estas preocupaciones, los proveedores de bases de datos relacionales han incorporado un conjunto completo de mejoras. Hoy, la evolución de las bases de datos relacionales les posibilita usar arquitecturas más complejas sustentadas en modelos maestro-esclavo donde los esclavos son servidores adicionales que pueden manejar procesamiento paralelo y datos replicados o fragmentados, para ayudar la carga de trabajo del servidor maestro.

Otras mejoras en una base de datos relacional, como el uso de almacenamiento compartido, procesamiento en memoria, mejor uso de réplicas, almacenamiento en caché distribuido y otras arquitecturas nuevas e innovadoras, han hecho que las bases de datos relacionales sean más escalables. A pesar de esto, bajo todo esto, no es difícil hallar un solo sistema y un solo punto de falla. Y a menudo los altos costos de estos sistemas son prohibitivos desde la creación de un almacén de datos puede costar muchos cientos de euros.

Además podemos ver cómo estas arquitecturas han sacrificado la flexibilidad por el rendimiento. Y adicionalmente vemos que la elasticidad además se pierde al no poder volver a recoger los datos que se han distribuido y a los que se les ha asignado espacio.

Las bases de datos NoSQL pueden ser la respuesta

Al no estar limitado por una arquitectura de servidor único, bases de datos NoSQL puede escalar masivamente en sistemas distribuidos. Pueden trabajar con bastantes servidores trabajando juntos, cada uno compartiendo parte de la carga.

Usando este enfoque, una base de datos NoSQL, en lugar de una base de datos relacional, puede operar con cientos de servidores y grandes cantidades de datos, y además procesar decenas de cientos de transacciones por segundo, todo esto hecho con hardware de bajo costo que opera en cualquier entorno. Al mismo tiempo, si un nodo falla, otros nodos pueden hacerse cargo de su trabajo, eliminando así el problema de un solo punto de falla.

(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = «//connect.facebook.net/es_ES/all.js#xfbml=1&status=0»;
fjs.parentNode.insertBefore(js, fjs);
}(document, ‘script’, ‘facebook-jssdk’));

Suscribite a nuestro Newsletter

No te enviaremos correo SPAM. Lo odiamos tanto como tú.