Formato JSON en Cassandra

En este artículo, discutiremos el formato de notación de objetos JSON JavaScript para insertar datos en la tabla y es útil, y la inserción de columnas y sus valores mediante programación es más práctica que usar cqlsh. Para probar y verificar consultas cqlsh es muy conveniente.

Cassandra Query Language (CQL) admite el formato JSON en el que los datos se insertan como una string, pero en realidad se almacenan como un valor de tipo de datos determinado.

Por ejemplo, si Id tiene un tipo de datos int, el valor de id se insertará como «Id»: «101», pero en realidad se almacenará como INT. Consideremos una tabla student_registration en la que s_id, s_name, s_city, s_email son los campos.

CREATE TABLE student_registration(
s_id int PRIMARY KEY, 
s_name text, 
s_city text, 
s_email text
); 

Ahora, aquí insertaremos datos en la tabla student_registration en formato JSON. Echemos un vistazo.

INSERT INTO student_registration
JSON '{
"s_id" : "9001",
"s_name" : "Ashish",
"s_city" : "California",
"s_email": "a_json1@gmail.com"
}';


INSERT INTO student_registration
JSON '{
"s_id" : "9002",
"s_name" : "Ashish",
"s_email": "a_json1@gmail.com"
}' ;

INSERT INTO student_registration
JSON '{
"s_id" : "9003",
"s_name" : "Rana",
"s_email": "a_json2@gmail.com"
}' ; 

Veamos el resultado usando la siguiente consulta CQL.

select * 
from student_registration; 

Producción:

Aquí, el valor s_city no se inserta usando JSON, por lo que se insertará un valor NULL predeterminado.

JSON anidado:
entendamos con un ejemplo para JSON anidado, primero estamos creando el tipo definido por el usuario dirección_permanente que tiene casa_no, nombre, ciudad, pin son el campo.

CREATE type permanent_address
( 
house_no int, 
name text, 
city text,
pin int 
); 

Ahora, aquí estamos creando una tabla de formulario de registro para fines de registro que tiene id_estudiante, nombre, tarifas de registro y dirección_permanente son los campos.

CREATE TABLE registration_form( 
"student_id" int  PRIMARY KEY, 
"name" text, 
"registration_fees" int, 
"permanent_address" list<frozen>); 

Ahora, aquí para insertar datos en la tabla, usé la siguiente consulta CQL.

INSERT INTO registration_form("student_id", "name",  
                                   "registration_fees", 
                                   "permanent_address") 
VALUES (123, 'Ashish', 2500, 
 [{ house_no : 544, name : 'ashish', city : 'california', pin : 2019 },
  { house_no : 124, name : 'rana', city : 'delhi', pin : 2020}]) ; 

Veamos los datos insertados usando la siguiente consulta CQL.

select * 
from registration_form; 

Producción:

toJson() es una función JSON para convertir una string JSON. Echemos un vistazo.

 select student_id, toJson(permanent_address) 
from registration_form; 

Producción:

Referencia – DataStax

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 *