Создание таблицы в Кассандре
В этой статье мы собираемся обсудить, как создать таблицу в Cassandra, а также обсудить определения столбцов, роль ключей, параметры таблицы (компактное хранилище и порядок кластеризации) и т. Д.
В Cassandra таблица CQL имеет имя и хранит строки. при создании таблицы вы определяете столбцы для строк, обязательный первичный ключ для идентификации каждой строки, тип данных столбца и любые другие дополнительные элементы, которые вы можете выбрать.
Для создания таблицы используется оператор «создание таблицы», приведенный ниже.
Ниже приведен типичный оператор создания таблицы.
Синтаксис: создание таблицы. СОЗДАТЬ ТАБЛИЦУ [ЕСЛИ НЕ СУЩЕСТВУЕТ] имя_таблицы '(' column_definition (',' определение_столбца) * [',' ПЕРВИЧНЫЙ КЛЮЧ '(' основной_ключ ')'] ')' [С table_options]
Теперь здесь вы можете использовать любое существующее пространство ключей, например, с именем App_data.
use App_data;
Теперь вы можете создать таблицу User_data, в которой имя, идентификатор, адрес - это поля в таблице.
СОЗДАТЬ ТАБЛИЦУ User_data ( Текст имени, id uuid, текст адреса, ПЕРВИЧНЫЙ КЛЮЧ (id) );
Теперь вы можете проверить, создана ли таблица, и, если она создана, проверить определение таблицы.
Используя существующее пространство ключей, такое как App_data.
cassandra @ cqlsh> использовать App_data; кассандра @ cqlsh: app_data> cassandra @ cqlsh: app_data> СОЗДАТЬ ТАБЛИЦУ User_data ( ... id uuid, ... текст имени, ... текст адреса, ... ПЕРВИЧНЫЙ КЛЮЧ (id) ...);
В Cassandra первичный ключ состоит из первого столбца или столбцов, которые являются обязательным ключом раздела, за которым следует один или несколько столбцов кластеризации.
COLUMN_DEFINITION
В Cassandra предложение column_definition состоит из имени столбца и его типа, а также двух модификаторов.
Статический: в Cassandra статический столбец имеет одно и то же значение для всех строк, которые имеют один и тот же ключ раздела (поясняется немного). Конечно, статическими могут быть только непервичные ключи.
Первичный ключ: первичный ключ однозначно идентифицирует строку, и рекомендуется, чтобы все таблицы определяли первичный ключ.
Теперь здесь вы можете проверить созданную таблицу User_data.
cassandra @ cqlsh: app_data> описать User_data; СОЗДАТЬ ТАБЛИЦУ app_data.user_data ( id uuid ПЕРВИЧНЫЙ КЛЮЧ, текст адреса, текст имени ) С bloom_filter_fp_chance = 0,01 И кэширование = {'ключи': 'ВСЕ', 'строки_на_раздел': 'НЕТ'} И комментарий = '' И уплотнение = { 'класс': 'org.apache.cassandra.db.compaction .SizeTieredCompactionStrategy ', 'max_threshold': '32', 'min_threshold': '4' } И сжатие = {'chunk_length_in_kb': '64', 'класс': 'org.apache.cassandra.io .compress.LZ4Compressor '} И crc_check_chance = 1.0 И dclocal_read_repair_chance = 0.1 И default_time_to_live = 0 И gc_grace_seconds = 864000 И max_index_interval = 2048 И memtable_flush_period_in_ms = 0 И min_index_interval = 128 И read_repair_chance = 0.0 И speculative_retry = '99ПЕРСЕНТИЛЬ';