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.
Tópicos
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" } } } }