Introducción a las bases de datos NoSQL
bases de datos NoSQL
Actualmente el manejo de la información cada vez se está haciendo más complejo debido a las grandes cantidades de datos que hay que recopilar y tratar. En estos últimos años ha aumentado el interés de los sistemas de bases de datos NoSQL, ya que facilitan el manejo de la información, y las organizaciones cada vez almacenan una mayor cantidad de datos no estructurados. Las bases de datos relacionales han sido las más utilizadas hasta el momento, pero con el crecimiento de las aplicaciones Web, a las que acceden un gran número de usuarios simultáneamente, se ha dado paso a este nuevo concepto. Para aquellas aplicaciones para las que no sirve una base de datos relacional, ya que no realizan una buena gestión de los datos a gran escala, aparecen las bases de datos NoSQL.
Tipos de base de datos NoSQL
Se han creado varias variedades de bases de datos NoSQL para soportar necesidades específicas y casos de uso.
las bases de datos NoSQL de valor-clave hacen hincapié en la simplicidad y son muy útiles para acelerar una aplicación que admita el procesamiento de alta velocidad de lectura y escritura de datos no transaccionales. Los valores almacenados pueden ser cualquier tipo de objeto binario (texto, video, documento JSON, etc.) y se accede a través de una clave. La aplicación tiene control total sobre lo que se almacena en el valor, convirtiéndolo en el modelo NoSQL más flexible. Los datos se comparten y se replican en un clúster para obtener escalabilidad y disponibilidad. Por esta razón, las bases de datos de valores clave a menudo no admiten transacciones. Sin embargo, son muy eficaces en aplicaciones de escala que se ocupan de datos de alta velocidad y no transaccionales.
Base de datos de documentos:
Las bases de datos de documentos suelen almacenar documentos JSON, XML y BSON. Son similares a las bbdd de valores clave, pero en este caso, un valor es un solo documento que almacena todos los datos relacionados con una clave específica. Los campos populares del documento pueden indexarse para proporcionar una recuperación rápida sin conocer la clave. Cada documento puede tener la misma estructura o una estructura diferente.
Bases de datos de columnas anchas:
Las bases de datos NoSQL de columnas anchas almacenan datos en tablas con filas y columnas similares a las BBDD relacionales, pero los nombres y los formatos de las columnas pueden variar de fila a fila en la tabla. Las columnas de columnas anchas agrupan columnas de datos relacionados juntos. Una consulta puede recuperar datos relacionados en una sola operación porque sólo se recuperan las columnas asociadas con la consulta. En una BBDD, los datos estarían en diferentes filas almacenadas en diferentes lugares del disco, requiriendo múltiples operaciones de disco para su recuperación.
Bases de datos de grafos:
una base de datos de grafos utiliza estructuras de grafos para almacenar, correlacionar y consultar relaciones. Proporcionan una adyacencia libre de índice, de modo que los elementos adyacentes se unen entre sí sin usar un índice.
Las bases de datos multimodales aprovechan alguna combinación de los cuatro tipos descritos anteriormente y, por lo tanto, pueden soportar una gama más amplia de aplicaciones.
Beneficios de NoSQL
Las bases de datos NoSQL ofrecen a las empresas ventajas importantes sobre el RDBMS tradicional, entre ellas:
• Escalabilidad: las bases de datos NoSQL utilizan una metodología de escala horizontal que facilita la adición o reducción de la capacidad de forma rápida y sin interrupciones con el hardware de los productos básicos. Esto elimina el tremendo costo y complejidad de la fragmentación manual que es necesaria al intentar escalar.
• Rendimiento: Simplemente agregando recursos dinámicamente, las empresas pueden aumentar el rendimiento con las bases de datos NoSQL. Esto permite a las organizaciones continuar ofreciendo experiencias de usuario rápidas y confiables con un retorno de inversión previsible.
• Alta disponibilidad: las bases de datos NoSQL generalmente están diseñadas para garantizar la alta disponibilidad y evitar la complejidad que viene con una arquitectura típica que se basa en nodos primarios y secundarios. Algunas bases de datos NoSQL distribuidas utilizan una arquitectura que distribuye automáticamente los datos de forma equitativa entre varios recursos para que la aplicación permanezca disponible para las operaciones de lectura y escritura incluso cuando falla un nodo.
• Disponibilidad: Al replicar automáticamente los datos a través de múltiples servidores, centros de datos o recursos de la nube, las bases de datos NoSQL distribuidas pueden minimizar la latencia y garantizar una experiencia de aplicación consistente dondequiera que se encuentren los usuarios.
Referencias
Havana University of Technology "José Antonio Echeverría", CUJAE. School of Telecommunications and Electronics.
Pollo Cattaneo, M., López Nocera, M., & Daián Rottoli, G. (1). Rendimiento de tecnologías NoSQL sobre cantidades masivas de datos.
Comentarios
Publicar un comentario