Il servizio gestito da Amazon per Apache Flink era precedentemente noto come Analisi dei dati Amazon Kinesis per Apache Flink.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Tutorial: distribuzione di un notebook Studio come servizio gestito per l'applicazione Apache Flink con stato durevole
Il seguente tutorial mostra come implementare un notebook Studio come un'applicazione del servizio gestito per Apache Flink con stato durevole.
Questo tutorial contiene le sezioni seguenti:
Completamento dei prerequisiti
Crea un nuovo notebook Studio seguendo le istruzioniTutorial: crea un notebook Studio in Managed Service per Apache Flink, utilizzando Kinesis Data Streams MSK o Amazon. Assegna un nome al notebook Studio ExampleTestDeploy
.
Implementazione di un'applicazione con stato durevole utilizzando la AWS Management Console
Aggiungi una posizione del bucket S3 in cui desideri che il codice del pacchetto venga archiviato in Posizione del codice dell'applicazione (opzionale) nella console. Ciò consente di eseguire i passaggi necessari per implementare ed eseguire l'applicazione direttamente dal notebook.
Aggiungi le autorizzazioni necessarie al ruolo dell'applicazione per abilitare il ruolo che stai utilizzando per leggere e scrivere su un bucket Amazon S3 e per avviare un'applicazione del servizio gestito per Apache Flink:
Amazon S3 FullAccess
Amazon ha gestito- flinkFullAccess
Accesso alle fonti, alle destinazioni eVPCs, se applicabile. Per ulteriori informazioni, consulta Verifica IAM le autorizzazioni per i notebook Studio.
Utilizza il seguente codice di esempio:
%flink.ssql(type=update) CREATE TABLE exampleoutput ( 'ticket' VARCHAR, 'price' DOUBLE ) WITH ( 'connector' = 'kinesis', 'stream' = 'ExampleOutputStream', 'aws.region' = 'us-east-1', 'scan.stream.initpos' = 'LATEST', 'format' = 'json' );
INSERT INTO exampleoutput SELECT ticker, price FROM exampleinputstream
Con il lancio di questa funzionalità, vedrai un nuovo menu a discesa nell'angolo in alto a destra di ogni nota del notebook con il nome del notebook. Puoi eseguire le operazioni indicate di seguito:
Visualizza le impostazioni del notebook Studio nella AWS Management Console.
Crea una nota Zeppelin ed esportala in Amazon S3. A questo punto, fornisci un nome per l'applicazione e scegli Crea ed esporta. Riceverai una notifica al termine dell'esportazione.
Se necessario, puoi visualizzare ed eseguire eventuali test aggiuntivi sull'eseguibile in Amazon S3.
Una volta completata la compilazione, potrai implementare il codice come un'applicazione di streaming Kinesis con stato durevole e scalabilità automatica.
Dal menu a discesa, scegli Implementa nota Zeppelin come applicazione di streaming Kinesis. Controlla il nome dell'applicazione e scegli Distribuisci tramite AWS console.
Questo ti porterà alla AWS Management Console pagina per la creazione di un servizio gestito per l'applicazione Apache Flink. Tieni presente che il nome dell'applicazione, il parallelismo, la posizione del codice, il Glue DB predefinito VPC (se applicabile) e IAM i ruoli sono stati precompilati. Verifica che i IAM ruoli abbiano le autorizzazioni necessarie per le tue fonti e destinazioni. Gli snapshot sono abilitati per impostazione predefinita per la gestione dello stato durevole delle applicazioni.
Scegli Crea applicazione.
Puoi scegliere Configura e modificare qualsiasi impostazione, quindi scegli Esegui per avviare l'applicazione di streaming.
Implementazione di un'applicazione con stato durevole utilizzando la AWS CLI
Per distribuire un'applicazione utilizzando il AWS CLI, è necessario aggiornare il modello di servizio fornito con le informazioni relative AWS CLI alla Beta 2. Per informazioni sull'utilizzo del modello di servizio aggiornato, consulta Completa i prerequisiti.
Il codice di esempio seguente crea un nuovo notebook Studio:
aws kinesisanalyticsv2 create-application \ --application-name <app-name> \ --runtime-environment ZEPPELIN-FLINK-3_0 \ --application-mode INTERACTIVE \ --service-execution-role <iam-role> --application-configuration '{ "ZeppelinApplicationConfiguration": { "CatalogConfiguration": { "GlueDataCatalogConfiguration": { "DatabaseARN": "arn:aws:glue:us-east-1:<account>:database/<glue-database-name>" } } }, "FlinkApplicationConfiguration": { "ParallelismConfiguration": { "ConfigurationType": "CUSTOM", "Parallelism": 4, "ParallelismPerKPU": 4 } }, "DeployAsApplicationConfiguration": { "S3ContentLocation": { "BucketARN": "arn:aws:s3:::<s3bucket>", "BasePath": "/something/" } }, "VpcConfigurations": [ { "SecurityGroupIds": [ "<security-group>" ], "SubnetIds": [ "<subnet-1>", "<subnet-2>" ] } ] }' \ --region us-east-1
Il seguente esempio di codice avvia un notebook Studio:
aws kinesisanalyticsv2 start-application \ --application-name <app-name> \ --region us-east-1 \ --no-verify-ssl
Il codice seguente restituisce la pagina del URL notebook Apache Zeppelin di un'applicazione:
aws kinesisanalyticsv2 create-application-presigned-url \ --application-name <app-name> \ --url-type ZEPPELIN_UI_URL \ --region us-east-1 \ --no-verify-ssl