Ich habe eine Cassandra ColumnFamily (0.6.4), die neue Einträge von Benutzern haben wird. Ich möchte Cassandra nach diesen neuen Einträgen abfragen, damit ich diese Daten in einem anderen System verarbeiten kann.Wie abzufragen Cassandra nach Zeitraum
Mein Gefühl war, dass ich einen TimeUUIDType als Schlüssel für meine Eingabe verwenden konnte, und dann auf eine KeyRange abfragen, die entweder mit "" als startKey oder was auch immer der lastStartKey war. Ist das die richtige Methode?
Wie erstellt get_range_slice tatsächlich einen Bereich? Muss der Datentyp des Schlüssels nicht bekannt sein? Es gibt keine Deklaration des Datentyps des Schlüssels. In der Datei storage_conf.xml deklarieren Sie den Typ der Spalten, nicht jedoch der Schlüssel. Wird angenommen, dass der Schlüssel vom gleichen Typ wie die Spalten ist? Oder macht es etwas magisches Schnüffeln?
Ich habe auch Referenzimplementierungen gesehen, wo Menschen TimeUUIDType in Spalten speichern. Dies scheint jedoch Skalenprobleme zu haben, da dieser spezielle Schlüssel dann "heiß" wird, da jede Änderung ihn aktualisieren müsste.
Alle Zeiger in diesem Fall würden geschätzt werden.
Ich verstehe, dass Sie Spalte-Schlüssel für die Sortierung verwenden können. Wenn ich jedoch einen Zeitstempel Spalt für jedes Element in meiner Sammlung zu schreiben, würde ich immer wieder zu einer einzigen Spalte Familie schreiben, die einen Hot Spot schaffen würden. – Doug
Ich habe Ihren Kommentar nicht verstanden. Könnten Sie das bitte näher ausführen? Was die Spalte-Schlüssel betroffen sind, Cassandra Auto sortiert die gesamte Spalte (supercolumn), basierend auf dem Schlüssel (oder ‚Namen‘ in Cassandra Konvention), sobald Sie es speichern. Auch, wenn Sie ein wenig mehr auf Ihren Anwendungsfall erarbeiten könnte, würde es helfen :) –