Exemplo de código de API para o Managed Service for Apache Flink - Managed Service for Apache Flink

Anteriormente, o Amazon Managed Service for Apache Flink (Amazon MSF) era conhecido como Amazon Kinesis Data Analytics for Apache Flink.

Exemplo de código de API para o Managed Service for Apache Flink

Este tópico contém exemplos de blocos de solicitação para ações no Managed Service for Apache Flink.

Para usar JSON como entrada para uma ação com o AWS Command Line Interface (AWS CLI), salve a solicitação em um arquivo JSON. Em seguida, passe o nome do arquivo para a ação usando o parâmetro --cli-input-json.

O exemplo a seguir demonstra como usar um arquivo JSON com uma ação.

$ aws kinesisanalyticsv2 start-application --cli-input-json file://start.json

Para obter mais informações sobre como usar o JSON com AWS CLI, consulte Gerar parâmetros JSON do esqueleto da CLI e da entrada da CLI no Guia do usuário AWS Command Line Interface.

AddApplicationCloudWatchLoggingOption

O exemplo de código de solicitação a seguir para a ação AddApplicationCloudWatchLoggingOption adiciona uma opção de Amazon CloudWatch Logs a um aplicativo do Managed Service for Apache Flink:

{ "ApplicationName": "MyApplication", "CloudWatchLoggingOption": { "LogStreamARN": "arn:aws:logs:us-east-1:123456789123:log-group:my-log-group:log-stream:My-LogStream" }, "CurrentApplicationVersionId": 2 }

AddApplicationInput

O exemplo de código de solicitação a seguir para a ação AddApplicationInput adiciona uma entrada de aplicativo ao aplicativo do Managed Service for Apache Flink:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 2, "Input": { "InputParallelism": { "Count": 2 }, "InputSchema": { "RecordColumns": [ { "Mapping": "$.TICKER", "Name": "TICKER_SYMBOL", "SqlType": "VARCHAR(50)" }, { "SqlType": "REAL", "Name": "PRICE", "Mapping": "$.PRICE" } ], "RecordEncoding": "UTF-8", "RecordFormat": { "MappingParameters": { "JSONMappingParameters": { "RecordRowPath": "$" } }, "RecordFormatType": "JSON" } }, "KinesisStreamsInput": { "ResourceARN": "arn:aws:kinesis:us-east-1:012345678901:stream/ExampleInputStream" } } }

AddApplicationInputProcessingConfiguration

O exemplo de código de solicitação a seguir para a ação AddApplicationInputProcessingConfiguration adiciona uma configuração de processamento de entrada de aplicativo ao aplicativo do Managed Service for Apache Flink:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 2, "InputId": "2.1", "InputProcessingConfiguration": { "InputLambdaProcessor": { "ResourceARN": "arn:aws:lambda:us-east-1:012345678901:function:MyLambdaFunction" } } }

AddApplicationOutput

O exemplo de código de solicitação a seguir para a ação AddApplicationOutput adiciona o fluxo de dados Kinesis como uma saída de aplicativo ao aplicativo do Managed Service for Apache Flink:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 2, "Output": { "DestinationSchema": { "RecordFormatType": "JSON" }, "KinesisStreamsOutput": { "ResourceARN": "arn:aws:kinesis:us-east-1:012345678901:stream/ExampleOutputStream" }, "Name": "DESTINATION_SQL_STREAM" } }

AddApplicationReferenceDataSource

O exemplo de código de solicitação a seguir para a ação AddApplicationReferenceDataSource adiciona uma fonte de dados de referência do aplicativo CVS ao aplicativo do Managed Service for Apache Flink:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 5, "ReferenceDataSource": { "ReferenceSchema": { "RecordColumns": [ { "Mapping": "$.TICKER", "Name": "TICKER", "SqlType": "VARCHAR(4)" }, { "Mapping": "$.COMPANYNAME", "Name": "COMPANY_NAME", "SqlType": "VARCHAR(40)" }, ], "RecordEncoding": "UTF-8", "RecordFormat": { "MappingParameters": { "CSVMappingParameters": { "RecordColumnDelimiter": " ", "RecordRowDelimiter": "\r\n" } }, "RecordFormatType": "CSV" } }, "S3ReferenceDataSource": { "BucketARN": "arn:aws:s3:::amzn-s3-demo-bucket", "FileKey": "TickerReference.csv" }, "TableName": "string" } }

