В Кассандре различия между несколькими строками и заданным типом? - PullRequest
0 голосов
/ 23 февраля 2019

В качестве примера у меня есть таблица cards.Они разделены по владельцам (пользователям), имеют уникальные идентификаторы и могут находиться в папках.

create table cards (
   owner uuid,
   id uuid,
   front_text text,
   back_text text,
   folder uuid,
   primary key (owner, id)
)

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

Много строк для папки:

create table cards_by_folder (
    owner uuid,
    folder uuid,
    card uuid,
    primary key (owner, folder, card)
)

Один ряд для папки, с набором:

create table cards_by_folder2 (
    owner uuid,
    folder uuid,
    cards set<uuid>,
    primary key (owner, folder)
)
...