Warum nicht ein upsert erstellen Grabsteine in Kassandra?

Als pro Frage bezüglich Grabstein, warum nicht upserts erstellen Grabsteine?
Als pro datastax Dokumentation, Wie werden die Daten aktualisiert ? für jeden upsert, cassandra Auffassung löschen, gefolgt von einfügen, da die neuen Zeitstempel einfügen überschreibt die alten Zeitstempel. Der alte timestamp-Daten so markiert werden, löschen die sich nach tombstone.

Warum müssen wir widersprechen Aussagen? sonst bin ich etwas fehlt hier?

Anwendungsfall:
Daten werden eingefügt, mit eindeutiger Schlüssel (uuid) in Kassandra und einige der Spalten in diese Daten fortlaufend aktualisiert wird Häufig. Welche Vorgehensweise empfehlen Sie?

  1. Einfügen die gleichen Daten mit neue Werte in der Spalte
    Insert-Abfrage.
  2. Aktualisierung der bestehenden Datensatz, basierend auf der angegebenen uuid
    mit neue Werte in der Spalte in der update-query.

Ansatz tut oder nicht erstellen Grabsteine? und wie funktioniert Cassandra Griff beide Abfragen?

InformationsquelleAutor Arun | 2016-02-18

 

One Reply
  1. 4

    Als Russ wies darauf hin, die Sie Lesen möchten, können ähnliche Fragen zu diesem Thema. Allerdings

    Einer upsert/überschreiben-nur-noch-Zelle, mit einem Namen, einen Zeitstempel und einen Wert.

    Einem Grabstein ist wie ein überschreiben, außer es wird ein zusätzliches Feld, das angibt, dass es gelöscht wurde, so dass es nicht zurückgegeben als gültig ausgegeben. Der Grund Grabsteine sind oft schädlich ist, dass Sie können sich bei schlechten Daten-Modellen, auch wenn die Leute denken, die Daten Weg – und auslassen, Sie zu bekommen, um live-Daten tatsächlich benötigt Speicher.

    Wenn Sie aktualisieren/upsert wie Sie es beschreiben, die Zelle, die Sie erstellen SCHATTEN (veraltet) der vorherigen Zelle, die entfernt werden nach der Verdichtung. Das Vorherige Zelle ist NICHT ein Grabstein, auch wenn es nicht mehr Leben/aktiv – es verdichtet werden entfernt und vollständig ersetzt durch die neue, live, höchste-timestamp-Wert, sobald die Verdichtung erlaubt.

    Die größte Sache im Auge zu behalten, ist dies: die Grabsteine, die nicht unbedingt entfernt von Verdichtung – Sie sind um gehalten (beibehalten/neu geschrieben wird) für mindestens gc_grace_seconds, und möglicherweise sogar lange, wenn Sie benötigen, um Schatten/cover anderen Zellen in sstables noch nicht verdichtet. Weil dieses, Grabsteine bleiben um für eine lange Zeit, aber schattiert/überschrieben Zellen gc würde, sobald die sstable Sie sind komprimiert.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.