Это расширение на этот вопрос:Как использовать столбцы счетчика Cassandra с phantom-dsl?
How to increment Cassandra Counter Column with phantom-dsl?
Этот вопрос также был задан here.
В Thiagos example две таблицы; & «songs_by_artist» «песни» оба имеют одни и те же строки, но с разными разделами (первичные ключи/кластеризация колонны)
CREATE TABLE test.songs (
song_id timeuuid PRIMARY KEY,
album text,
artist text,
title text
);
CREATE TABLE test.songs_by_artist (
artist text,
song_id timeuuid,
album text,
title text,
PRIMARY KEY (artist, song_id)
) WITH CLUSTERING ORDER BY (song_id ASC);
Это означает, что вставка, обновление и удаление через обе таблицы в пределах SongsService работ с теми же базовыми данными/строк.
Как вы, например, имеете таблицу, такую как «artist_songs_counts», с колонками «song_id» (K) и «num_songs» (++) и убедитесь, что «SongsService» добавляет соответствующую строку в каждую таблицу; 'songs' & 'songs_by_artist' & 'artist_songs_counts' (там, где есть разные номера строк, но информация должна быть связана, например, информация о художнике).
CREATE TABLE test.artist_songs_counts (
artist text PRIMARY KEY,
num_songs counter);
@flavian это может быть другой один для вас ... –