AddApplicationVpcConfiguration

O exemplo de código de solicitação a seguir para a ação AddApplicationVpcConfiguration adiciona uma configuração de VPC a uma aplicativo existente:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 9, "VpcConfiguration": { "SecurityGroupIds": [ "sg-0123456789abcdef0" ], "SubnetIds": [ "subnet-0123456789abcdef0" ] } }

CreateApplication

O exemplo de código de solicitação a seguir para a ação CreateApplication cria um aplicativo do Managed Service para Apache Flink:

{ "ApplicationName":"MyApplication", "ApplicationDescription":"My-Application-Description", "RuntimeEnvironment":"FLINK-1_15", "ServiceExecutionRole":"arn:aws:iam::123456789123:role/myrole", "CloudWatchLoggingOptions":[ { "LogStreamARN":"arn:aws:logs:us-east-1:123456789123:log-group:my-log-group:log-stream:My-LogStream" } ], "ApplicationConfiguration": { "EnvironmentProperties": {"PropertyGroups": [ {"PropertyGroupId": "ConsumerConfigProperties", "PropertyMap": {"aws.region": "us-east-1", "flink.stream.initpos": "LATEST"} }, {"PropertyGroupId": "ProducerConfigProperties", "PropertyMap": {"aws.region": "us-east-1"} }, ] }, "ApplicationCodeConfiguration":{ "CodeContent":{ "S3ContentLocation":{ "BucketARN":"arn:aws:s3:::amzn-s3-demo-bucket", "FileKey":"myflink.jar", "ObjectVersion":"AbCdEfGhIjKlMnOpQrStUvWxYz12345" } }, "CodeContentType":"ZIPFILE" }, "FlinkApplicationConfiguration":{ "ParallelismConfiguration":{ "ConfigurationType":"CUSTOM", "Parallelism":2, "ParallelismPerKPU":1, "AutoScalingEnabled":true } } } }

CreateApplicationSnapshot

O exemplo de código de solicitação a seguir para a ação CreateApplicationSnapshot cria um snapshot do estado do aplicativo:

{ "ApplicationName": "MyApplication", "SnapshotName": "MySnapshot" }

DeleteApplication

O exemplo de código de solicitação a seguir para a ação DeleteApplication exclui um aplicativo do Managed Service para Apache Flink:

{"ApplicationName": "MyApplication", "CreateTimestamp": 12345678912}

DeleteApplicationCloudWatchLoggingOption

O exemplo de código de solicitação a seguir para a ação DeleteApplicationCloudWatchLoggingOption exclui uma opção do Amazon CloudWatch Log do Managed Service para Apache Flink:

{ "ApplicationName": "MyApplication", "CloudWatchLoggingOptionId": "3.1" "CurrentApplicationVersionId": 3 }

DeleteApplicationInputProcessingConfiguration

O exemplo de código de solicitação a seguir para a ação DeleteApplicationInputProcessingConfiguration exclui uma configuração de processamento de entrada de um aplicativo do Managed Service para Apache Flink:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 4, "InputId": "2.1" }

DeleteApplicationOutput

O exemplo de código de solicitação a seguir para a ação DeleteApplicationOutput exclui uma saída de aplicativo de um aplicativo do Managed Service para Apache Flink:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 4, "OutputId": "4.1" }

DeleteApplicationReferenceDataSource

O exemplo de código de solicitação a seguir para a ação DeleteApplicationReferenceDataSource exclui uma fonte de dados de referência de aplicativo de um aplicativo do Managed Service para Apache Flink:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 5, "ReferenceId": "5.1" }

