

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

# 배치 명령을 사용하여 생성 및 삭제
<a name="about-batch-update-schedule"></a>

채널 일정에서 작업을 생성 및 삭제하려면 배치 업데이트 일정 명령을 사용합니다. 이 명령을 사용하면 한 번의 요청으로 여러 작업을 수행할 수 있습니다. 작업을 생성하는 명령과 삭제하는 명령이 별도로 구분되지 않습니다.

**중요**  
시작 및 실행 중인 채널로 작업할 때는 **batch-update-schedule** 명령을 사용하여 작업을 추가하거나 제거합니다. 유휴 채널에서만 **delete-schedule** 명령을 사용합니다. **delete-schedule** 명령은 예약된 모든 작업을 삭제하고 라이브 채널에서 사용할 경우 서비스 중단을 일으킬 수 있습니다.

명령을 다음과 같이 사용할 수 있습니다.
+ *단일* 요청(예: 다음 작업을 수행하는 요청)을 제출합니다.
  + 작업 하나를 생성합니다.
  + 작업 하나를 삭제합니다.
+ *배치* 요청(예: 다음 작업을 수행하는 단일 요청)을 제출합니다.
  + 여러 작업을 생성합니다.
  + 여러 작업을 삭제합니다.
  + 하나 이상의 작업을 생성하고 하나 이상의 작업을 삭제합니다.

**중요**  
생성 작업과 삭제 작업을 결합하는 명령에서는 삭제 작업이 *항상* 생성 작업보다 먼저 수행됩니다. 즉, MediaLive는 생성 작업을 일정에 추가하기 전에 일정에서 삭제 작업을 제거합니다.

**Topics**
+ [배치 요청 작동 방식](how-batch-schedule-requests-work.md)
+ [다른 인터페이스의 배치 명령](batchupdatecommand-interfaces.md)
+ [다른 인터페이스의 JSON 페이로드](batchupdatecommand-payloads.md)

# 배치 요청 작동 방식
<a name="how-batch-schedule-requests-work"></a>

배치의 목적은 모든 작업이 함께 통과/실패하도록 하는 것입니다. 따라서 AWS Elemental MediaLive는 배치 작업을 함께 검증합니다. MediaLive는 다음 검증을 수행합니다.
+ 생성 또는 삭제되는 각 작업은 명시적 또는 암시적으로 최소 15초 후의 시작 시간을 갖도록 합니다.
+ 작업이 일정의 기존 작업을 참조하는 경우 기존 작업에 대한 참조가 올바른지 확인합니다. 예를 들어 팔로우 입력 전환에는 팔로우 작업에 대한 참조가 포함되어 있습니다. 해당 작업이 존재해야 합니다.

한 작업에 대해 확인이 실패할 경우 배치의 모든 작업이 실패합니다.

여러 작업이 함께 통과 또는 실패하도록 하지 않으려면 배치를 제출하지 마십시오. 대신에 고유의 배치 업데이트 일정 명령으로 각 작업을 생성합니다.

확인이 성공하면 MediaLive는 작업 시작 시간과 관계없이 생성 요청 전에 모든 삭제 요청을 처리합니다.

**예제 1.**  
배치의 중요 용도 중 하나는 모두 함께 통과 또는 실패하도록 해야 하는 여러 작업을 수행하는 것입니다. 예를 들어 회사 로고를 제거하고 (광고 가능 구간으로 이동하기 위해) splice\$1insert를 즉시 삽입하려고 한다고 가정하겠습니다. 이렇게 하려면 로고를 제거하는 작업과 spice\$1insert를 삽입하는 또 하나의 작업을 생성해야 합니다. 하지만 splice\$1insert 작업 실패 시 MediaLive에서 제거 작업을 삽입하지 않거나 제거 작업 실패 시 splice\$1insert 작업을 삽입하지 않으려고 합니다. 두 작업이 모두 실패할 경우에는 훨씬 더 쉽습니다. 잘못 구성된 작업을 수정하고 나서 두 작업을 다시 제출하면 됩니다.

그러므로 배치 업데이트 일정 명령 하나를 통해 두 작업을 함께 제출합니다.

**예제 2.**  
배치의 또 한 가지 중요한 용도는 일정에 포함된 작업의 오류를 수정하는 것입니다. 예를 들어, 아직 시작되지 않았으며 잘못된 시작 시간으로 생성된 이미지 오버레이를 수정하고 싶습니다. 이렇게 하려면 다음을 포함하는 JSON을 사용하여 배치 업데이트 일정 명령 하나를 제출합니다.
+ 이미지 오버레이를 활성화하는 원래 작업을 제거하기 위한 페이로드입니다. 이 작업의 시작 시간이 잘못되었습니다.
+ 동일한 이미지 오버레이를 활성화하는 새 작업을 추가하기 위한 페이로드입니다. 이 작업의 시작 시간이 정확합니다.

# 다른 인터페이스의 배치 명령
<a name="batchupdatecommand-interfaces"></a>

배치 업데이트 일정 명령은 인터페이스마다 다르게 표시됩니다.
+ 에서 AWS CLI명령은 입니다`batch-update-schedule`.
+ API에서 이 명령은 `channels/channelId/schedule`에 `HTTP PUT`으로 표시됩니다.
+  AWS SDKs에서 명령은 해당 SDK 언어에 적합한 구문으로 표시됩니다.

# 다른 인터페이스의 JSON 페이로드
<a name="batchupdatecommand-payloads"></a>

명령의 JSON 페이로드는 인터페이스마다 다릅니다.
+ 에서 AWS CLI페이로드의 내용은 명령을 사용하는 방법에 따라 달라집니다.
  + 두 파라미터(`channel-id` 및 `--cli-input-json`)를 사용하여 명령을 입력할 수 있습니다. 이 경우 채널 ID를 반복하고 JSON 페이로드를 포함하는 파일을 생성합니다.
  + 파라미터 세 개로 명령을 입력할 수 있습니다. 하나는 채널 ID용이고, 하나는 생성 작업을 위한 JSON 페이로드용이고(해당하는 경우), 다른 하나는 삭제 작업을 위한 JSON 페이로드용입니다(해당하는 경우). 명령에 페이로드를 전달합니다. 두 파라미터가 모두 있는 경우 각 파라미터는 별도의 페이로드를 사용합니다. 그러나 두 페이로드 모두 검증되고 배치로 실행됩니다.

  의 페이로드는 항상 pascal 대/소문자(상위 카멜 대/소문자) AWS CLI 입니다.
+ API에는 두 섹션(`CREATES` 및 `DELETES`)으로 이루어진 페이로드가 한 개 있습니다. 요청에 섹션 중 하나 또는 둘 다 포함할 수 있습니다.

  API의 페이로드는 항상 변수 이름의 경우 Camel 케이스이고 클래스의 경우 Pascal 케이스입니다.
+  AWS SDKs에서 JSON 페이로드는 해당 SDK 언어에 적합한 구문으로 표시됩니다.

개별 작업에 더 익숙해지려면 MediaLive 콘솔을 사용하여 작업을 생성하는 것이 좋습니다. 작업을 생성한 후 적절한 인터페이스(예: AWS CLI 또는 SDK)에서 [DescribeSchedule](viewing-schedule-using-cli.md) 명령을 사용하여 전체 일정에 대한 원시 JSON 페이로드를 가져옵니다. 그런 다음 개별 작업을 복사하여 모델로 저장한 다음 프로그래밍 방식으로 작업할 때 사용할 수 있습니다.