Задача стояла в проектировании модели данных для хранения публикаций (твитов) пользователей для быстрой выборки записей конкретного пользователя или группы пользователей по их ID.
Записи должны ложиться в строго точном порядке времени, вверху - последние. Чтобы в дальнейшем можно было отсекать через LIMIT.
Была спроектирована такая колонка:
CREATE TABLE Posts (
post_id uuid,
post_at timestamp,
user_id text,
name varchar,
category set<text>,
link varchar,
image set<varchar>,
video set<varchar>,
content map<text, text>,
private boolean,
PRIMARY KEY ((post_id, user_id), post_at)
)
WITH CLUSTERING ORDER BY (post_at DESC) COMPACT STORAGE;
В связи с этим, такие вопросы:
Правильно ли расставлены первичные ключи
Для чего нужен COMPACT STORAGE (PHPCASSA выдавал ошибку без этого параметра)
Есть вторая "таблица" posts_user, в ней название колонки post_id uuid, вопрос, как связать posts_user с таблицей Posts, если брать по uuid, то он в обоих таблицах должен быть одинаковым, т-е добавлен одновременно(что сомнительно).