es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

CassandraDB tabla con múltiples valores de clave-valor

Soy un nuevo usuario de CassandraDB. Estoy tratando de crear una tabla que tenga 3 columnas estáticas, por ejemplo “nombre”, “ciudad” y “edad”, y luego estaba pensando en dos columnas “clave” y “valor”, ya que mi tabla podría recibir muchos entradas. ¿Cómo puedo definir esta tabla? Estoy tratando de lograr algo escalable, es decir:

Columnas de la tabla -> “Nombre”, “Ciudad”, “Edad”, “Clave”, “Valor”

Nombre: Mark

Ciudad: Liverpool

Edad: 26

Clave: Car

Valor: Audi A3

Clave: Trabajo

Valor: Ingeniero en informática

Clave: Pasatiempo principal

Valor: Fútbol

Estoy buscando la DEFINICIÓN DE LA TABLA. ¿Alguna ayuda? Muchas gracias de antemano.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para crear una tabla con las columnas especificadas, se puede usar el lenguaje de consulta Cassandra (CQL, por sus siglas en inglés) de Cassandra con la siguiente definición de tabla:

    CREATE TABLE my_table (
      name text static,
      city text static,
      age int static,
      key text,
      value text,
      PRIMARY KEY ((name, city), age, key)
    );
    

    En esta definición, las primeras tres columnas (name, city y age) se declaran como columnas estáticas, lo que significa que tendrán el mismo valor para todas las filas en la partición. Las columnas key y value son columnas regulares que almacenarán los datos dinámicos que desea almacenar.

    La clave primaria de la tabla se define como una clave compuesta que consta de las columnas estáticas (name, city y age) y la columna dinámica key. Esto significa que cada partición tendrá los mismos valores estáticos, pero claves y valores dinámicos diferentes.

    Para insertar datos en la tabla, se puede usar el siguiente comando CQL:

    INSERT INTO my_table (name, city, age, key, value)
      VALUES ('Mark', 'Liverpool', 26, 'Car', 'Audi A3');
    

    Y para consultar los datos:

    SELECT * FROM my_table WHERE name = 'Mark' AND city = 'Liverpool';
    

    Esto devolverá todas las filas con los mismos valores estáticos de name y city como ‘Mark’ y ‘Liverpool’ y sus valores dinámicos correspondientes.

Comments are closed.