Mit Cassandra für time series data

Ich bin auf meiner recherche für die Speicherung von Protokollen zu Cassandra.

Das schema für Protokolle wäre so etwas wie dieses.

EDIT: ich habe mich verändert das schema um einige Klarstellungen.

CREATE TABLE log_date (
  userid bigint,
  time timeuuid,
  reason text,
  item text,
  price int,
  count int,
  PRIMARY KEY ((userid), time) - #1
  PRIMARY KEY ((userid), time, reason, item, price, count) - #2
);

Eine neue Tabelle erstellt werden, die für das Tag täglich.
So eine Tabelle enthält Protokolle nur für einen Tag.

Meine Abfragen Zustand ist wie folgt.

Abfrage alle Protokolle, die von einem bestimmten Benutzer auf einem bestimmten Tag(Datum, nicht Uhrzeit).

Also der Grund, item, Preis, Anzahl, wird nicht verwendet werden, die als Hinweise oder Bedingungen, die für Abfragen in allen.

Meine Frage ist die PRIMARY KEY-design passt besser.

EDIT: Und der Schlüssel hier ist, ich möchte speichern Sie die Protokolle in einer schematischen Art und Weise.

Wenn ich wählen #1 so viele Spalten erstellt werden, pro log. Und die Möglichkeit, mehrere Werte pro Protokoll ist sehr hoch. Das schema oben ist nur ein Beispiel. Das Protokoll kann Werte enthalten, wie subreason, friendid und so weiter.

Wenn ich wählen Sie #2-eine (sehr) composite-Spalte erstellt wird pro Protokoll, und so weit ich konnte nicht finden alle wertvollen Informationen über den Aufwand der composite-Spalten.

Welche soll ich wählen? Bitte helfen Sie.

Diff zwischen den Tasten: stackoverflow.com/questions/24949676/...

InformationsquelleAutor Woojun Kim | 2015-05-07

Schreibe einen Kommentar