Anomalieerkennung in AWS Glue Data Quality - AWS Glue

Anomalieerkennung in AWS Glue Data Quality

Entwickler verwalten Hunderte von Datenpipelines gleichzeitig. Mit jeder Pipeline können Daten aus verschiedenen Quellen extrahiert und in den Data Lake oder andere Datenrepositorys geladen werden. Entwickler legen Regeln für die Datenqualität fest, um sicherzustellen, dass qualitativ hochwertige Daten für die Entscheidungsfindung bereitgestellt werden. Diese Regeln bewerten die Daten auf der Grundlage fester Kriterien, die den aktuellen Geschäftsstatus widerspiegeln. Ändert sich jedoch das Geschäftsumfeld, verändern sich die Dateneigenschaften, wodurch diese festen Kriterien überholt sind und die Datenqualität beeinträchtigt wird.

Beispielsweise legte ein Dateningenieur in einem Einzelhandelsunternehmen eine Regel fest, nach der der Tagesumsatz einen Schwellenwert von einer Million Dollar überschreiten muss. Nach einigen Monaten überstieg der Tagesumsatz zwei Millionen Dollar, wodurch der Schwellenwert nicht mehr gültig war. Der Dateningenieur konnte die Regeln nicht aktualisieren, um die aktuellen Schwellenwerte widerzuspiegeln, da keine Benachrichtigung erfolgte und die Regel aufwändig manuell analysiert und aktualisiert werden musste. Im Laufe des Monats stellten die Geschäftsanwender einen Umsatzrückgang von 25 % fest. Nach stundenlangen Untersuchungen stellten die Dateningenieure fest, dass eine ETL-Pipeline, die für das Extrahieren von Daten aus einigen Filialen zuständig war, ohne Fehlermeldung ausgefallen war. Die Regel mit veralteten Schwellenwerten funktionierte weiterhin einwandfrei, ohne dass dieses Problem erkannt wurde.

Alternativ hätten proaktive Warnmeldungen, die diese Anomalien erkennen können, es den Benutzern ermöglicht, dieses Problem zu erkennen. Darüber hinaus kann die Beobachtung saisonaler Schwankungen im Geschäftsverlauf erhebliche Probleme mit der Datenqualität aufdecken. Beispielsweise können die Einzelhandelsumsätze an Wochenenden und in der Weihnachtszeit am höchsten und an Wochentagen relativ niedrig sein. Eine Abweichung von diesem Muster kann auf Probleme mit der Datenqualität oder Veränderungen der Geschäftsumstände hinweisen. Mit Datenqualitätsregeln können saisonale Muster nicht erkannt werden, da hierfür fortgeschrittene Algorithmen erforderlich sind, die aus vergangenen Mustern lernen und saisonale Schwankungen erfassen können, um Abweichungen zu erkennen.

Schließlich empfinden Benutzer die Erstellung und Pflege von Regeln aufgrund der technischen Natur des Regelerstellungsprozesses und des damit verbundenen Zeitaufwands als schwierig. Aus diesem Grund ziehen sie es vor, zuerst Dateneinblicke zu untersuchen, bevor sie Regeln definieren. Kunden müssen in der Lage sein, Anomalien mühelos zu erkennen, sodass sie Datenqualitätsprobleme proaktiv erkennen und fundierte Geschäftsentscheidungen treffen können.

Funktionsweise

Anmerkung

Die Anomalieerkennung wird nur in AWS Glue ETL unterstützt. Dies wird bei der datenkatalogbasierten Datenqualität nicht unterstützt.

Dieser Screenshot zeigt den Prozess der Anomalieerkennung in Data Quality.

AWS Glue Data Quality kombiniert die Leistungsfähigkeit regelbasierter Datenqualitätssicherung und Anomalieerkennung, um qualitativ hochwertige Daten bereitzustellen. Zunächst müssen Sie Regeln und Analysatoren konfigurieren und anschließend die Anomalieerkennung aktivieren.

Regeln

Regeln: Regeln beschreiben die Erwartungen an Ihre Daten in einer offenen Sprache, der Data Quality Definition Language (DQDL). Es folgt ein Beispiel für eine Regel. Diese Regel ist erfolgreich, wenn die Spalte „passenger_count“ keine leeren oder NULL-Werte enthält:

