Freigeben über


Übersicht über vorläufiges Löschen

Gilt für: ✅Azure Data Explorer

Die Möglichkeit zum Löschen einzelner Datensätze wird unterstützt. Datensatzlöschung wird häufig mit einer der folgenden Methoden erreicht:

  • Um Datensätze mit einem System zu löschen, garantieren Sie, dass auch die Speicherartefakte, die diese Datensätze enthalten, gelöscht werden, verwenden Sie .purge
  • Verwenden Sie zum Löschen von Datensätzen ohne eine solche Garantie .delete , wie in diesem Artikel beschrieben. Dieser Befehl markiert Datensätze als gelöscht, löscht jedoch nicht unbedingt die Daten aus Speicherartefakten. Diese Löschmethode ist schneller als Löschvorgang.

Informationen zur Verwendung des Befehls finden Sie unter Syntax

Anwendungsfälle

Diese Löschmethode sollte nur für das ungeplante Löschen einzelner Datensätze verwendet werden. Wenn Sie beispielsweise feststellen, dass ein IoT-Gerät einige Zeit beschädigte Telemetrie meldet, sollten Sie diese Methode verwenden, um die beschädigten Daten zu löschen.

Wenn Sie Datensätze für die Deduplizierung oder Aktualisierung häufig löschen müssen, empfehlen wir die Verwendung materialisierter Ansichten. Wählen Sie zwischen materialisierten Ansichten und vorläufigem Löschen für die Datendeduplizierung aus.

Löschvorgang

Der Vorläufige Löschvorgang wird mit den folgenden Schritten ausgeführt:

  1. Ausführen einer Prädikatabfrage: Die Tabelle wird gescannt, um Datenausdehnungen zu identifizieren, die Datensätze enthalten, die gelöscht werden sollen. Die identifizierten Bereiche sind diejenigen mit einem oder mehreren Datensätzen, die von der Prädikatabfrage zurückgegeben werden.
  2. Umfangsersetzung: Die identifizierten Bereiche werden durch neue Bereiche ersetzt, die auf die ursprünglichen Datenblobs verweisen, und verfügen auch über eine neue ausgeblendete Spalte vom Typ bool , die pro Datensatz angibt, ob sie gelöscht wurde oder nicht. Wenn keine neuen Daten aufgenommen wurden, werden nach Abschluss der Prädikatabfrage keine Datensätze zurückgegeben, wenn sie erneut ausgeführt werden.

Einschränkungen und Aspekte

  • Der Löschprozess ist endgültig und kann nicht rückgängig gemacht werden. Es ist nicht möglich, diesen Prozess rückgängig zu machen oder Daten wiederherzustellen, die gelöscht wurden, auch wenn die Speicherartefakte nach dem Vorgang nicht unbedingt gelöscht werden.

  • Das vorläufige Löschen wird für systemeigene Tabellen und materialisierte Ansichten unterstützt. Sie wird für externe Tabellen nicht unterstützt.

  • Überprüfen Sie vor dem Ausführen des vorläufigen Löschens das Prädikat, indem Sie eine Abfrage ausführen und überprüfen, ob die Ergebnisse mit dem erwarteten Ergebnis übereinstimmen. Sie können den Befehl auch im whatif Modus ausführen, der die Anzahl der Datensätze zurückgibt, die erwartet werden, dass sie gelöscht werden.

  • Führen Sie nicht mehrere parallele Soft Delete-Vorgänge in derselben Tabelle aus, da dies zu Fehlern einiger oder aller Befehle führen kann. Es ist jedoch möglich, mehrere parallele Soft Delete-Vorgänge in verschiedenen Tabellen auszuführen.

  • Führen Sie keine Befehle für vorläufiges Löschen und Löschen in derselben Tabelle parallel aus. Warten Sie zuerst, bis ein Befehl abgeschlossen ist, und führen Sie dann den anderen Befehl aus.

  • Vorläufiges Löschen wird für Ihren Cluster-URI ausgeführt: https://[YourClusterName].[region].kusto.windows.net. Der Befehl erfordert Datenbankadministratorberechtigungen für die relevante Datenbank.

  • Das Löschen von Datensätzen aus einer Tabelle, die eine Quelltabelle einer materialisierten Ansicht ist, kann auswirkungen auf die materialisierte Ansicht haben. Wenn datensätze, die gelöscht werden, noch nicht vom Materialisierungszyklus verarbeitet wurden, fehlen diese Datensätze in der Ansicht, da sie nie verarbeitet werden. Entsprechend wirkt sich die Löschung nicht auf die materialisierte Ansicht aus, wenn die Datensätze bereits verarbeitet wurden.

  • Einschränkungen für das Prädikat:

    • Sie muss mindestens einen where Operator enthalten.
    • Sie kann nur auf die Tabelle verweisen, aus der Datensätze gelöscht werden sollen.
    • Nur die folgenden Operatoren sind zulässig: extend, order, , projectund take where. Innerhalb toscalar()ist der summarize Operator ebenfalls zulässig.

