Atribuir prioridade aos trabalhos
Você pode atribuir a cada trabalho do Operações em Lote do Amazon S3 uma prioridade numérica, que pode ser qualquer inteiro positivo. O Operações em Lote do S3 prioriza trabalhos de acordo com a prioridade atribuída. Os trabalhos com prioridade mais alta (ou um valor inteiro mais alto para o parâmetro de prioridade) são avaliados primeiro. A prioridade é determinada em ordem decrescente. Por exemplo, uma fila de tarefas com valor de prioridade 10 tem preferência de programação em relação a uma fila com valor de prioridade 1.
É possível alterar a prioridade do trabalho enquanto ele está sendo executado. Se você enviar um novo trabalho com uma prioridade mais alta enquanto um trabalho estiver em execução, o trabalho de menor prioridade poderá ser pausado para permitir a execução do trabalho de maior prioridade.
Alterar a prioridade de um trabalho não afeta a velocidade de processamento dele.
nota
O Operações em Lote do S3 respeita as prioridades de trabalhos com o melhor esforço. Embora os trabalhos com prioridades mais altas normalmente tenham precedência sobre os de prioridades mais baixas, o Amazon S3 não garante a classificação rígida dos trabalhos.
Como atualizar a prioridade de trabalhos no console do Amazon S3
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
No painel de navegação esquerdo, escolha Batch Operations (Operações em lote).
-
Selecione o trabalho específico que você deseja gerenciar.
-
Escolha Actions (Ações). Na lista suspensa, escolha Update priority (Atualizar prioridade).
O exemplo a seguir atualiza a prioridade do trabalho usando a AWS CLI. Um número maior indica uma prioridade de execução mais alta. Para usar o comando a seguir, substitua os
por suas próprias informações.user input
placeholders
aws s3control update-job-priority \ --region
us-west-2
\ --account-idaccount-id
\ --priority98
\ --job-id00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c
O exemplo a seguir atualiza a prioridade de um trabalho do S3 Batch Operations usando o AWS SDK for Java.
Para obter mais informações sobre prioridade de trabalhos, consulte Atribuir prioridade aos trabalhos.
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(); } } }