작업 우선 순위 지정 - Amazon Simple Storage Service

작업 우선 순위 지정

각 작업에 숫자 우선 순위(임의의 양수)를 지정할 수 있습니다. S3 배치 작업은 할당된 우선 순위에 따라 작업의 우선 순위를 지정합니다. 우선순위가 높은(즉 우선 순위 파라미터의 숫자 값이 높은) 작업이 먼저 평가됩니다. 우선 순위는 내림차순으로 결정됩니다. 예를 들어, 우선 순위 값이 1인 작업 대기열은 우선 순위 값이 10인 작업 대기열보다 먼저 일정이 예약됩니다.

작업이 실행되는 동안 작업의 우선 순위를 변경할 수 있습니다. 작업이 실행되는 동안 더 높은 우선 순위로 새 작업을 제출하면 우선 순위가 낮은 작업이 일시 중지되어 우선 순위가 높은 작업이 실행될 수 있습니다.

작업 우선순위를 변경해도 작업 처리 속도에는 영향을 주지 않습니다.

참고

S3 배치 작업은 최대 효과에 기초하여 작업 우선 순위를 준수합니다. 우선 순위가 높은 작업이 일반적으로 우선 순위가 낮은 작업보다 우선하지만, Amazon S3는 엄격한 작업 순서를 보장하지 않습니다.

AWS Management Console에서 작업 우선 순위를 업데이트하는 방법
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 배치 작업을 선택합니다.

  3. 관리할 특정 작업을 선택합니다.

  4. 작업을 선택합니다. 드롭다운 목록에서 업데이트 우선 순위(Update priority)를 선택합니다.

다음 예제에서는 AWS CLI를 사용하여 작업의 우선 순위를 업데이트합니다. 숫자가 높을 수록 실행 우선 순위가 높아집니다.

aws s3control update-job-priority \ --region us-west-2 \ --account-id acct-id \ --priority 98 \ --job-id 00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c

다음 예제에서는 AWS SDK for Java를 사용하여 S3 배치 작업의 우선 순위를 업데이트합니다.

작업 우선 순위에 대한 자세한 내용은 작업 우선 순위 지정 섹션을 참조하세요.

package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.services.s3control.AWSS3Control; import com.amazonaws.services.s3control.AWSS3ControlClient; import com.amazonaws.services.s3control.model.UpdateJobPriorityRequest; import static com.amazonaws.regions.Regions.US_WEST_2; public class UpdateJobPriority { public static void main(String[] args) { String accountId = "Account ID"; String jobId = "00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c"; try { AWSS3Control s3ControlClient = AWSS3ControlClient.builder() .withCredentials(new ProfileCredentialsProvider()) .withRegion(US_WEST_2) .build(); s3ControlClient.updateJobPriority(new UpdateJobPriorityRequest() .withAccountId(accountId) .withJobId(jobId) .withPriority(98)); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }