Daten nicht duplizieren: Zero Copy

Die meisten Systeme arbeiten durch das Herunterladen von Daten. Sie rufen Informationen von einem Server ab, und der Server sendet eine Payload zurück. Anschließend speichern Sie diese Daten in Ihrem eigenen System.

Dies führt zu einem Problem: Sie haben am Ende Duplikate der Daten. Dies lässt sich durch ein Prinzip namens Zero Copy lösen.

Was ist Zero Copy?

Zero Copy bedeutet, dass Sie auf Daten zugreifen, ohne sie zu verschieben. Stellen Sie es sich wie das Öffnen eines Fensters vor. Sie sehen die Daten durch das Fenster, aber die Daten bleiben an ihrem ursprünglichen Ort. Sie müssen die Daten nicht zu sich nach Hause holen, um sie anzusehen.

Wie ServiceNow dies nutzt:

Operations Management benötigt Daten von vielen verschiedenen Orten wie SAP, AWS oder Snowflake. Normalerweise verwenden Sie ETL-Pipelines, um diese Daten zu verschieben. Dies kostet Zeit und führt zu Fehlern.

ServiceNow verwendet stattdessen Virtual Data Fabric Tables. Es fragt die Daten erst ab, wenn Sie danach fragen. Das System hält die Daten vorübergehend im Arbeitsspeicher. Sobald Sie Ihre Aufgabe abgeschlossen haben, verschwinden die Daten wieder.

Die Vorteile:

• Sie duplizieren keine Daten. • Sie müssen keine Daten zwischen Systemen synchronisieren. • Sie reduzieren Sicherheitsrisiken, da die Daten nicht an einem zweiten Ort gespeichert werden.

Die Nachteile:

• Geschwindigkeit: Sie sind von der Netzwerkgeschwindigkeit abhängig. Wenn die Quelle langsam ist, müssen Sie warten. • Verfügbarkeit: Wenn das Quellsystem ausfällt, sehen Sie nichts. Sie haben kein lokales Backup. • Last: Jede Benutzeranfrage sendet eine Live-Abfrage an das Quellsystem. • Kosten: Häufige API-Aufrufe können teuer werden. • Reporting: Sie können diese Daten nicht indizieren, weshalb komplexe Berichte schwieriger zu erstellen sind.

Wann man Zero Copy einsetzen sollte:

Nutzen Sie es, wenn das Verschieben von Daten teurer ist als der Nutzen der Speicherung.

  1. Sensible Daten: Behalten Sie PII- oder HIPAA-Daten an einem einzigen Ort, um das Risiko zu minimieren.
  2. Echtzeit-Anforderungen: Nutzen Sie es für die IT-Fehlerbehebung, bei der veraltete Daten nutzlos sind.
  3. Gelegentliche Abfragen: Nutzen Sie es, um eine einzelne Budgetzahl zu prüfen, anstatt eine gesamte Datenbank zu synchronisieren.
  4. Massive Datensätze: Nutzen Sie es, um Zusammenfassungen riesiger Logfiles anzuzeigen, anstatt Petabytes an Daten zu verschieben.

Quelle: https://dev.to/syncrofosatron/dont-repeat-data-zero-copy-1ff0

Optionale Lern-Community: https://t.me/GyaanSetuAi