

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# UpdateApplication
<a name="API_UpdateApplication"></a>

更新現有的 Managed Service for Apache Flink 應用程式。使用此操作，您可以更新應用程式碼、輸入組態和輸出組態。

Managed Service for Apache Flink 會`ApplicationVersionId`在每次更新應用程式時更新。

## 請求語法
<a name="API_UpdateApplication_RequestSyntax"></a>

```
{
   "ApplicationConfigurationUpdate": { 
      "ApplicationCodeConfigurationUpdate": { 
         "CodeContentTypeUpdate": "string",
         "CodeContentUpdate": { 
            "S3ContentLocationUpdate": { 
               "BucketARNUpdate": "string",
               "FileKeyUpdate": "string",
               "ObjectVersionUpdate": "string"
            },
            "TextContentUpdate": "string",
            "ZipFileContentUpdate": blob
         }
      },
      "ApplicationEncryptionConfigurationUpdate": { 
         "KeyIdUpdate": "string",
         "KeyTypeUpdate": "string"
      },
      "ApplicationSnapshotConfigurationUpdate": { 
         "SnapshotsEnabledUpdate": boolean
      },
      "ApplicationSystemRollbackConfigurationUpdate": { 
         "RollbackEnabledUpdate": boolean
      },
      "EnvironmentPropertyUpdates": { 
         "PropertyGroups": [ 
            { 
               "PropertyGroupId": "string",
               "PropertyMap": { 
                  "string" : "string" 
               }
            }
         ]
      },
      "FlinkApplicationConfigurationUpdate": { 
         "CheckpointConfigurationUpdate": { 
            "CheckpointingEnabledUpdate": boolean,
            "CheckpointIntervalUpdate": number,
            "ConfigurationTypeUpdate": "string",
            "MinPauseBetweenCheckpointsUpdate": number
         },
         "MonitoringConfigurationUpdate": { 
            "ConfigurationTypeUpdate": "string",
            "LogLevelUpdate": "string",
            "MetricsLevelUpdate": "string"
         },
         "ParallelismConfigurationUpdate": { 
            "AutoScalingEnabledUpdate": boolean,
            "ConfigurationTypeUpdate": "string",
            "ParallelismPerKPUUpdate": number,
            "ParallelismUpdate": number
         }
      },
      "SqlApplicationConfigurationUpdate": { 
         "InputUpdates": [ 
            { 
               "InputId": "string",
               "InputParallelismUpdate": { 
                  "CountUpdate": number
               },
               "InputProcessingConfigurationUpdate": { 
                  "InputLambdaProcessorUpdate": { 
                     "ResourceARNUpdate": "string"
                  }
               },
               "InputSchemaUpdate": { 
                  "RecordColumnUpdates": [ 
                     { 
                        "Mapping": "string",
                        "Name": "string",
                        "SqlType": "string"
                     }
                  ],
                  "RecordEncodingUpdate": "string",
                  "RecordFormatUpdate": { 
                     "MappingParameters": { 
                        "CSVMappingParameters": { 
                           "RecordColumnDelimiter": "string",
                           "RecordRowDelimiter": "string"
                        },
                        "JSONMappingParameters": { 
                           "RecordRowPath": "string"
                        }
                     },
                     "RecordFormatType": "string"
                  }
               },
               "KinesisFirehoseInputUpdate": { 
                  "ResourceARNUpdate": "string"
               },
               "KinesisStreamsInputUpdate": { 
                  "ResourceARNUpdate": "string"
               },
               "NamePrefixUpdate": "string"
            }
         ],
         "OutputUpdates": [ 
            { 
               "DestinationSchemaUpdate": { 
                  "RecordFormatType": "string"
               },
               "KinesisFirehoseOutputUpdate": { 
                  "ResourceARNUpdate": "string"
               },
               "KinesisStreamsOutputUpdate": { 
                  "ResourceARNUpdate": "string"
               },
               "LambdaOutputUpdate": { 
                  "ResourceARNUpdate": "string"
               },
               "NameUpdate": "string",
               "OutputId": "string"
            }
         ],
         "ReferenceDataSourceUpdates": [ 
            { 
               "ReferenceId": "string",
               "ReferenceSchemaUpdate": { 
                  "RecordColumns": [ 
                     { 
                        "Mapping": "string",
                        "Name": "string",
                        "SqlType": "string"
                     }
                  ],
                  "RecordEncoding": "string",
                  "RecordFormat": { 
                     "MappingParameters": { 
                        "CSVMappingParameters": { 
                           "RecordColumnDelimiter": "string",
                           "RecordRowDelimiter": "string"
                        },
                        "JSONMappingParameters": { 
                           "RecordRowPath": "string"
                        }
                     },
                     "RecordFormatType": "string"
                  }
               },
               "S3ReferenceDataSourceUpdate": { 
                  "BucketARNUpdate": "string",
                  "FileKeyUpdate": "string"
               },
               "TableNameUpdate": "string"
            }
         ]
      },
      "VpcConfigurationUpdates": [ 
         { 
            "SecurityGroupIdUpdates": [ "string" ],
            "SubnetIdUpdates": [ "string" ],
            "VpcConfigurationId": "string"
         }
      ],
      "ZeppelinApplicationConfigurationUpdate": { 
         "CatalogConfigurationUpdate": { 
            "GlueDataCatalogConfigurationUpdate": { 
               "DatabaseARNUpdate": "string"
            }
         },
         "CustomArtifactsConfigurationUpdate": [ 
            { 
               "ArtifactType": "string",
               "MavenReference": { 
                  "ArtifactId": "string",
                  "GroupId": "string",
                  "Version": "string"
               },
               "S3ContentLocation": { 
                  "BucketARN": "string",
                  "FileKey": "string",
                  "ObjectVersion": "string"
               }
            }
         ],
         "DeployAsApplicationConfigurationUpdate": { 
            "S3ContentLocationUpdate": { 
               "BasePathUpdate": "string",
               "BucketARNUpdate": "string"
            }
         },
         "MonitoringConfigurationUpdate": { 
            "LogLevelUpdate": "string"
         }
      }
   },
   "ApplicationName": "string",
   "CloudWatchLoggingOptionUpdates": [ 
      { 
         "CloudWatchLoggingOptionId": "string",
         "LogStreamARNUpdate": "string"
      }
   ],
   "ConditionalToken": "string",
   "CurrentApplicationVersionId": number,
   "RunConfigurationUpdate": { 
      "ApplicationRestoreConfiguration": { 
         "ApplicationRestoreType": "string",
         "SnapshotName": "string"
      },
      "FlinkRunConfiguration": { 
         "AllowNonRestoredState": boolean
      }
   },
   "RuntimeEnvironmentUpdate": "string",
   "ServiceExecutionRoleUpdate": "string"
}
```

