Beispiel: Hinzufügen von Referenzdaten zu einer Kinesis Data Analytics-Anwendung - Entwicklerhandbuch für Amazon Kinesis Data Analytics for SQL Applications

Nach reiflicher Überlegung haben wir beschlossen, Amazon Kinesis Data Analytics für SQL Anwendungen in zwei Schritten einzustellen:

1. Ab dem 15. Oktober 2025 können Sie keine neuen Kinesis Data Analytics für SQL Anwendungen erstellen.

2. Wir werden Ihre Anwendungen ab dem 27. Januar 2026 löschen. Sie können Ihre Amazon Kinesis Data Analytics for SQL Applications weder starten noch betreiben. SQLAb diesem Zeitpunkt ist kein Support mehr für Amazon Kinesis Data Analytics verfügbar. Weitere Informationen finden Sie unter Einstellung von Amazon Kinesis Data Analytics for SQL Applications.

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.

Beispiel: Hinzufügen von Referenzdaten zu einer Kinesis Data Analytics-Anwendung

In dieser Übung fügen Sie Referenzdaten zu einer vorhandenen Kinesis Data Analytics-Anwendung hinzu. Weitere Informationen zu Referenzdaten finden Sie in den folgenden Themen:

In diesem Beispiel fügen Sie Referenzdaten zu der Anwendung hinzu, die Sie in der Erste Schritte-Übung zu Kinesis Data Analytics erstellt haben. Die Referenzdaten stellen den Firmennamen für die einzelnen Tickersymbole bereit. Beispiel:

Ticker, Company AMZN,Amazon ASD, SomeCompanyA MMB, SomeCompanyB WAS, SomeCompanyC

Führen Sie zunächst die Schritte in der Übung Erste Schritte aus, um eine Starter-Anwendung zu erstellen. Anschließend befolgen Sie diese Schritte, um Referenzdaten einzurichten und diese Ihrer Anwendung hinzuzufügen:

  1. Vorbereitung der Daten

    • Speichern Sie die vorherigen Referenzdaten als Objekt in Amazon Simple Storage Service (Amazon S3).

    • Erstellen Sie eine IAM-Rolle, die Kinesis Data Analytics annehmen kann, um das S3-Objekt in Ihrem Namen zu lesen.

  2. Fügen Sie Ihrer Anwendung die Referenzdatenquelle hinzu.

    Kinesis Data Analytics liest das Amazon S3-Objekt und erstellt eine In-Application-Referenztabelle, die Sie in Ihrem Anwendungs-Code abfragen können.

  3. Testen Sie den Code.

    In Ihrem Anwendungscode schreiben Sie eine Join-Abfrage, um den In-Application-Stream mit der In-Application-Referenztabelle zusammenzuführen, um Firmennamen für die einzelnen Tickersymbol zu erhalten.

Schritt 1: Vorbereiten

In diesem Abschnitt speichern Sie Beispielreferenzdaten als Objekt in einem Amazon S3 Bucket. Sie erstellen darüber hinaus eine IAM-Rolle, die Kinesis Data Analytics annehmen kann, um das Objekt in Ihrem Namen zu lesen.

Speichern von Referenzdaten als Amazon S3-Objekt

In diesem Schritt speichern Sie die Beispielreferenzdaten als Amazon S3-Objekt.

  1. Öffnen Sie einen Text-Editor, fügen Sie die folgenden Daten hinzu und speichern Sie die Datei als TickerReference.csv.

    Ticker, Company AMZN,Amazon ASD, SomeCompanyA MMB, SomeCompanyB WAS, SomeCompanyC

  2. Laden Sie die Datei TickerReference.csv in Ihren S3-Bucket hoch. Weitere Anleitungen finden Sie unter Upload eines Objekts zu Amazon S3 im Benutzerhandbuch für Amazon Simple Storage Service.

Erstellen einer IAM-Rolle