Rules = [ IsComplete "passenger_count" ]

Analysatoren

Wenn Sie die kritischen Spalten kennen, aber nicht genügend Informationen über die Daten haben, um spezifische Regeln zu erstellen, können Sie diese Spalten mithilfe von Analysatoren überwachen. Analysatoren ermöglichen das Erfassen von Datenstatistiken, ohne explizite Regeln zu definieren. Es folgt ein Beispiel für die Konfiguration von Analysatoren:

Analyzers = [ AllStatistics "fare_amount", DistinctValuesCount "pulocationid", RowCount ]

In diesem Beispiel sind drei Analysatoren konfiguriert:

  1. Der erste Analysator, „AllStatistics "fare_amount"“, erfasst alle verfügbaren Statistiken für das Feld „fare_amount“.

  2. Der zweite Analysator, „DistinctValuesCount "pulocationid"“, erfasst die Anzahl der unterschiedlichen Werte in der Spalte „pulocationid“.

  3. Der dritte Analysator, „RowCount“, erfasst die Gesamtzahl der Datensätze.

Analysatoren bieten eine einfache Möglichkeit, relevante Datenstatistiken zu erfassen, ohne komplexe Regeln festlegen zu müssen. Durch die Überwachung dieser Statistiken erhalten Sie Einblicke in die Datenqualität und können potenzielle Probleme oder Anomalien identifizieren, die möglicherweise weitere Untersuchungen oder die Erstellung spezifischer Regeln erfordern.

Datenstatistik

Sowohl Analysatoren als auch Regeln in AWS Glue Data Quality erfassen Datenstatistiken, auch Datenprofile genannt. Diese Statistiken geben Aufschluss über die Eigenschaften und die Qualität Ihrer Daten. Die erfassten Statistiken werden im AWS-Glue-Service gespeichert, sodass Sie Änderungen Ihrer Datenprofile nachverfolgen und analysieren können.

Sie können diese Statistiken einfach abrufen und zur weiteren Analyse oder Langzeitspeicherung in Amazon S3 speichern, indem Sie die entsprechenden APIs aufrufen. Diese Funktion ermöglicht es Ihnen, die Erstellung von Datenprofilen in Ihre Datenverarbeitungs-Workflows zu integrieren und die erfassten Statistiken für verschiedene Zwecke zu nutzen, z. B. für die Überwachung der Datenqualität und die Anomalieerkennung.

Durch die Speicherung der Datenprofile in Amazon S3 profitieren Sie von der Skalierbarkeit, der Ausfallsicherheit und der Kosteneffizienz des Objektspeicher-Services von Amazon. Darüber hinaus können Sie andere AWS-Services oder Tools von Drittanbietern nutzen, um die Datenprofile zu analysieren und zu visualisieren. So erhalten Sie tiefere Einblicke in Ihre Datenqualität und können fundierte Entscheidungen zum Datenmanagement und zur Governance treffen.

Hier ist ein Beispiel für Datenstatistiken, die im Laufe der Zeit gespeichert wurden.

Der Screenshot zeigt ein Liniendiagramm der Statistiken zur Datenqualität im Zeitverlauf.
Anmerkung

AWS Glue Data Quality erfasst Statistiken nur einmal, selbst wenn Sie sowohl Regel als auch Analysator für dieselben Spalten verwenden, wodurch der Prozess der Statistikgenerierung effizient wird.

Anomalieerkennung

AWS Glue Data Quality benötigt mindestens drei Datenpunkte, um Anomalien zu erkennen. Es nutzt einen Machine-Learning-Algorithmus, um aus vergangenen Trends zu lernen und dann zukünftige Werte vorherzusagen. Wenn der tatsächliche Wert nicht im vorhergesagten Bereich liegt, erstellt AWS Glue Data Quality eine Anomaliebeobachtung. Diese bietet eine visuelle Darstellung des tatsächlichen Werts und der Trends. In der folgenden Grafik werden vier Werte angezeigt.

