¿Qué son las bases de datos NoSQL?

Al hablar de bases de datos NoSQL, el prefijo “No” va más allá de su significado como negación de algo, se trata realmente de un acrónimo que surge del origen inglés del término “no only” (no sólo). Por lo tanto, definiremos las bases de datos NoSQL como aquellas que no solamente almacenan datos previamente estructurados.

En su concepción básica, NoSQL, se refiere a una amplia clase de sistemas de gestión de bases de datos que a diferencia de los tradicionales sistemas de gestión RDBMS (bases de datos relacionales) no usan SQL como lenguaje principal a la hora de efectuar sus consultas. Los datos almacenados en un sistema NoSQL no requieren estructuras fijas como tablas y habitualmente no garantizan completamente que sus transacciones tengan las características ACID (acrónimo de los términos ingleses: Atomicity, Consistency, Isolation y Durability; que en español significarían: atomicidad, coherencia, aislamiento y durabilidad), ni soportan operaciones JOIN para la combinación de registros. Pero lo más importante, lo que las convierte en el formato ideal para manejo de grandes volúmenes de datos, es que horizontalmente escalan muy bien.

Las bases de datos NoSQL se clasifican según la forma en que almacenan los datos en su estructura interna y comprenden categorías como clave-valor, implementaciones de BigTable, bases de datos documentales y bases de datos orientadas a grafos.

El uso de las bases de datos NoSQL ha crecido exponencialmente en los últimos años ante los retos que las grandes compañías de Internet, como Facebook, Twitter, Amazon y Google; tenían que hacer frente a la hora de realizar el tratamiento de datos que manejan y para el que las bases de datos estructuradas no les ofrecen una solución óptima. En estos momentos se da la necesidad de proporcionar en tiempo real información procesada a partir de grandes volúmenes de datos que cuentan con estructuras horizontales más o menos similares. Para estas compañías resulta más importante el rendimiento en tiempo real que la coherencia, para lo que las bases de datos relacionales tradicionales dedicaban gran cantidad de tiempo de proceso.

Las bases de datos NoSQL, habitualmente, están optimizadas para las operaciones recuperar y agregar y no suelen ofrecer más que la funcionalidad de almacenar los registros, por ejemplo para un almacenamiento clave –>valor. Su pérdida de flexibilidad en tiempo de ejecución, comparado con los sistemas SQL clásicos, se ve compensada por las ventajas que aportan en escalabilidad y rendimiento, ante ciertos modelos de datos.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s