## 請求參數
<a name="API_UpdateApplication_RequestParameters"></a>

請求接受採用 JSON 格式的下列資料。

 ** [ApplicationConfigurationUpdate](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-ApplicationConfigurationUpdate"></a>
描述應用程式組態更新。  
類型：[ApplicationConfigurationUpdate](API_ApplicationConfigurationUpdate.md) 物件  
必要：否

 ** [ApplicationName](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-ApplicationName"></a>
欲更新的應用程式名稱。  
類型：字串  
長度限制：長度下限為 1。長度上限為 128。  
模式：`[a-zA-Z0-9_.-]+`  
必要：是

 ** [CloudWatchLoggingOptionUpdates](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-CloudWatchLoggingOptionUpdates"></a>
描述應用程式 Amazon CloudWatch 記錄選項更新。您只能使用此動作更新現有的 CloudWatch 記錄選項。若要新增 CloudWatch 記錄選項，請使用 [AddApplicationCloudWatchLoggingOption](API_AddApplicationCloudWatchLoggingOption.md)。  
類型：[CloudWatchLoggingOptionUpdate](API_CloudWatchLoggingOptionUpdate.md) 物件陣列  
必要：否

 ** [ConditionalToken](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-ConditionalToken"></a>
用於實作強並行以進行應用程式更新的值。您必須提供 `CurrentApplicationVersionId`或 `ConditionalToken`。您可以使用 取得應用程式的目前 `ConditionalToken` [DescribeApplication](API_DescribeApplication.md)。若要獲得更好的並行支援，請使用 `ConditionalToken` 參數，而非 `CurrentApplicationVersionId`。  
類型：字串  
長度限制：長度下限為 1。長度上限為 512。  
模式：`[a-zA-Z0-9-_+/=]+`  
必要：否

 ** [CurrentApplicationVersionId](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-CurrentApplicationVersionId"></a>
目前的應用程式版本 ID。您必須提供 `CurrentApplicationVersionId`或 `ConditionalToken`。您可以使用 擷取應用程式版本 ID[DescribeApplication](API_DescribeApplication.md)。若要獲得更好的並行支援，請使用 `ConditionalToken` 參數，而非 `CurrentApplicationVersionId`。  
類型：Long  
有效範圍：最小值為 1。最大值為 999999999。  
必要：否

 ** [RunConfigurationUpdate](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-RunConfigurationUpdate"></a>
描述應用程式啟動參數的更新。  
類型：[RunConfigurationUpdate](API_RunConfigurationUpdate.md) 物件  
必要：否

 ** [RuntimeEnvironmentUpdate](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-RuntimeEnvironmentUpdate"></a>
更新用來執行程式碼的 Managed Service for Apache Flink 執行時間環境。若要避免問題，您必須：  
+ 確保您的新 jar 和相依性與選取的新執行時間相容。
+ 確保您的新程式碼的狀態與應用程式將從中啟動的快照相容
類型：字串  
有效值:`SQL-1_0 | FLINK-1_6 | FLINK-1_8 | ZEPPELIN-FLINK-1_0 | FLINK-1_11 | FLINK-1_13 | ZEPPELIN-FLINK-2_0 | FLINK-1_15 | ZEPPELIN-FLINK-3_0 | FLINK-1_18 | FLINK-1_19 | FLINK-1_20`   
必要：否

 ** [ServiceExecutionRoleUpdate](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-ServiceExecutionRoleUpdate"></a>
描述服務執行角色的更新。  
類型：字串  
長度限制：長度下限為 1。長度上限為 2048。  
模式：`arn:.*`  
必要：否

## 回應語法
<a name="API_UpdateApplication_ResponseSyntax"></a>

```
{
   "ApplicationDetail": { 
      "ApplicationARN": "string",
      "ApplicationConfigurationDescription": { 
         "ApplicationCodeConfigurationDescription": { 
            "CodeContentDescription": { 
               "CodeMD5": "string",
               "CodeSize": number,
               "S3ApplicationCodeLocationDescription": { 
                  "BucketARN": "string",
                  "FileKey": "string",
                  "ObjectVersion": "string"
               },
               "TextContent": "string"
            },
            "CodeContentType": "string"
         },
         "ApplicationEncryptionConfigurationDescription": { 
            "KeyId": "string",
            "KeyType": "string"
         },
         "ApplicationSnapshotConfigurationDescription": { 
            "SnapshotsEnabled": boolean
         },
         "ApplicationSystemRollbackConfigurationDescription": { 
            "RollbackEnabled": boolean
         },
         "EnvironmentPropertyDescriptions": { 
            "PropertyGroupDescriptions": [ 
               { 
                  "PropertyGroupId": "string",
                  "PropertyMap": { 
                     "string" : "string" 
                  }
               }
            ]
         },
         "FlinkApplicationConfigurationDescription": { 
            "CheckpointConfigurationDescription": { 
               "CheckpointingEnabled": boolean,
               "CheckpointInterval": number,
               "ConfigurationType": "string",
               "MinPauseBetweenCheckpoints": number
            },
            "JobPlanDescription": "string",
            "MonitoringConfigurationDescription": { 
               "ConfigurationType": "string",
               "LogLevel": "string",
               "MetricsLevel": "string"
            },
            "ParallelismConfigurationDescription": { 
               "AutoScalingEnabled": boolean,
               "ConfigurationType": "string",
               "CurrentParallelism": number,
               "Parallelism": number,
               "ParallelismPerKPU": number
            }
         },
         "RunConfigurationDescription": { 
            "ApplicationRestoreConfigurationDescription": { 
               "ApplicationRestoreType": "string",
               "SnapshotName": "string"
            },
            "FlinkRunConfigurationDescription": { 
               "AllowNonRestoredState": boolean
            }
         },
         "SqlApplicationConfigurationDescription": { 
            "InputDescriptions": [ 
               { 
                  "InAppStreamNames": [ "string" ],
                  "InputId": "string",
                  "InputParallelism": { 
                     "Count": number
                  },
                  "InputProcessingConfigurationDescription": { 
                     "InputLambdaProcessorDescription": { 
                        "ResourceARN": "string",
                        "RoleARN": "string"
                     }
                  },
                  "InputSchema": { 
                     "RecordColumns": [ 
                        { 
                           "Mapping": "string",
                           "Name": "string",
                           "SqlType": "string"
                        }
                     ],
                     "RecordEncoding": "string",
                     "RecordFormat": { 
                        "MappingParameters": { 
                           "CSVMappingParameters": { 
                              "RecordColumnDelimiter": "string",
                              "RecordRowDelimiter": "string"
                           },
                           "JSONMappingParameters": { 
                              "RecordRowPath": "string"
                           }
                        },
                        "RecordFormatType": "string"
                     }
                  },
                  "InputStartingPositionConfiguration": { 
                     "InputStartingPosition": "string"
                  },
                  "KinesisFirehoseInputDescription": { 
                     "ResourceARN": "string",
                     "RoleARN": "string"
                  },
                  "KinesisStreamsInputDescription": { 
                     "ResourceARN": "string",
                     "RoleARN": "string"
                  },
                  "NamePrefix": "string"
               }
            ],
            "OutputDescriptions": [ 
               { 
                  "DestinationSchema": { 
                     "RecordFormatType": "string"
                  },
                  "KinesisFirehoseOutputDescription": { 
                     "ResourceARN": "string",
                     "RoleARN": "string"
                  },
                  "KinesisStreamsOutputDescription": { 
                     "ResourceARN": "string",
                     "RoleARN": "string"
                  },
                  "LambdaOutputDescription": { 
                     "ResourceARN": "string",
                     "RoleARN": "string"
                  },
                  "Name": "string",
                  "OutputId": "string"
               }
            ],
            "ReferenceDataSourceDescriptions": [ 
               { 
                  "ReferenceId": "string",
                  "ReferenceSchema": { 
                     "RecordColumns": [ 
                        { 
                           "Mapping": "string",
                           "Name": "string",
                           "SqlType": "string"
                        }
                     ],
                     "RecordEncoding": "string",
                     "RecordFormat": { 
                        "MappingParameters": { 
                           "CSVMappingParameters": { 
                              "RecordColumnDelimiter": "string",
                              "RecordRowDelimiter": "string"
                           },
                           "JSONMappingParameters": { 
                              "RecordRowPath": "string"
                           }
                        },
                        "RecordFormatType": "string"
                     }
                  },
                  "S3ReferenceDataSourceDescription": { 
                     "BucketARN": "string",
                     "FileKey": "string",
                     "ReferenceRoleARN": "string"
                  },
                  "TableName": "string"
               }
            ]
         },
         "VpcConfigurationDescriptions": [ 
            { 
               "SecurityGroupIds": [ "string" ],
               "SubnetIds": [ "string" ],
               "VpcConfigurationId": "string",
               "VpcId": "string"
            }
         ],
         "ZeppelinApplicationConfigurationDescription": { 
            "CatalogConfigurationDescription": { 
               "GlueDataCatalogConfigurationDescription": { 
                  "DatabaseARN": "string"
               }
            },
            "CustomArtifactsConfigurationDescription": [ 
               { 
                  "ArtifactType": "string",
                  "MavenReferenceDescription": { 
                     "ArtifactId": "string",
                     "GroupId": "string",
                     "Version": "string"
                  },
                  "S3ContentLocationDescription": { 
                     "BucketARN": "string",
                     "FileKey": "string",
                     "ObjectVersion": "string"
                  }
               }
            ],
            "DeployAsApplicationConfigurationDescription": { 
               "S3ContentLocationDescription": { 
                  "BasePath": "string",
                  "BucketARN": "string"
               }
            },
            "MonitoringConfigurationDescription": { 
               "LogLevel": "string"
            }
         }
      },
      "ApplicationDescription": "string",
      "ApplicationMaintenanceConfigurationDescription": { 
         "ApplicationMaintenanceWindowEndTime": "string",
         "ApplicationMaintenanceWindowStartTime": "string"
      },
      "ApplicationMode": "string",
      "ApplicationName": "string",
      "ApplicationStatus": "string",
      "ApplicationVersionCreateTimestamp": number,
      "ApplicationVersionId": number,
      "ApplicationVersionRolledBackFrom": number,
      "ApplicationVersionRolledBackTo": number,
      "ApplicationVersionUpdatedFrom": number,
      "CloudWatchLoggingOptionDescriptions": [ 
         { 
            "CloudWatchLoggingOptionId": "string",
            "LogStreamARN": "string",
            "RoleARN": "string"
         }
      ],
      "ConditionalToken": "string",
      "CreateTimestamp": number,
      "LastUpdateTimestamp": number,
      "RuntimeEnvironment": "string",
      "ServiceExecutionRole": "string"
   },
   "OperationId": "string"
}
```

## 回應元素
<a name="API_UpdateApplication_ResponseElements"></a>

如果動作成功，則服務傳回 HTTP 200 回應。

服務會傳回下列 JSON 格式的資料。

 ** [ApplicationDetail](#API_UpdateApplication_ResponseSyntax) **   <a name="APIReference-UpdateApplication-response-ApplicationDetail"></a>
說明應用程式更新。  
類型：[ApplicationDetail](API_ApplicationDetail.md) 物件

 ** [OperationId](#API_UpdateApplication_ResponseSyntax) **   <a name="APIReference-UpdateApplication-response-OperationId"></a>
可用於追蹤請求的操作 ID。  
類型：字串  
長度限制：長度下限為 1。長度上限為 64。

## 錯誤
<a name="API_UpdateApplication_Errors"></a>

 ** CodeValidationException **   
使用者提供的應用程式碼 （查詢） 無效。這可能是一個簡單的語法錯誤。  
HTTP 狀態碼：400

 ** ConcurrentModificationException **   
因應用程式並行修改而擲回的例外狀況。此錯誤可能是嘗試修改應用程式而不使用目前應用程式 ID 的結果。  
HTTP 狀態碼：400

 ** InvalidApplicationConfigurationException **   
使用者提供的應用程式組態無效。  
HTTP 狀態碼：400

 ** InvalidArgumentException **   
指定的輸入參數值無效。  
HTTP 狀態碼：400

 ** InvalidRequestException **   
請求 JSON 對 操作無效。  
HTTP 狀態碼：400

 ** LimitExceededException **   
已超過允許的資源數量。  
HTTP 狀態碼：400

 ** ResourceInUseException **   
應用程式不適用於此操作。  
HTTP 狀態碼：400

 ** ResourceNotFoundException **   
找不到指定的應用程式。  
HTTP 狀態碼：400

## 另請參閱
<a name="API_UpdateApplication_SeeAlso"></a>

如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊，請參閱下列內容：
+  [AWS 命令列界面 V2](https://docs.aws.amazon.com/goto/cli2/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 .NET V4 的 SDK](https://docs.aws.amazon.com/goto/DotNetSDKV4/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 C\$1\$1 的 SDK](https://docs.aws.amazon.com/goto/SdkForCpp/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 Go 的 SDK v2](https://docs.aws.amazon.com/goto/SdkForGoV2/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 Java V2 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaV2/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 JavaScript V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 Kotlin 的 SDK](https://docs.aws.amazon.com/goto/SdkForKotlin/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 PHP V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForPHPV3/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 Python 的 SDK](https://docs.aws.amazon.com/goto/boto3/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS 適用於 Ruby V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForRubyV3/kinesisanalyticsv2-2018-05-23/UpdateApplication) 