

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 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`을 입력해야 합니다. [DescribeApplication](API_DescribeApplication.md)을 사용하여 애플리케이션의 현재 `ConditionalToken`을 가져옵니다. 더 나은 동시성 지원을 위해 `CurrentApplicationVersionId` 대신 `ConditionalToken` 파라미터를 사용하세요.  
유형: 문자열  
길이 제약 조건: 최소 길이는 1입니다. 최대 길이는 512입니다.  
패턴: `[a-zA-Z0-9-_+/=]+`   
필수 여부: 아니요

 ** [CurrentApplicationVersionId](#API_UpdateApplication_RequestSyntax) **   <a name="APIReference-UpdateApplication-request-CurrentApplicationVersionId"></a>
현재 애플리케이션 버전 ID입니다. `CurrentApplicationVersionId` 또는 `ConditionalToken`을 제공해야 합니다. [DescribeApplication](API_DescribeApplication.md)을 사용하여 애플리케이션 버전 ID를 검색할 수 있습니다. 더 나은 동시성 지원을 위해 `CurrentApplicationVersionId` 대신 `ConditionalToken` 파라미터를 사용하세요.  
타입: 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. 최대 길이는 2,048.  
패턴: `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
+  [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 SDK for C\$1\$1](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 SDK for JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/kinesisanalyticsv2-2018-05-23/UpdateApplication) 
+  [AWS SDK for Kotlin](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 SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/kinesisanalyticsv2-2018-05-23/UpdateApplication) 