Я хочу следующую структуру в моей базе данных с cassandra -cli
например, у меня есть человек с адресом, который содержит почтовый индекс, домашний номер и т. Д.
схематично это выглядит так:
name: "address",
value: {
city: {name: "city", value: "San Francisco"},
street: {name: "street", value: "555 Union Street"},
zip: {name: "zipcode", value: "94105"},
}
Я знаю, как создать суперколонку и обычные колонки. Но я хочу использовать column_metadata, чтобы указать, как будут выглядеть столбцы в суперколонке.
Так что в итоге это будет примерно так:
Create column family person
with comparator = UTF8Type
and key_validation_class=UTF8Type
and default_validation_class = UTF8Type
and compression_options =
{sstable_compression:SnappyCompressor, chunk_length_kb:64}
and column_metadata = [
{column_type: super, column_name: address, validation_class: UTF8Type
column_metadata =[
{column_name: city, validation_class: UTF8Type}
{column_name: Street, validation_class: UTF8Type}
{column_name: zip, validation_class: UTF8Type}
{column_name: housnumber, validation_class: LongType}
];
Это вообще возможно?
Было бы еще лучше, если бы я мог поместить суперколонку в другую суперколонку. Таким образом, супер-столбец «адреса» может содержать несколько супер-столбцов «адрес» со столбцами: «улица», «почтовый индекс» и т. Д.