Bases de datos orientadas a agregados en NoSQL

La base de datos orientada a agregados es la base de datos NoSQL que no admite transacciones ACID y sacrifica una de las propiedades ACID. Las operaciones de orientación agregadas son diferentes en comparación con las operaciones de bases de datos relacionales. Podemos realizar operaciones OLAP en la base de datos orientada a agregados. La eficiencia de la base de datos orientada a agregados es alta si las transacciones e interacciones de datos tienen lugar dentro del mismo agregado. Se pueden poner varios campos de datos en los agregados de modo que se pueda acceder a ellos juntos. Solo podemos manipular un solo agregado a la vez. No podemos manipular múltiples agregados a la vez de forma atómica.

Agregado: las bases de datos orientadas se clasifican en cuatro modelos de datos principales. Son los siguientes:

  • Valor clave
  • Documento
  • Familia de columnas
  • basado en gráficos

Cada uno de los modelos de datos anteriores tiene su propio lenguaje de consulta.

  • Modelo de datos de clave-valor: las bases de datos de clave-valor y de documentos estaban fuertemente orientadas a los agregados. El modelo de datos clave-valor contiene la clave o Id que se utiliza para acceder a los datos de los agregados. El modelo de datos clave-valor es muy seguro ya que los agregados son opacos para la base de datos. Los agregados se cifran como el gran blog de bits que se pueden descifrar con clave o identificación. En el modelo de datos clave-valor, podemos colocar datos de cualquier estructura y tipo de datos en él. La ventaja del modelo de datos clave-valor es que podemos almacenar la información confidencial en conjunto. Pero la desventaja de este modelo es que la base de datos tiene algunos límites generales de tamaño. Solo podemos almacenar los datos limitados.
  • Document Data Model: En Document Data Model podemos acceder a las partes de los agregados. Se puede acceder a los datos de este modelo de manera inflexible. podemos enviar consultas a la base de datos en función de los campos en el agregado. Existe una restricción sobre la estructura y los tipos de datos que se deben controlar en este modelo de datos. Se puede acceder a la estructura del agregado mediante el modelo de datos del documento.
  •  Modelo de datos de la familia de columnas: la familia de columnas también se denomina mapa de dos niveles. Pero, sin embargo, pensemos en la estructura, ha sido un modelo que influyó en bases de datos posteriores como HBase y Cassandra. Estas bases de datos con un modelo de datos de estilo de tabla grande a menudo se denominan almacenes de columnas. Los modelos de familias de columnas dividen el agregado en familias de columnas. El modelo de familia de columnas es una estructura agregada de dos niveles. El primer nivel consta de claves que actúan como un identificador de fila que selecciona el agregado. Los valores de segundo nivel en el modelo de datos de la familia Column se denominan columnas.

Aggregate-Oriented database

  • En el ejemplo anterior, la clave de fila es 234, que selecciona el agregado. Aquí, la tecla de fila selecciona las familias de columnas cliente y pedidos. Cada familia de columnas contiene las columnas de datos. En la familia de columnas de pedidos, tenemos los pedidos realizados por los clientes.
  • Modelo de datos gráficos: en un modelo de datos gráficos, los datos se almacenan en Nodes que están conectados por bordes. Se prefiere este modelo para almacenar una gran cantidad de agregados complejos y datos multidimensionales con muchas interconexiones entre ellos. Graph Data Model tiene la aplicación como si pudiéramos almacenar las cuentas de usuario de Facebook en los Nodes y averiguar los amigos de un usuario en particular siguiendo los bordes del gráfico.

Graph of friend list in Facebook

Podemos encontrar a los amigos de una persona observando este modelo de datos de gráfico. Si hay un borde entre dos Nodes, podemos decir que son amigos. Aquí también consideramos los enlaces indirectos entre los Nodes para determinar las sugerencias de amigos. 

Publicación traducida automáticamente

Artículo escrito por hasani 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 *