DeleteApplicationSnapshot

O exemplo de código de solicitação a seguir para a ação DeleteApplicationSnapshot exclui um snapshot do estado do aplicativo:

{ "ApplicationName": "MyApplication", "SnapshotCreationTimestamp": 12345678912, "SnapshotName": "MySnapshot" }

DeleteApplicationVpcConfiguration

O exemplo de código de solicitação a seguir para a ação DeleteApplicationVpcConfiguration exclui uma configuração de VPC existente de um aplicativo:

{ "ApplicationName": "MyApplication", "CurrentApplicationVersionId": 9, "VpcConfigurationId": "1.1" }

DescribeApplication

O exemplo de código de solicitação a seguir para a ação DescribeApplication apresenta detalhes sobre um aplicativo do Managed Service para Apache Flink:

{"ApplicationName": "MyApplication"}

DescribeApplicationSnapshot

O exemplo de código de solicitação a seguir para a ação DescribeApplicationSnapshot apresenta detalhes sobre um snapshot de estado de aplicativo:

{ "ApplicationName": "MyApplication", "SnapshotName": "MySnapshot" }

DiscoverInputSchema

O exemplo de código de solicitação a seguir para a ação DiscoverInputSchema gera um esquema de uma fonte de transmissão:

{ "InputProcessingConfiguration": { "InputLambdaProcessor": { "ResourceARN": "arn:aws:lambda:us-east-1:012345678901:function:MyLambdaFunction" } }, "InputStartingPositionConfiguration": { "InputStartingPosition": "NOW" }, "ResourceARN": "arn:aws:kinesis:us-east-1:012345678901:stream/ExampleInputStream", "S3Configuration": { "BucketARN": "string", "FileKey": "string" }, "ServiceExecutionRole": "string" }

O exemplo de código de solicitação a seguir para a ação DiscoverInputSchema gera um esquema de uma fonte de referência:

{ "S3Configuration": { "BucketARN": "arn:aws:s3:::amzn-s3-demo-bucket", "FileKey": "TickerReference.csv" }, "ServiceExecutionRole": "arn:aws:iam::123456789123:role/myrole" }

ListApplications

O exemplo de código de solicitação a seguir para a ação ListApplications retorna uma lista de aplicativos do Managed Service for Apache Flink em sua conta:

{ "ExclusiveStartApplicationName": "MyApplication", "Limit": 50 }

ListApplicationSnapshots

O exemplo de código de solicitação a seguir para a ação ListApplicationSnapshots retorna uma lista de snapshots do estado do aplicativo:

{"ApplicationName": "MyApplication", "Limit": 50, "NextToken": "aBcDeFgHiJkLmNoPqRsTuVwXyZ0123" }

StartApplication

O exemplo de código de solicitação a seguir para a ação StartApplication inicia um aplicativo Managed Service for Apache Flink e carrega o estado do aplicativo a partir do snapshot mais recente (se houver):

{ "ApplicationName": "MyApplication", "RunConfiguration": { "ApplicationRestoreConfiguration": { "ApplicationRestoreType": "RESTORE_FROM_LATEST_SNAPSHOT" } } }

StopApplication

O exemplo de código de solicitação a seguir para a ação API_StopApplication interrompe um aplicativo do Managed Service para Apache Flink:

{"ApplicationName": "MyApplication"}

UpdateApplication

O exemplo de código de solicitação a seguir para a ação UpdateApplication atualiza um aplicativo Managed Service for Apache Flink para alterar a localização do código do aplicativo:

{"ApplicationName": "MyApplication", "CurrentApplicationVersionId": 1, "ApplicationConfigurationUpdate": { "ApplicationCodeConfigurationUpdate": { "CodeContentTypeUpdate": "ZIPFILE", "CodeContentUpdate": { "S3ContentLocationUpdate": { "BucketARNUpdate": "arn:aws:s3:::amzn-s3-demo-bucket", "FileKeyUpdate": "my_new_code.zip", "ObjectVersionUpdate": "2" } } } }