Картография Кассандры Супер Колонны

Я думаю, что все, кто играл с Кассандрой, уже читали эту статью.

Я пытаюсь создать свою схему на CassandraCli, но у меня много проблем, может кто-нибудь направить меня в нужное русло? Я пытаюсь создать аналогичную структуру, такую ​​как семейство столбцов Комментарии из статьи.

В терминале CassandraCli я печатаю:

create column family posts with column_type = ‘Super’ and comparator = ‘AsciiType’ and subcomparator = TimeUUIDType;

Это работает нормально, нет никаких документов, сообщающих мне, что если я добавлю атрибут column_metadata, то они будут для супер столбцов, потому что мое семейство столбцов имеет тип super, я не могу найти, если это так, так:

create column family posts with column_type = ‘Super’ and comparator = ‘AsciiType’ and subcomparator = ‘TimeUUIDType’ and column_metadata = [{column_name:'body'}];

Я пытаюсь создать то же самое, что и семейство столбцов комментариев, но когда я пытаюсь заполнить

set posts['post1'][timeuuid()][body] = ‘Hello I am Goku!’;

я получил:

Неверная строка UUID: тело

Я думаю, потому что я выбрал субкомпаратор типа timeuuid, а тело это строка, это должно быть timeuuid, поэтому КАК мои столбцы внутри суперстолбца, который является типом timeuuid, могут содержать столбцы с именами строковых типов в качестве комментариев к статье созданы?

Спасибо

4 ответа

Я думаю, что вы переключили, к чему применяются comptor_type и subcomparator_type. В семействах суперколонок тип tor_свойта применяется к именам суперколонок, а подкомбаратор_тип применяется к именам подколонок.

Переключите типы компаратора, и ваш первый пример должен работать.

set posts[1][timeuuid()][utf8('body')] = 'Hello I am Goku!';

Правильный ответ таков.

:п

Я старался:

set posts[1][timeuuid()]['body'] = 'Hello I am Goku!';

это сработало...

Вы пробовали цитировать 'body'?

set posts['post1'][timeuuid()]['body'] = ‘Hello I am Goku!’;
Другие вопросы по тегам