Löschleistung

Die wichtigsten Aspekte, die sich auf die Leistung des Löschvorgangs auswirken können, sind:

  • Ausführen einer Prädikatabfrage: Die Leistung dieses Schritts ist der Leistung des Prädikats selbst sehr ähnlich. Es kann je nach Prädikat etwas schneller oder langsamer sein, aber es wird erwartet, dass der Unterschied unbedeutend ist.
  • Umfang der Ersetzung: Die Leistung dieses Schritts hängt von den folgenden Faktoren ab:
    • Aufzeichnen der Verteilung über die Datendehnungen im Cluster
    • Die Anzahl der Knoten im Cluster

Im Gegensatz dazu .purgenimmt der .delete Befehl die Daten nicht wieder auf. Es kennzeichnet nur Datensätze, die von der Prädikatabfrage als gelöscht zurückgegeben werden und daher viel schneller sind.

Abfrageleistung nach dem Löschen

Die Abfrageleistung wird nach dem Löschen von Datensätzen nicht spürbar geändert.

Leistungsbeeinträchtigungen werden nicht erwartet, da der Filter, der automatisch für alle Abfragen hinzugefügt wird, die Datensätze herausfiltern, die gelöscht wurden, effizient ist.

Die Abfrageleistung wird jedoch auch nicht garantiert verbessert. Während leistungsverbesserungen für einige Arten von Abfragen auftreten können, kann es für einige andere nicht passieren. Um die Abfrageleistung zu verbessern, werden die meisten Datensätze in regelmäßigen Abständen komprimiert, indem sie durch neue Erweiterungen ersetzt werden, die nur die Datensätze enthalten, die nicht gelöscht wurden.

Auswirkungen auf die COGS (Kosten der verkauften Waren)

In den meisten Fällen führt das Löschen von Datensätzen nicht zu einer Änderung der COGS.

  • Es wird keine Abnahme geben, da keine Datensätze tatsächlich gelöscht werden. Datensätze werden nur mit einer ausgeblendeten Spalte vom Typ bool"Gelöscht" markiert, deren Größe vernachlässigbar ist.
  • In den meisten Fällen wird es keine Erhöhung geben, da für den .delete Vorgang keine zusätzlichen Ressourcen bereitgestellt werden müssen.
  • In einigen Fällen werden Die Bereiche, in denen die Mehrheit der Datensätze gelöscht wird, regelmäßig komprimiert, indem sie durch neue Erweiterungen ersetzt werden, die nur die Datensätze enthalten, die nicht gelöscht wurden. Dies bewirkt das Löschen der alten Speicherartefakte, die eine große Anzahl gelöschter Datensätze enthalten. Die neuen Erweiterungen sind kleiner und verbrauchen daher weniger Speicherplatz sowohl im Speicherkonto als auch im Hot-Cache. In den meisten Fällen ist die Auswirkung dieser Auswirkungen auf die COGS jedoch vernachlässigbar.