Der Screenshot zeigt ein Liniendiagramm der Ereignisse zur Anomalieerkennung in Data Quality im Zeitverlauf.
  1. Die tatsächliche Statistik und ihr Trend im Zeitverlauf.

  2. Ein abgeleiteter Trend, der aus dem tatsächlichen Trend gelernt wurde. Dies ist hilfreich, um die Trendrichtung zu verstehen.

  3. Die mögliche Obergrenze für die Statistik.

  4. Die mögliche Untergrenze für die Statistik.

  5. Empfohlene Datenqualitätsregeln, mit denen diese Probleme in Zukunft erkannt werden können.

In Bezug auf Anomalien sind einige wichtige Punkte zu beachten:

  • Die Datenqualitätswerte werden durch das Auftreten von Anomalien nicht beeinträchtigt.

  • Wird eine Anomalie erkannt, gilt sie für nachfolgende Durchläufe als normal. Der Machine-Learning-Algorithmus berücksichtigt diesen anomalen Wert als Eingabe, sofern er nicht explizit ausgeschlossen wird.

Erneutes Training

Das erneute Training des Anomalieerkennungsmodells ist entscheidend, um die richtigen Anomalien zu erkennen. Wenn Anomalien erkannt werden, integriert AWS Glue Data Quality diese als Normalwert in das Modell. Um eine präzise Anomalieerkennung zu gewährleisten, ist es wichtig, Feedback zu geben, indem die Anomalie bestätigt oder abgelehnt wird. AWS Glue Data Quality bietet Mechanismen sowohl in AWS Glue Studio als auch über APIs, um Feedback zum Modell zu geben. Weitere Informationen finden Sie in der Dokumentation zur Einrichtung der Anomalieerkennung in ETL-Pipelines für AWS Glue.

Einzelheiten zum Algorithmus zur Anomalieerkennung

  • Der Algorithmus zur Anomalieerkennung untersucht Datenstatistiken im Zeitverlauf. Der Algorithmus berücksichtigt alle verfügbaren Datenpunkte und ignoriert alle Statistiken, die explizit ausgeschlossen wurden.

  • Diese Datenstatistiken werden im AWS-Glue-Service gespeichert und können mit Schlüsseln von AWS KMS verschlüsselt werden. Informationen zur Bereitstellung von Schlüsseln von AWS KMS zur Verschlüsselung der Statistiken von AWS Glue Data Quality finden Sie im Sicherheitsleitfaden.

  • Die Zeitkomponente ist entscheidend für den Algorithmus zur Anomalieerkennung. AWS Glue Data Quality ermittelt anhand vergangener Werte die Ober- und Untergrenzen. Dabei wird die Zeitkomponente berücksichtigt. Die Grenzwerte unterscheiden sich für dieselben Werte in einem einminütigen, stündlichen oder täglichen Intervall.

Erfassung der Saisonalität

Der Algorithmus zur Anomalieerkennung von AWS Glue Data Quality kann saisonale Muster erfassen. Beispielsweise erkennt er, dass sich die Muster an Wochentagen von denen am Wochenende unterscheiden. Dies ist im folgenden Beispiel zu sehen, in dem AWS Glue Data Quality einen saisonalen Trend in den Datenwerten erkennt. Für die Aktivierung dieser Funktion sind keine besonderen Maßnahmen erforderlich. AWS Glue Data Quality lernt mit der Zeit saisonale Trends und erkennt Anomalien, wenn diese Muster abweichen.

Der Screenshot zeigt eine Registerkarte „Datenqualität“ mit Daten, die Anomalien bei der Erfassung saisonaler Trends aufweisen.

Kosten

Die Abrechnung erfolgt auf Basis der Zeit, die für die Erkennung von Anomalien benötigt wird. Für jede Statistik wird 1 DPU für die Zeit der Anomalieerkennung berechnet. Detaillierte Beispiele finden Sie unter AWS Glue – Preise.

Wesentliche Überlegungen

Für die Speicherung der Statistiken fallen keine Kosten an. Es gibt jedoch ein Limit von 100.000 Statistiken pro Konto. Diese Statistiken werden maximal zwei Jahre lang gespeichert.