Abfragen mit Fenstern - Amazon-Kinesis-Data-Analytics für SQL-Anwendungen

Für neue Projekte empfehlen wir, den neuen Managed Service für Apache Flink Studio anstelle von Kinesis-Data-Analytics-for-SQL-Anwendungen zu verwenden. Der Managed Service für Apache Flink Studio kombiniert Benutzerfreundlichkeit mit fortschrittlichen Analysefunktionen, sodass Sie in wenigen Minuten anspruchsvolle Anwendungen zur Stream-Verarbeitung erstellen können.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Abfragen mit Fenstern

SQL-Abfragen in Ihrem Anwendungscode werden kontinuierlich über In-Application-Streams ausgeführt. Ein In-Application-Stream entspricht einer unbegrenzten Menge von Daten, die kontinuierlich durch Ihre Anwendung fließen. Um daher aus dieser kontinuierlich aktualisierten Eingabe Ergebnissätze zu erhalten, werden Abfragen häufig durch ein Fenster begrenzt, das auf Zeit- oder Zeilenbasis definiert wird. Diese Fenster werden auch als Fenster-SQL bezeichnet.

Für eine Abfrage mit einem Fenster auf Zeitbasis geben Sie die Fenstergröße in Bezug auf die Zeit an (beispielsweise ein Fenster von einer Minute). Dies erfordert in Ihrem In-Application-Stream eine Zeitstempelspalte, die gleichmäßig erhöht wird. (Der Zeitstempel für eine neue Zeile ist größer oder gleich groß wie der der vorherigen Zeile.) Amazon Kinesis Data Analytics stellt für jeden In-Application-Stream eine solche Zeitstempelspalte bereit; diese hat den Namen ROWTIME. Sie können diese Spalte verwenden, wenn Sie Abfragen auf Zeitbasis angeben. Für Ihre Anwendung wählen Sie möglicherweise eine andere Zeitstempeloption. Weitere Informationen finden Sie unter Zeitstempel und die ROWTIME-Spalte.

Bei einer Abfrage mit einem Fenster auf Zeilenbasis geben Sie die Größe des Fensters in Bezug auf die Anzahl der Zeilen an.

Sie können eine Abfrage so angeben, dass Datensätze in einem rollierenden, gleitenden oder versetzten Fenster verarbeitet werden, abhängig von den Anforderungen Ihrer Anwendung. Kinesis Data Analytics unterstützt die folgenden Fenstertypen:

  • Versetzte Fenster: Eine Abfrage, die Daten unter Verwendung zeitbasierter Fenster mit Schlüsseln aggregiert, die bei Erhalt der Daten geöffnet werden. Die Schlüssel ermöglichen die Nutzung mehrerer überlappender Fenster. Dies ist die empfohlene Methode, um Daten mithilfe von zeitbasierten Fenstern zu aggregieren, da Stagger Windows späte oder out-of-order Daten im Vergleich zu rollierenden Fenstern reduziert.

  • Rollierende Fenster: Eine Abfrage, die Daten unter Verwendung unterschiedlicher zeitbasierter Fenster aggregiert, die in regelmäßigen Abständen geöffnet und geschlossen werden.

  • Gleitende Fenster: Eine Abfrage, die Daten kontinuierlich unter Verwendung eines festen Zeit- oder eines rowcount-Intervalls aggregiert.