

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

# 작업 대기열
<a name="job-queueing"></a>

작업 대기열을 사용하면 동시에 처리할 수 있는 것보다 더 많은 트랜스크립션 작업 요청을 제출할 수 있습니다. 작업 대기열을 사용하지 않고 허용된 동시 요청 할당량에 도달하면 하나 이상의 요청이 완료될 때까지 기다렸다가 새 요청을 제출해야 합니다.

작업 대기열은 트랜스크립션 작업 및 통화 후 분석 작업 요청 모두에 대해 선택 사항입니다.

작업 대기열을 활성화하면는 한도를 초과하는 모든 요청이 포함된 대기열을 Amazon Transcribe 생성합니다. 요청이 완료되는 즉시 대기열에서 새 요청을 가져와 처리합니다. 대기 상태인 요청은 FIFO(선입선출)에 따라 처리됩니다.

대기열에 최대 10,000개의 작업을 추가할 수 있습니다. 이 한도를 초과할 경우 `LimitExceededConcurrentJobException` 오류가 발생합니다. 최적의 성능을 유지하기 위해는 할당량의 최대 90%(대역폭 비율 0.9) Amazon Transcribe 만 사용하여 대기 중인 작업을 처리합니다. 요청 시 높일 수 있는 기본값이라는 점에 유의하세요.

**작은 정보**  
[AWS 일반 참조](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)에서 Amazon Transcribe 리소스에 대한 기본 제한 및 할당량 목록을 찾을 수 있습니다. 요청 시 이러한 기본값 중 일부를 높일 수 있습니다.

작업 대기열을 활성화했지만 동시 요청 할당량을 초과하지 않은 경우 모든 요청이 동시에 처리됩니다.

## 작업 대기열 활성화
<a name="job-queueing-how"></a>

**AWS Management Console**, **AWS CLI** 또는 **AWS SDK**를 사용하여 작업 대기열을 활성화할 수 있습니다. 예를 보려면 다음을 참조하세요. 예를 보려면 다음을 참조하세요.

### AWS Management Console
<a name="queueing-console-batch"></a>

1. [AWS Management Console](https://console.aws.amazon.com/transcribe/)에 로그인합니다.

1. 탐색 창에서 **트랜스크립션 작업**을 선택한 다음 **작업 생성**(오른쪽 상단)을 선택합니다. 그러면 **작업 세부 정보 지정** 페이지가 열립니다.

1. **작업 설정** 상자에는 **추가 설정** 패널이 있습니다. 이 패널을 확장하면 **작업 대기열에 추가** 상자를 선택하여 작업 대기열을 활성화할 수 있습니다.  
![Amazon Transcribe 콘솔 스크린샷: '작업 세부 정보 지정' 페이지.](http://docs.aws.amazon.com/ko_kr/transcribe/latest/dg/images/jobqueueing.png)

1. **작업 세부 정보 지정** 페이지에 포함하려는 다른 필드를 모두 채운 후 **다음**을 선택합니다. 그러면 **작업 구성 - *선택 사항* 페이지**로 이동합니다.

1. **작업 생성**을 선택하여 트랜스크립션 작업을 실행합니다.

### AWS CLI
<a name="queueing-cli"></a>

이 예시에서는 [start-transcription-job](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transcribe/start-transcription-job.html) 명령 및 `job-execution-settings` 파라미터를 `AllowDeferredExecution` 하위 파라미터와 함께 사용합니다. 단, 요청에 `AllowDeferredExecution`을 포함시킬 때는 `DataAccessRoleArn` 역시 포함해야 합니다.

자세한 내용은 [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html) 및 [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_JobExecutionSettings.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_JobExecutionSettings.html) 섹션을 참조하세요.

```
aws transcribe start-transcription-job \
--region {{us-west-2}} \
--transcription-job-name {{my-first-transcription-job}} \
--media MediaFileUri=s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}} \
--output-bucket-name {{amzn-s3-demo-bucket}} \
--output-key {{my-output-files}}/ \
--language-code {{en-US}} \
--job-execution-settings AllowDeferredExecution=true,DataAccessRoleArn=arn:aws:iam::{{111122223333}}:role/{{ExampleRole}}
```

다음은 [start-transcription-job](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/transcribe/start-transcription-job.html) 명령을 사용하는 또 다른 예 및 대기열을 활성화하는 요청 본문입니다.

```
aws transcribe start-transcription-job \
--region {{us-west-2}} \
--cli-input-json file://{{my-first-queueing-request}}.json
```

*my-first-queueing-request.json* 파일에는 다음과 같은 요청 본문이 포함되어 있습니다.

```
{
  "TranscriptionJobName": "{{my-first-transcription-job}}",
  "Media": {
        "MediaFileUri": "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
  },
  "OutputBucketName": "{{amzn-s3-demo-bucket}}",
  "OutputKey": "{{my-output-files}}/", 
  "LanguageCode": "{{en-US}}",
  "JobExecutionSettings": {
        "AllowDeferredExecution": true,
        "DataAccessRoleArn": "arn:aws:iam::{{111122223333}}:role/{{ExampleRole}}"
  }
}
```

### AWS SDK for Python (Boto3)
<a name="queueing-python-batch"></a>

이 예제에서는 AWS SDK for Python (Boto3) 를 사용하여 [start\_transcription\_job](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/transcribe.html#TranscribeService.Client.start_transcription_job) 메서드에 대한 `AllowDeferredExecution` 인수를 사용하여 작업 대기열을 활성화합니다. 단, 요청에 `AllowDeferredExecution`을 포함시킬 때는 `DataAccessRoleArn` 역시 포함해야 합니다. 자세한 내용은 [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html) 및 [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_JobExecutionSettings.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_JobExecutionSettings.html) 섹션을 참조하세요.

기능별, 시나리오 및 교차 서비스 예제 AWS SDKs를 사용하는 추가 예제는 [AWS SDKs를 사용한 Amazon Transcribe의 코드 예제](service_code_examples.md)장을 참조하세요.

```
from __future__ import print_function
import time
import boto3
transcribe = boto3.client('transcribe', '{{us-west-2}}')
job_name = "{{my-first-queueing-request}}"
job_uri = "s3://{{amzn-s3-demo-bucket}}/{{my-input-files}}/{{my-media-file}}.{{flac}}"
transcribe.start_transcription_job(
    TranscriptionJobName = job_name,
    Media = {
        'MediaFileUri': job_uri
    },
    OutputBucketName = '{{amzn-s3-demo-bucket}}',
    OutputKey = '{{my-output-files}}/', 
    LanguageCode = '{{en-US}}', 
    JobExecutionSettings = {
        'AllowDeferredExecution': True,
        'DataAccessRoleArn': 'arn:aws:iam::{{111122223333}}:role/{{ExampleRole}}'
   }
)

while True:
    status = transcribe.get_transcription_job(TranscriptionJobName = job_name)
    if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']:
        break
    print("Not ready yet...")
    time.sleep(5)
print(status)
```

를 통해 AWS Management Console 또는 [https://docs.aws.amazon.com/transcribe/latest/APIReference/API_GetTranscriptionJob.html](https://docs.aws.amazon.com/transcribe/latest/APIReference/API_GetTranscriptionJob.html) 요청을 제출하여 대기 중인 작업의 진행 상황을 볼 수 있습니다. 작업이 대기열에 있으면 `Status`는 `QUEUED`입니다. 작업에서 처리가 시작되면 상태가 `IN_PROGRESS`로 변경되고 처리가 완료되면 `COMPLETED` 또는 `FAILED`로 변경됩니다.