В Cassandra, определение PRIMARY KEY
вашей таблицы используется для уникальности. Например:
CREATE TABLE users (
userid uuid,
firstname text,
lastname text,
email text,
created_date timestamp,
PRIMARY KEY (userid)
);
Здесь userid
колонна является уникальным идентификатором. Разумеется, вы можете иметь несколько столбцов как часть вашего определения PRIMARY KEY
. Но несколько вещей, о которых следует помнить:
- Столбы первичных ключей имеют другие последствия и в Кассандре (за пределами уникальности). Вы захотите прочитать раздел «Классы разделов» и «Кластерные столбцы» и как Cassandra использует его для организации данных вокруг кластера и на диске.
- Cassandra не имеет или не применять ограничения (например, без внешних ключей)
- Cassandra не делает чтение перед записью (если вы не используют Облегченные Транзакции функции), и тот самый
INSERT
или UPDATE
функционально эквивалентны (т.е. «upsert») и перезаписывает данные, которые уже
Если вы ищете функции, как «ограничение уникальности» или «уникальный индекс» в Oracle, вы выиграли» Найти его в Кассандре. В модели the CQL docs есть простой пример моделирования данных, и я также рекомендую проверить курс моделирования данных, на который он ссылается, если вы только начинаете работу с Cassandra. Удачи!