Thema: data-quality
-
Pipelines, die beim Einlesen unerwartete Schemaänderungen der Quelle ablehnen, erkennen vorgelagerte Änderungen früher, scheitern aber häufiger als Pipelines, die sie anpassen
Hypothese: Eine Pipeline, die einen Einlesevorgang scheitern lässt, sobald das Quellschema vom deklarierten abweicht (so wie Avros Schema-Resolution einen Fehler meldet, wenn ein Leserfeld keinen Default hat und der Schreiber es nicht liefert), erkennt vorgelagerte Änderungen innerhalb eines Laufs, scheitert aber auch bei harmlosen Änderungen. Eine anpassende Pipeline läuft dagegen weiter und lässt manche Änderungen unbemerkt bis zu den Konsumenten durch; vorgeschlagen wird ein Vergleich an denselben Quellen, ohne Ergebnis zu behaupten.
-
Aktualitäts- und Zeilenzahl-Prüfungen an rohen Quelltabellen erkennen die meisten Pipeline-Vorfälle früher als nachgelagerte spaltenbezogene Tests
Hypothese: In einem Warehouse mit geschichteten Modellen zeigt sich die Mehrheit der Vorfälle, die letztlich für Berichtskonsumenten sichtbar werden, zuerst als veralteter oder zu kleiner Rohquellen-Ladevorgang, sodass Aktualitäts- und Volumenprüfungen auf der Quellschicht sie früher erkennen als Not-Null-, Eindeutigkeits- und Wertebereichstests auf nachgelagerten Modellen; ein vorgeschlagener Vergleich anhand aufgezeichneter Vorfälle.
-
Datenqualitätsprüfungen: Aktualität, Volumen, Nullwerte und Eindeutigkeit als minimales Testset
Vier günstige Prüfungen decken die meisten defekten Ladevorgänge auf: Die Quelle wurde aktuell genug aktualisiert (Aktualität), das Intervall lieferte eine plausible Zeilenzahl (Volumen), Schlüssel und Pflichtmasse sind nicht null, und die deklarierte Granularität ist eindeutig. Jede Prüfung als Abfrage formulieren, die fehlschlagende Zeilen zurückgibt, nach dem Laden und vor der Veröffentlichung ausführen, und Warnungen von blockierenden Fehlern trennen.
-
Bei jeder Messung die Einheit angeben
Messdatensätze werden interpretierbar, wenn Einheit, Aggregation und Grundgesamtheit bei jedem Wert mit angegeben werden.
-
Zeitstempel an der Grenze in UTC umwandeln
Mehrdeutige Zeitstempel zurückweisen, zonenbewusste Zeitpunkte in UTC umwandeln und die ursprüngliche Zeitzone bewahren, wenn lokale Planungssemantik wichtig ist.
-
Datenqualitätsprüfungen: Aktualität, Menge, Nullwerte und Eindeutigkeit als Mindestsatz
Vier billige Prüfungen fangen die meisten kaputten Ladeläufe: Ist die Quelle frisch genug, kam eine plausible Zeilenzahl, sind Schlüssel und Kennzahlen gefüllt, ist die erklärte Körnung eindeutig? Jede Prüfung als Abfrage formulieren, die fehlerhafte Zeilen liefert, nach dem Laden und vor dem Veröffentlichen ausführen, Warnung und Blockade trennen.
-
Canonicalize URLs without changing meaning
Use an application-defined comparison key while retaining the exact request URL when normalization might alter routing or signatures.
-
Deduplication strategies for records: exact rows, keep-latest by key and bounded windows
Decide first what counts as a duplicate: identical rows, several versions of one key, or messages redelivered within a window. Exact duplicates fall to DISTINCT; versions need a keep-latest rule with an explicit ordering; redelivery is deduplicated on an idempotency key within a bounded time or state window, as message queues and stream engines do.
Maschinenlesbar: JSON