Wir sind (potentiell) zu modellieren, eine Tabelle mit drei Feldernkorrekte Art und Weise meine Analysen in Cassandra (Video Views)
view_id string (uuid)
video_id uint (this is a mysql id we use to track what video was viewed)
local string (this is the location the video was viewed from)
meine Frage haben, gehen wird, wäre es besser, diese zu speichern, wie jede Ansicht eines einzelner Datensatz oder sollte ich jede Ansicht in einer Sammlung innerhalb eines Datensatzes mit einer Video-ID speichern.
Einige der Videos bekommen 500k + Aufrufe - viele bekommen 5-10k pro Tag.
Die Abfragen müssen wir führen, sind in laymans Begriffe
// Heres a video ID, where is it popular
// Heres a video ID, get all views
// Get all videos where local is some local
Der Autor fragt nach 500k + Views für ein Video, das die 2-Milliarden-Limitierung in absehbarer Zeit nicht zu treffen scheint, oder? Auch wenn der Autor nur Videos für einen Ort (nicht Ansichten) benötigt, scheint ein Index auf 'Ansichten (lokale)' ein wenig verschwenderisch – starikoff
@starikoff Lassen Sie uns sagen, Video-Ansicht nicht 2B schlagen, traf es 500k Und Sie wollen Um alle Blicke auf dieses Video zu bekommen, ist es sinnvoll, 500k zu wählen, Artikel in einem einzigen auswählen? Und meine Antwort aktualisiert –
Ich stimme mit dem Paging-Argument überein, es ist nur so, dass der gesamte Einschränkungsteil in diesem Fall irrelevant zu sein scheint; BTW und nicht wirklich verwandt, in 3.1 wurde die 64 KB-Beschränkung auf Collection Element Größen in [CASSANDRA-10374] entfernt (https://issues.apache.org/jira/browse/CASSANDRA-10374) – starikoff