Amazon Managed Service für Apache Flink war zuvor als Amazon Kinesis Data Analytics für Apache Flink bekannt.
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.
Erstellen Sie ein Studio-Notebook mit Kinesis Data Streams
In diesem Tutorial wird beschrieben, wie Sie ein Studio-Notebook erstellen, das einen Kinesis Data Stream als Quelle verwendet.
Dieses Tutorial enthält die folgenden Abschnitte:
Erfüllen der Voraussetzungen
Bevor Sie ein Studio-Notebook erstellen, erstellen Sie einen Kinesis Data Stream (ExampleInputStream
). Ihre Anwendung verwendet diesen Stream als Anwendungsquelle.
Sie können diesen Stream mithilfe der Amazon Kinesis-Konsole oder des folgenden AWS CLI -Befehls erstellen. Anweisungen für die Konsole finden Sie unter Erstellen und Aktualisieren von Datenströmen im Amazon Kinesis Data Streams Entwicklerhandbuch. Benennen Sie den Stream ExampleInputStream
und legen Sie die Anzahl der offenen Shards auf 1
fest.
Verwenden Sie den folgenden Amazon Kinesis create-stream
AWS CLI Kinesis-Befehl AWS CLI, um den Stream (ExampleInputStream
) mit dem zu erstellen.
$ aws kinesis create-stream \ --stream-name ExampleInputStream \ --shard-count 1 \ --region us-east-1 \ --profile adminuser
Erstellen Sie eine Tabelle AWS Glue
Ihr Studio-Notebook verwendet eine AWS Glue-Datenbank für Metadaten zu Ihrer Kinesis Data Streams-Datenquelle.
Anmerkung
Sie können die Datenbank entweder zuerst manuell erstellen oder sie beim Erstellen des Notebooks von Managed Service für Apache Flink für Sie erstellen lassen. Ebenso können Sie die Tabelle entweder manuell erstellen, wie in diesem Abschnitt beschrieben, oder Sie können den Code zum Erstellen von Tabellenverbindern für Managed Service for Apache Flink in Ihrem Notizbuch innerhalb von Apache Zeppelin verwenden, um Ihre Tabelle über eine Anweisung zu erstellen. DDL Sie können dann einchecken AWS Glue , um sicherzustellen, dass die Tabelle korrekt erstellt wurde.
Erstellen einer Tabelle
Melden Sie sich bei der an AWS Management Console und öffnen Sie die AWS Glue Konsole unter https://console.aws.amazon.com/glue/
. Wenn Sie noch keine AWS Glue Datenbank haben, wählen Sie in der linken Navigationsleiste Datenbanken aus. Wählen Sie Datenbank hinzufügen. Geben Sie im Fenster Datenbank hinzufügen
default
als Namen der Datenbank ein. Wählen Sie Create (Erstellen) aus.Wählen Sie in der linken Navigationsleiste die Option Tabellen. Wählen Sie auf der Seite Tabellen die Optionen Tabellen hinzufügen, Tabelle manuell hinzufügen aus.
Geben Sie auf der Seite Eigenschaften Ihrer Tabelle einrichten
stock
als Tabellennamen ein. Stellen Sie sicher, dass Sie die Datenbank auswählen, die Sie zuvor erstellt haben. Wählen Sie Weiter.Wählen Sie auf der Seite Datenstore hinzufügen die Option Kinesis aus. Geben Sie als Streamnamen
ExampleInputStream
ein. Wählen Sie für Kinesis-Quelle URL die Eingabetastehttps://kinesis.us-east-1.amazonaws.com
. Wenn Sie die Kinesis-Quelle kopieren und einfügenURL, achten Sie darauf, alle führenden oder nachfolgenden Leerzeichen zu löschen. Wählen Sie Weiter.Wählen Sie auf der Seite Klassifikation die Option. JSON Wählen Sie Weiter.
Wählen Sie auf der Seite Schema definieren die Option „Spalte hinzufügen“, um eine Spalte hinzuzufügen. Fügen Sie Spalten mit den folgenden Eigenschaften hinzu:
Spaltenname Datentyp ticker
string
price
double
Wählen Sie Weiter.
Überprüfen Sie auf der nächsten Seite Ihre Einstellungen und wählen Sie Fertigstellen.
-
Wählen Sie die neu erstellte Tabelle aus der Liste der Tabellen aus.
-
Wählen Sie Tabelle bearbeiten und fügen Sie eine Eigenschaft mit dem Schlüssel
managed-flink.proctime
und dem Wertproctime
hinzu. -
Wählen Sie Apply (Anwenden) aus.
Erstellen Sie ein Studio-Notebook mit Kinesis Data Streams
Nachdem Sie die Ressourcen erstellt haben, die Ihre Anwendung verwendet, erstellen Sie Ihr Studio-Notebook.
Um Ihre Anwendung zu erstellen, können Sie entweder den AWS Management Console oder den verwenden AWS CLI.
Erstellen Sie ein Studio-Notizbuch mit dem AWS Management Console
Die Managed Service for Apache Flink-Konsole zu https://console.aws.amazon.com/managed-flink/Hause öffnen? region=us-east-1#/applications/dashboard
. Wählen Sie auf der Seite Managed Service für Apache Flink-Anwendungen die Registerkarte Studio aus. Wählen Sie Studio-Notebook erstellen.
Anmerkung
Sie können ein Studio-Notizbuch auch über die Amazon MSK - oder Kinesis Data Streams Streams-Konsolen erstellen, indem Sie Ihren MSK Amazon-Eingabe-Cluster oder Kinesis-Datenstream auswählen und Daten in Echtzeit verarbeiten auswählen.
Geben Sie auf der Seite Notebook-Instance erstellen folgende Informationen ein:
Geben Sie
MyNotebook
als Namen des Notebooks ein.Wählen Sie Standard für die AWS -Glue-Datenbank.
Wählen Sie Studio-Notebook erstellen.
Wählen Sie auf der MyNotebookSeite „Ausführen“ aus. Warten Sie, bis der Status Wird ausgeführt angezeigt wird. Es fallen Gebühren an, wenn das Notebook läuft.
Erstellen Sie ein Studio-Notizbuch mit dem AWS CLI
Gehen Sie wie folgt vor AWS CLI, um Ihr Studio-Notizbuch mit dem zu erstellen:
Überprüfen Sie die Konto-ID. Sie benötigen diesen Wert, um die Anwendung zu erstellen.
Erstellen Sie die Rolle
arn:aws:iam::
und fügen Sie der automatisch erstellten Rolle über die Konsole die folgenden Berechtigungen hinzu.AccountID
:role/ZeppelinRole"kinesis:GetShardIterator",
"kinesis:GetRecords",
"kinesis:ListShards"
Erstellen Sie eine Datei mit dem Namen
create.json
und den folgenden Inhalten. Ersetzen Sie die Platzhalterwerte durch Ihre Informationen.{ "ApplicationName": "MyNotebook", "RuntimeEnvironment": "ZEPPELIN-FLINK-3_0", "ApplicationMode": "INTERACTIVE", "ServiceExecutionRole": "arn:aws:iam::
AccountID
:role/ZeppelinRole", "ApplicationConfiguration": { "ApplicationSnapshotConfiguration": { "SnapshotsEnabled": false }, "ZeppelinApplicationConfiguration": { "CatalogConfiguration": { "GlueDataCatalogConfiguration": { "DatabaseARN": "arn:aws:glue:us-east-1:AccountID
:database/default" } } } } }Um Ihre Anwendung zu erstellen, führen Sie den folgenden Befehl aus.
aws kinesisanalyticsv2 create-application --cli-input-json file://create.json
Wenn der Befehl abgeschlossen ist, sehen Sie eine Ausgabe, die die Details für Ihr neues Studio-Notebook enthält. Es folgt ein Beispiel für die Ausgabe.
{ "ApplicationDetail": { "ApplicationARN": "arn:aws:kinesisanalyticsus-east-1:012345678901:application/MyNotebook", "ApplicationName": "MyNotebook", "RuntimeEnvironment": "ZEPPELIN-FLINK-3_0", "ApplicationMode": "INTERACTIVE", "ServiceExecutionRole": "arn:aws:iam::012345678901:role/ZeppelinRole", ...
Um Ihre Anwendung zu starten, führen Sie den folgenden Befehl aus. Ersetzen Sie die Beispielwerte durch Ihre Konto-ID.
aws kinesisanalyticsv2 start-application --application-arn arn:aws:kinesisanalyticsus-east-1:
012345678901
:application/MyNotebook\
Senden von Daten an den Kinesis Data Stream
Gehen Sie wie folgt vor, um Testdaten an Ihren Kinesis Data Stream zu senden:
Öffnen Sie den Kinesis Data Generator
. Wählen Sie „Cognito-Benutzer erstellen mit CloudFormation“.
Die AWS CloudFormation Konsole wird mit der Kinesis Data Generator-Vorlage geöffnet. Wählen Sie Weiter.
Auf der Seite Festlegen von Komponentendetails geben Sie den Benutzernamen und das Passwort für Ihren Cognito-Benutzer ein. Wählen Sie Weiter.
Wählen Sie auf der Seite Stack-Optionen konfigurieren Weiter aus.
Wählen Sie auf der Seite Kinesis-Data-Generator-Cognito-User überprüfen die Option Ich bestätige, dass möglicherweise Ressourcen erstellt werden. AWS CloudFormation IAM Kontrollkästchen. Wählen Sie Stapel erstellen aus.
Warten Sie, bis der AWS CloudFormation Stapel fertig erstellt ist. Wenn der Stack abgeschlossen ist, öffnen Sie den Kinesis-Data-Generator-Cognito-User-Stack in der Konsole und wählen Sie die Registerkarte Outputs. AWS CloudFormation Öffnen Sie den für den Ausgabewert aufgelisteten Wert. URL KinesisDataGeneratorUrl
Melden Sie sich auf der Amazon Kinesis Data Generator-Seite mit den Anmeldeinformationen an, die Sie in Schritt 4 erstellt haben.
Geben Sie auf der nächsten Seite die folgenden Werte an:
Region us-east-1
Bach/Firehose-Stream ExampleInputStream
Aufzeichnungen pro Sekunde 1
Fügen Sie für Datensatzvorlage den folgenden Code ein:
{ "ticker": "{{random.arrayElement( ["AMZN","MSFT","GOOG"] )}}", "price": {{random.number( { "min":10, "max":150 } )}} }
Wählen Sie Daten senden aus.
Der Generator sendet Daten an den Kinesis Data Stream.
Lassen Sie den Generator laufen, während Sie den nächsten Abschnitt abschließen.
Testen Sie Ihr Studio-Notebook
In diesem Abschnitt verwenden Sie Ihr Studio-Notebook, um Daten aus Ihrem Kinesis Data Stream abzufragen.
Die Managed Service for Apache Flink-Konsole zu https://console.aws.amazon.com/managed-flink/Hause öffnen? region=us-east-1#/applications/dashboard
. Wählen Sie auf der Seite Managed Service für Apache Flink-Anwendungen die Registerkarte Studio-Notebook aus. Wählen Sie. MyNotebook
Wählen Sie MyNotebookauf der Seite „In Apache Zeppelin öffnen“.
Die Oberfläche von Apache Zeppelin wird in einer neuen Registerkarte geöffnet.
Auf der Seite Willkommen bei Zeppelin! wählen Sie Zeppelin Notiz aus.
Geben Sie auf der Seite Zeppelin Notiz die folgende Abfrage in eine neue Notiz ein:
%flink.ssql(type=update) select * from stock
Wählen Sie das Ausführungssymbol.
Nach kurzer Zeit werden in der Notiz Daten aus dem Kinesis Data Stream angezeigt.
Um das Apache Flink-Dashboard für Ihre Anwendung zu öffnen und betriebliche Aspekte anzuzeigen, wählen Sie. FLINKJOB Weitere Informationen zum Flink-Dashboard finden Sie unter Apache Flink-Dashboard im Managed Service für Apache Flink Entwicklerhandbuch.
Weitere Beispiele für Flink SQL Streaming-Abfragen finden Sie unter Abfragen