Modelo de datos en columnas de NoSQL

El modelo de datos en columnas de NoSQL es importante. Las bases de datos NoSQL son diferentes de las bases de datos SQL. Esto se debe a que utiliza un modelo de datos que tiene una estructura diferente al modelo de tabla de filas y columnas seguido anteriormente que se usaba con los sistemas de administración de bases de datos relacionales (RDBMS). Las bases de datos NoSQL son un modelo de esquema flexible que está diseñado para escalar horizontalmente en muchos servidores y se usa en grandes volúmenes de datos.

Modelo de datos en columnas de NoSQL: 

Básicamente, la base de datos relacional almacena datos en filas y también lee los datos fila por fila, el almacenamiento de columnas se organiza como un conjunto de columnas. Entonces, si alguien quiere ejecutar análisis en una pequeña cantidad de columnas, puede leer esas columnas directamente sin consumir memoria con los datos no deseados. De alguna manera, las columnas son del mismo tipo y se benefician de una compresión más eficiente, lo que hace que las lecturas sean más rápidas que antes. Ejemplos de modelo de datos en columnas: Cassandra y Apache Hadoop Hbase.

Funcionamiento del modelo de datos en columnas: 

En Columnar Data Model en lugar de organizar la información en filas, lo hace en columnas. Esto hace que funcionen de la misma manera que las tablas en las bases de datos relacionales. Este tipo de modelo de datos es mucho más flexible obviamente porque es un tipo de base de datos NoSQL. El siguiente ejemplo ayudará a comprender el modelo de datos Columnar:

Tabla orientada a filas:

S. No. Nombre  Curso Rama IDENTIFICACIÓN
01. Tanmay Tecnología B Computadora 2
02 Abhishek Tecnología B Electrónica 5
03. Samriddha Tecnología B ESO 7
04. Aditi Tecnología B ETC 8

Columna – Tabla Orientada:

S. No. Nombre IDENTIFICACIÓN
01. Tanmay 2
02 Abhishek 5
03. Samriddha 7
04. Aditi 8
S. No. Curso IDENTIFICACIÓN
01. Tecnología B 2
02 Tecnología B 5
03. Tecnología B 7
04. Tecnología B 8
S. No. Rama IDENTIFICACIÓN
01. Computadora
02 Electrónica 5
03. ESO 7
04. ETC 8

Modelo de datos en columnas utiliza el concepto de espacio de claves, que es como un esquema en los modelos relacionales. 

Ventajas del modelo de datos en columnas:

  • Bien estructurado: dado que estos modelos de datos son buenos para la compresión, están muy estructurados o bien organizados en términos de almacenamiento.
  • Flexibilidad: una gran cantidad de flexibilidad, ya que no es necesario que las columnas se parezcan entre sí, lo que significa que se pueden agregar columnas nuevas y diferentes sin interrumpir toda la base de datos.
  • Las consultas de agregación son rápidas: lo más importante es que las consultas de agregación son bastante rápidas porque la mayoría de la información se almacena en una columna. Un ejemplo sería Sumar el número total de estudiantes matriculados en un año.
  • Escalabilidad: se puede distribuir en grandes grupos de máquinas, incluso en miles.
  • Tiempos de carga: dado que uno puede cargar fácilmente una tabla de filas en unos pocos segundos, los tiempos de carga son casi excelentes.

Desventajas del modelo de datos en columnas:

  • Diseño de un esquema de indexación: diseñar un esquema eficaz y funcional es demasiado difícil y lleva mucho tiempo.
  • Carga de datos subóptima: la carga de datos incrementales es subóptima y debe evitarse, pero esto podría no ser un problema para algunos usuarios.
  • Vulnerabilidades de seguridad: si la seguridad es una de las prioridades, entonces se debe saber que el modelo de datos Columnar carece de características de seguridad incorporadas; en este caso, se debe buscar en las bases de datos relacionales.
  • Procesamiento de transacciones en línea (OLTP): las aplicaciones de procesamiento de transacciones en línea (OLTP) tampoco son compatibles con los modelos de datos en columnas debido a la forma en que se almacenan los datos.

Aplicaciones del modelo de datos en columnas:

  • El modelo de datos en columnas se usa mucho en varias plataformas de blogs.
  • Se utiliza en sistemas de gestión de contenido como WordPress, Joomla, etc.
  • Se utiliza en Sistemas que mantienen contadores.
  • Se usa en sistemas que requieren muchas requests de escritura.
  • Se usa en Servicios que tienen un uso que expira.

Publicación traducida automáticamente

Artículo escrito por priyanshugupta627 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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