Datenkiosk-Abfragen planen
Erfahren Sie, wie Sie Data Kiosk-Abfragen planen.
In dieser Anleitung erfahren Sie, wie Sie automatisch regelmäßige Anrufe tätigen können createQuery
und vermeidet gleichzeitig redundante Datenanfragen.
Hinweis
Ein vollständiges Codebeispiel für diesen Scheduling-Mechanismus finden Sie in unserem Beispiel-Repo auf GitHub.
Überblick über Data Kiosk
Die Verwendung von Data Kiosk umfasst die folgenden Schritte:
- Abonnieren Sie die Benachrichtigung: Abonnieren Sie eine SQS-Warteschlange für
DATA_KIOSK_QUERY_PROCESSING_FINISHED
Benachrichtigung, die Sie benachrichtigt, wenn die Datenverarbeitung abgeschlossen ist. - Erstellen Sie die Abfrage: Senden Sie eine GraphQL-Abfrage mit dem
createQuery
Betrieb. - Rufen Sie das Dokument ab: Benutzen
dataDocumentId
odererrorDocumentId
um Dokumentdetails abzurufen mit demgetDocument
Betrieb. Diese Attribute befinden sich in der Nutzlast für Benachrichtigungen. Wenn Sie erhaltenerrorDocumentId
, den Grund für den Fehler finden Sie im Dokument. - Speichern Sie die Daten: Rufen Sie das ab und speichern Sie es JSONL Datei aus dem
documentUrl
zur Weiterverarbeitung und zum Zugriff.
Hinweis
Weitere Informationen zu Data Kiosk-Workflows finden Sie unter:
Tutorial: Erstellen Sie einen Planungsmechanismus für Data Kiosk
Erfahren Sie, wie Sie automatische und regelmäßige Abfragen an Data Kiosk stellen und gleichzeitig redundante Anrufe vermeiden.
Schritt 1. Definieren Sie Zeitplanparameter
Bestimmen Sie das Startdatum und die Rate, mit der Sie Abfragen stellen möchten.
Hinweis
Wenn das Startdatum der Abfrage in der Vergangenheit liegt und Sie möchten, dass der Scheduler ein Backfill durchführt, erstellen Sie Abfragen so oft wie möglich, bis Sie die aktuelle Abfrage durchführen. Dadurch wird sichergestellt, dass Ihre Daten aktuell bleiben. Wenn das Startdatum beispielsweise vor einem Monat liegt und Sie Informationen von jedem Tag benötigen, passen Sie die Lösung so an, dass der Scheduler schnell Abfragen für jeden Tag des letzten Monats ausführt, bis der aktuelle Tag erreicht ist.
Wenn Sie kein Backfilling benötigen, setzen Sie das Startdatum auf das aktuelle oder ein zukünftiges Datum, um zu vermeiden, dass der Scheduler frühere Abfragen erstellt.
Zu den üblichen Frequenzen gehören täglich, wöchentlich oder monatlich. Die Wahl des Tarifs hängt davon ab, wie oft Ihre Daten aktualisiert werden. Wenn Ihre Daten beispielsweise täglich aktualisiert werden, ist eine tägliche Häufigkeit angemessen. Fragen Sie nicht zu häufig ab. Wenn ein Datensatz täglich aktualisiert wird, wäre eine stündliche Abfrage überflüssig.
Schritt 2. Passen Sie die Abfrageparameter an
Erstellen Sie eine Funktion, die das Start- und Enddatum in der Abfrage basierend auf Ihrer gewünschten Rate verschiebt, sodass jede Abfrage neue Daten abruft. Wenn die geplante Rate beispielsweise täglich ist, sollte die Funktion das Start- und Enddatum für jede neue Abfrage um einen Tag anpassen.
Warnung!
Verschiedene Datensätze haben unterschiedliche Attributschlüsselnamen und unterschiedliche Zeiträume für das Neuladen von Daten. Kennen Sie die Attributschlüssel für das Start- und Enddatum für jeden Datensatz. Wenn Sie die Start- und Enddatumsattribute aktualisieren oder verschieben, können die Schlüsselnamen je nach Datensatz variieren.
Schritt 3. Erstellen Sie die Abfrage
Um Anfragen automatisch einzureichen, verwenden Sie einen Eventplaner wie AWS EventBridge. Mit EventBridge können Sie wiederkehrende Aufgaben mithilfe von Cron-Ausdrücken oder Ratenausdrücken einrichten (z. B. alle fünf Minuten, stündlich, täglich). Konfigurieren Sie EventBridge so, dass die Abfragedaten automatisch angepasst werden und Anrufe an getätigt werden createQuery
in definierten Intervallen, um kontinuierlich und effizient Daten abzurufen.
Schritt 4. Speichern Sie die Zeitplaninformationen
Speichern Sie Zeitplaninformationen wie Startdaten, Tarife und zugehörige Abfragen in einer Datenbank. Stellen Sie sicher, dass Sie Zeitpläne nach Bedarf stornieren oder löschen können, und führen Sie Protokolle der Abfragen zu Prüfungs- und Berichtszwecken.
Bewährte Verfahren und Überlegungen
Vermeiden Sie Fehler und gehen Sie mit Redundanzen um. Einige Dinge, die es zu beachten gilt, sind unter anderem:
-
Redundanz vermeiden: Stellen Sie sicher, dass Abfragen eindeutige Daten anfordern. Stellen Sie sicher, dass es keine Überschneidungen mit zuvor gespeicherten Datenzeitstempeln gibt, und erstellen Sie nicht mehrere Zeitpläne für dieselbe Abfrage. Die Erstellung der Abfrage schlägt fehl, wenn die vorherige Abfrage noch ausgeführt wird.
-
Fehler protokollieren: Lassen Sie nicht zu, dass eine fehlgeschlagene Abfrage den gesamten Planungsmechanismus stoppt. Implementieren Sie eine umfassende Protokollierung, um Fehler beim Senden von Abfragen und beim Abrufen von Daten zu erfassen. Verarbeiten Sie die Fehlerdokumente, die Data Kiosk zurückgibt, und beheben Sie die darin enthaltenen Fehler.
-
Erneut versuchen: Wenn eine Abfrage durch die Beschränkung gleichzeitiger Abfragen gedrosselt wird, integrieren Sie Wiederholungsmechanismen, die exponentielle Backoffs verwenden.
-
Überwachen und warnen: Überwachen Sie in Echtzeit und richten Sie Fehlerwarnungen für fehlgeschlagene Abfragen, überschrittene Ratenlimits oder längere Verarbeitungszeiten ein. Identifizieren Sie Probleme schnell und reagieren Sie darauf.
Einzelheiten zu verschiedenen Fehlern und deren Behebung finden Sie unter Umgang mit Verarbeitungsfehlern.
Updated 23 days ago