Actualización del tipo de datos de la colección MAP en Cassandra

En este artículo, discutiremos cómo podemos actualizar el tipo de datos de la colección MAP y cómo podemos actualizar filas, cómo podemos eliminar filas y cómo podemos agregar filas usando la cláusula UPDATE para actualizar los tipos de datos de la colección de mapas.

Primero, crearemos una tabla. Consideremos que Food_menu es un nombre de tabla y Order_id, Order_Date, Oreder_cost y Menu_items son los campos. echemos un vistazo.

Create Table Food_menu (
  Order_id Int Primary Key,
  Order_Date Date,
  Order_cost int,    
  Menu_items MAP<text, text>
 ); 

Ahora, inserte algunos datos en la tabla utilizando la siguiente consulta CQL que se proporciona a continuación.

INSERT INTO Food_menu (Order_id, Order_Date, Order_cost, Menu_items)
VALUES (2501, '2019-02-13', 800, {'fruit' : 'banana',  'juice' : 'Apple juice'});

INSERT INTO Food_menu (Order_id, Order_Date, Order_cost, Menu_items)
VALUES (2502, '2019-04-23', 200, {'fruit' : 'mango',  'juice' : 'mango juice'});

INSERT INTO Food_menu (Order_id, Order_Date, Order_cost, Menu_items)
VALUES (2503, '2019-02-13', 600, {'fruit' : 'papaya',  'juice' : 'papaya juice'}); 

Ahora, veamos el resultado de la consulta CQL anterior.

select * 
from Food_menu; 

Producción:

Ahora, aquí veremos cómo actualizar un MAP y podemos agregar el tipo de datos de recopilación de MAP usando el operador (+) y cualquiera que sean los elementos que queramos agregar, luego strings entre corchetes Curley en el valor del par de claves.
Echemos un vistazo.

UPDATE Food_menu
SET Menu_items = Menu_items + {'Extra 10' : 'biscuits'} 
WHERE Order_id = 2501; 

Veamos la salida,

select * 
from Food_menu;

Producción:

Ahora, aquí veremos cómo podemos actualizar el tipo de datos de la colección MAP utilizando el valor TTL.

UPDATE Food_menu
USING TTL 259200
SET Menu_items['beverage'] = 'coffee' 
WHERE Order_id = 2502; 

Veamos la salida,
Salida:

En CQL podemos agregar uno o más elementos separados por una coma para actualizar el mapa. echemos un vistazo.
Por ejemplo, este también es uno de los métodos sencillos admitidos por CQL para crear una nueva fila mediante el uso de la cláusula UPDATE que contiene un mapa de colección.

UPDATE Food_menu
SET Menu_items = Menu_items + {'Dry_fruit' : 'Almonds', 'cookies' : 'biscuits'} 
WHERE Order_id = 2503; 

Veamos la salida,

select * 
from Food_menu; 

Producción:

En Cassandra Query Language (CQL) , cuando eliminamos entradas en la actualización de tipos de datos de colección como conjunto y mapa, estamos reemplazando elementos o pares clave-valor con una nueva colección que crea lápidas para las entradas eliminadas aunque sabemos que serán entradas en la nueva colección o conjunto de mapas. Supongamos que si su código actualiza todas las colecciones de mapas y conjuntos de esta manera, genera muchas lápidas que pueden afectar el rendimiento del sistema, más específicamente, podemos decir que puede ralentizar el sistema.

Publicación traducida automáticamente

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