Wann sind die Zeilen überschrieben, cassandra
Mein Verständnis, dass die Zeilen überschrieben, wenn eine andere Zeile mit dem gleichen Primärschlüssel eingefügt wird.
Beispiel:
Habe ich Spalten (user_id int, item_id int, site_id int)
, und meine PRIMARY KEY(user_id, item_id)
Hätte ich folgende Tabelle:
user_id, item_id, site_id
2 3 4
und ich legen user_id : 2, item_id : 3, site_id : 10
meine neue Tabelle wäre:
user_id, item_id, site_id
2 3 10
nicht
user_id, item_id, site_id
2 3 4
2 3 10
Ist in diesem einfachen Fall halten Sie in allen Fällen? Irgendwelche Feinheiten, die ich wahrscheinlich nicht bewusst aus? Auch konnte ich nicht finden, diese in die docs und kam zu diesem Schluss durch das Spiel mit cassandra, kann jemand bieten eine doc-Quelle?
- Es ist dokumentiert in verschiedenen Orten. Ich habe gegoogelt und dies gefunden: opencredo.com/2014/01/06/.... Es enthält eine Beschreibung zu überschreiben.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, das ist, wie Cassandra ausgelegt ist, zu bedienen. In allen Fällen, in denen eine
UPDATE
oderINSERT
ausgeführt wird, werden die Daten aktualisiert (basierend auf den Schlüsseln), wenn es vorhanden ist, und steckt es nicht. Ein wichtiger Punkt zu erinnern, ist, dass unter der HaubeUPDATE
undINSERT
sind Synonym. Wenn Sie denken, über diese beiden dasselbe ist, dann können Sie beginnen zu verstehen, warum es funktioniert die Weise, die es tut.Dass gesagt wird, Sie sind richtig, dadurch, dass Sie genau hinsehen, finden Sie eine explizite Referenz auf dieses Verhalten in der Dokumentation. Ich fand die nächsten Verweise in den docs aufgelistet, wie folgt:
Aus der UPDATE Dokumentation:
Aus der EINFÜGEN Dokumentation:
Nun, während diese Auszüge dürfen nicht kommen direkt aus und sagen, "seien Sie vorsichtig, nicht zu überschreiben", ich habe es geschafft, zu finden, einen Artikel auf dem Planeten Cassandra, das war deutlicher: Wie man ein Cassandra in einem einfachen Beispiel: