2017-03-02 3 views
0

ist habe ich folgende TabelleCassandra CQL Abfrage für eindeutige ID, die keinen Schlüssel

create table Table (
timestamp bigint, 
topic text, 
page text, 
visits int, 
client_id text, 
PRIMARY KEY ((topic, timestamp), visits)) WITH CLUSTERING ORDER BY(visits DESC); 

Nun ist das Tabellenschema flexibel ist. Ich bin neu in Cassandra. Und ich möchte in der Lage sein, die Seiten mit den eindeutigsten Client-Besuchen auszuwählen, aber ich bin nicht sicher, wie dies zu tun ist, ist eine CQL-Abfrage.

Jede Hilfe sehr geschätzt!

+0

Diese Arten von Arbeit wird durch Funken oder Hadoop getan. –

+0

Wenn Sie ein Beispiel hinzufügen, wird deutlicher, was genau Sie abrufen möchten. – Avi

Antwort

0

Ihr Partitionsschlüssel ist Thema und Zeitstempel. Das ist problematisch, da jede Kombination aus Themen und Zeitstempeln eine neue Partition ist. Und Besuche ist der Clusterschlüssel, der auch Teil des Primärschlüssels ist. Wenn Sie die Besuche aktualisieren, erstellen Sie eine neue Zeile. Wolltest du das?

In Cassandra sollte das Modell Ihrer Anfrage entsprechen. Und Ihr Partitionierungsschlüssel sollte sorgfältig ausgewählt werden. Wählen Sie Seiten mit den meisten eindeutigen Benutzern aus. Es ist sehr schwierig, den Partitionsschlüssel auszuwählen, da sich die Anzahl ständig ändert.

How to model cassandra model

Verwandte Themen