Als Nächstes erstellen Sie eine IAM-Rolle, die Kinesis Data Analytics annehmen kann und lesen das Amazon S3-Objekt ein.

  1. Erstellen Sie in AWS Identity and Access Management eine IAM-Rolle mit dem Namen KinesisAnalytics-ReadS3Object. Folgen Sie beim Erstellen einer Rolle den Anweisungen unter Erstellen einer Rolle für einen Amazon-Service (AWS Management Console) im IAM-Benutzerhandbuch.

    Geben Sie in der IAM-Konsole Folgendes an:

    • Wählen Sie unter Rollentyp auswählen die Option AWS Lambda. Nach dem Erstellen der Rolle ändern Sie die Vertrauensrichtlinie, um Kinesis Data Analytics (nicht AWS Lambda) die Annahme der Rolle zu ermöglichen.

    • Fügen Sie auf der Seite Attach Policy keine Richtlinie hinzu.

  2. Aktualisieren Sie die IAM-Rollenrichtlinien:

    1. Wählen Sie in der IAM-Konsole die von Ihnen erstellte Rolle aus.

    2. Aktualisieren Sie auf der Registerkarte Vertrauensstellungen die Vertrauensrichtlinie, um Kinesis Data Analytics die Berechtigung für die Annahme der Rolle zu gewähren. Die Vertrauensrichtlinie wird im Folgenden angezeigt:

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "kinesisanalytics.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    3. Fügen Sie auf der Registerkarte Berechtigungen eine von Amazon verwaltete Richtlinie namens AmazonS3ReadOnlyAccess hinzu. Damit gewähren Sie der Rolle Berechtigungen für das Lesen von Amazon S3-Objekten. Diese Richtlinie wird im Folgenden angezeigt:

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": "*" } ] }

Schritt 2: Hinzufügen der Referenzdatenquelle zur Anwendungskonfiguration

Bei diesem Schritt fügen Sie Ihrer Anwendungskonfiguration eine Referenzdatenquelle hinzu. Um beginnen zu können, benötigen Sie die folgenden Informationen:

  • Den Namen Ihres S3-Buckets und den Namen des Objektschlüssels

  • Der Amazon-Ressourcenname (ARN) der IAM-Rolle

  1. Wählen Sie auf der Hauptseite der Anwendung Connect reference data (Referenzdaten verbinden) aus.

  2. Wählen Sie auf der Seite Referenzdatenquelle verbinden den Amazon S3 Bucket mit Ihrem Referenzdatenobjekt aus. Geben Sie dann den Schlüsselnamen des Objekts ein.

  3. Geben Sie CompanyName als Namen der In-Application-Referenztabelle ein.

  4. Wählen Sie im Bereich Access to chosen resources (Zugriff auf ausgewählte Ressourcen) die Option Choose from IAM roles that Kinesis Analytics can assume (IAM-Rollen wählen, die Kinesis Analytics annehmen kann). Wählen Sie dann die von Ihnen im vorherigen Abschnitt erstellte IAM-Rolle KinesisAnalytics-ReadS3Object aus.

  5. Klicken Sie auf Discover schema (Schema erkennen). Die Konsole erkennt in den Referenzdaten zwei Spalten.

  6. Klicken Sie auf Save and close.

Schritt 3: Test: Abfragen der In-Application-Referenztabelle

Sie können nun die In-Application-Referenztabelle CompanyName abfragen. Sie können die Referenzdaten verwenden, um Ihre Anwendung zu erweitern, indem Sie die Tickerpreisdaten mit der Referenztabelle zusammenführen. Das Ergebnis zeigt den Firmennamen an.

  1. Ersetzen Sie den Anwendungscode durch den folgenden Code. Die Abfrage führt den In-Application-Eingabe-Stream mit der In-Application-Referenztabelle zusammen. Der Anwendungscode schreibt die Ergebnisse in einen anderen In-Application-Stream, DESTINATION_SQL_STREAM.

    CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" (ticker_symbol VARCHAR(4), "Company" varchar(20), sector VARCHAR(12), change DOUBLE, price DOUBLE); CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM" SELECT STREAM ticker_symbol, "c"."Company", sector, change, price FROM "SOURCE_SQL_STREAM_001" LEFT JOIN "CompanyName" as "c" ON "SOURCE_SQL_STREAM_001".ticker_symbol = "c"."Ticker";
  2. Überprüfen Sie, ob die Anwendungsausgabe auf der Registerkarte SQLResults angezeigt wird. Stellen Sie sicher, dass einige Zeilen Firmennamen anzeigen (nicht alle Beispielreferenzdaten besitzen Firmennamen).