Configurar a visualização consistente - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurar a visualização consistente

Você pode definir configurações adicionais para a visualização consistente usando propriedades de configuração para propriedades do emrfs-site. Por exemplo, você pode escolher uma taxa de transferência padrão diferente do DynamoDB fornecendo os seguintes argumentos para a opção, usando CLI --emrfs a classificação de configuração emrfs-site (somente a versão 4.x e posterior da EMR Amazon) ou uma ação de bootstrap para configurar o arquivo emrfs-site.xml no nó principal:

exemplo Alterar os valores de leitura e gravação de metadados padrão na execução do cluster
aws emr create-cluster --release-label emr-7.2.0 --instance-type m5.xlarge \ --emrfs Consistent=true,Args=[fs.s3.consistent.metadata.read.capacity=600,\ fs.s3.consistent.metadata.write.capacity=300] --ec2-attributes KeyName=myKey

Como alternativa, use o seguinte arquivo de configuração e salve-o localmente ou no Amazon S3:

[ { "Classification": "emrfs-site", "Properties": { "fs.s3.consistent.metadata.read.capacity": "600", "fs.s3.consistent.metadata.write.capacity": "300" } } ]

Use a configuração que você criou com a seguinte sintaxe:

aws emr create-cluster --release-label emr-7.2.0 --applications Name=Hive \ --instance-type m5.xlarge --instance-count 2 --configurations file://./myConfig.json
nota

Os caracteres de continuação de linha do Linux (\) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

As opções a seguir podem ser definidas usando configurações ou AWS CLI --emrfs argumentos. Para obter mais informações sobre esses argumentos, consulte AWS CLI Command Reference.

Propriedades emrfs-site.xml para a visualização consistente
Propriedade Valor padrão Descrição
fs.s3.consistent false

Quando definida comotrue, essa propriedade é configurada EMRFS para usar o DynamoDB para fornecer consistência.

fs.s3.consistent.retryPolicyType exponential Essa propriedade identifica a política a ser usada em caso de novas tentativas para problemas de consistência. As opções incluem: exponential, fixed ou none.
fs.s3.consistent.retryPeriodSeconds 1 Essa propriedade define o tempo de espera entre tentativas de repetição de consistência.
fs.s3.consistent.retryCount 10 Essa propriedade define o número máximo de tentativas quando é detectada uma inconsistência.
fs.s3.consistent.throwExceptionOnInconsistency true Essa propriedade determina se uma exceção de consistência deve ser lançada ou registrada. Quando definida como true, um ConsistencyException é lançado.
fs.s3.consistent.metadata.autoCreate true Quando definida como true, essa propriedade permite a criação automática de tabelas de metadados.
fs.s3.consistent.metadata.etag.verification.enabled true Com o Amazon EMR 5.29.0, essa propriedade é ativada por padrão. Quando ativado, EMRFS usa o S3 ETags para verificar se os objetos que estão sendo lidos são da versão mais recente disponível. Esse recurso é útil para casos de read-after-update uso em que os arquivos no S3 estão sendo sobrescritos, mantendo o mesmo nome. Atualmente, esse recurso de ETag verificação não funciona com o S3 Select.
fs.s3.consistent.metadata.tableName EmrFSMetadata Essa propriedade especifica o nome da tabela de metadados no DynamoDB.
fs.s3.consistent.metadata.read.capacity 500 Essa propriedade especifica a capacidade de leitura do DynamoDB a ser provisionada quando a tabela de metadados é criada.
fs.s3.consistent.metadata.write.capacity 100 Essa propriedade especifica a capacidade de gravação do DynamoDB a ser provisionada quando a tabela de metadados é criada.
fs.s3.consistent.fastList true Quando definida como true, essa propriedade usa vários threads para listar um diretório (quando necessário). A consistência deve ser habilitada para usar essa propriedade.
fs.s3.consistent.fastList.prefetchMetadata false Quando definida como true, essa propriedade permite que metadados façam uma pré-busca por diretórios que contêm mais de 20.000 itens.
fs.s3.consistent.notification.CloudWatch false Quando definidas comotrue, as CloudWatch métricas são habilitadas para FileSystem API chamadas que falham devido a eventuais problemas de consistência do Amazon S3.
fs.s3.consistent.notification.SQS false Quando definido comotrue, eventuais notificações de consistência são enviadas para uma SQS fila da Amazon.
fs.s3.consistent.notification.SQS.queueName EMRFS-Inconsistency-<jobFlowId> A alteração dessa propriedade permite que você especifique seu próprio nome de SQS fila para mensagens relacionadas a eventuais problemas de consistência do Amazon S3.
fs.s3.consistent.notification.SQS.customMsg none Essa propriedade permite que você especifique informações personalizadas incluídas nas SQS mensagens sobre eventuais problemas de consistência do Amazon S3. Se um valor não for especificado para essa propriedade, o campo correspondente na mensagem ficará vazio.
fs.s3.consistent.dynamodb.endpoint none Essa propriedade permite especificar um endpoint personalizado do DynamoDB para as seus metadados de exibição consistente.
fs.s3.useRequesterPaysHeader false Quando definida como true, essa propriedade permite solicitações do Amazon S3 para buckets com a opção de pagante de solicitações habilitada.