Configuración de la vista coherente - Amazon EMR

Configuración de la vista coherente

Puede configurar ajustes adicionales para la vista consistente mediante las propiedades de configuración de emrfs-site. Por ejemplo, puede elegir otra opción predeterminada de rendimiento de DynamoDB suministrando los siguientes argumentos a la opción --emrfs de la CLI, utilizando la clasificación de configuración emrfs-site (solo para Amazon EMR versión 4.x y posteriores), o mediante una acción de arranque para configurar el archivo emrfs-site.xml en el nodo maestro:

ejemplo Cambio de valores de lectura y escritura de metadatos predeterminados en el lanzamiento del clúster
aws emr create-cluster --release-label emr-7.3.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

De forma alternativa, utilice el siguiente archivo de configuración y guárdelo de forma local o en Amazon S3:

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

Utilice la configuración que ha creado con la siguiente sintaxis:

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

Se incluyen caracteres de continuación de línea de Linux (\) para facilitar la lectura. Se pueden eliminar o utilizar en los comandos de Linux. En Windows, elimínelos o sustitúyalos por un signo de intercalación (^).

Las siguientes opciones se pueden establecer mediante argumentos --emrfs de la AWS CLI. Para obtener información sobre estos argumentos, consulte Referencia de comandos de AWS CLI.

Propiedades emrfs-site.xml para vista coherente
Propiedad Valor predeterminado Descripción
fs.s3.consistent false

Cuando se establece en true, esta propiedad configura EMRFS para utilizar DynamoDB para proporcionar consistencia.

fs.s3.consistent.retryPolicyType exponential Esta propiedad identifica la política que utilizar a la hora de volver a intentar los problemas de consistencia. Las opciones incluyen: exponential, fixed o none.
fs.s3.consistent.retryPeriodSeconds 1 Esta propiedad establece la duración que esperar entre la reintentos de consistencia.
fs.s3.consistent.retryCount 10 Esta propiedad establece el número máximo de reintentos cuando se detecta inconsistencia.
fs.s3.consistent.throwExceptionOnInconsistency true Esta propiedad determina si lanzar o registrar una excepción de consistencia. Cuando se establece en true, se lanza una ConsistencyException.
fs.s3.consistent.metadata.autoCreate true Cuando se establece en true, esta propiedad habilita la creación automática de tablas de metadatos.
fs.s3.consistent.metadata.etag.verification.enabled true Con Amazon EMR 5.29.0, esta propiedad está habilitada de forma predeterminada. Cuando está habilitada, EMRFS utiliza las ETags de S3 para comprobar que los objetos leídos tienen la última versión disponible. Esta característica resulta útil para casos de uso de lectura después de la actualización en los que los archivos de S3 se sobrescriben conservando el mismo nombre. Esta capacidad de comprobación de ETag no funciona actualmente con S3 Select.
fs.s3.consistent.metadata.tableName EmrFSMetadata Esta propiedad especifica el nombre de la tabla de metadatos en DynamoDB.
fs.s3.consistent.metadata.read.capacity 500 Esta propiedad especifica la capacidad de lectura de DynamoDB para aprovisionar cuando se crea la tabla de metadatos.
fs.s3.consistent.metadata.write.capacity 100 Esta propiedad especifica la capacidad de escritura de DynamoDB para aprovisionar cuando se crea la tabla de metadatos.
fs.s3.consistent.fastList true Cuando se establece en true, esta propiedad utiliza varios subprocesos para mostrar un directorio (cuando sea necesario). La consistencia debe estar habilitada para utilizar esta propiedad.
fs.s3.consistent.fastList.prefetchMetadata false Cuando se establece en true, esta propiedad habilita la captura previa de metadatos para los directorios que contengan más de 20 000 elementos.
fs.s3.consistent.notification.CloudWatch false Cuando se establece en true, las métricas de CloudWatch están habilitadas para las llamadas a la API de FileSystem que devuelven un error debido a problemas de consistencia final de Amazon S3.
fs.s3.consistent.notification.SQS false Cuando se establece en true, las notificaciones de consistencia final se envían a una cola de Amazon SQS.
fs.s3.consistent.notification.SQS.queueName EMRFS-Inconsistency-<jobFlowId> Cambiar esta propiedad le permite especificar su propio nombre de cola de SQS para mensajes relativos a problemas de consistencia final de Amazon S3.
fs.s3.consistent.notification.SQS.customMsg none Esta propiedad le permite especificar información personalizada incluida en mensajes de SQS relativos a problemas de consistencia final de Amazon S3. Si no se especifica ningún valor para esta propiedad, el campo correspondiente en el mensaje está vacío.
fs.s3.consistent.dynamodb.endpoint none Esta propiedad le permite especificar un punto de enlace de DynamoDB personalizado para sus metadatos de vista consistente.
fs.s3.useRequesterPaysHeader false Si se establece en true, esta propiedad permite que Amazon S3 envíe solicitudes a buckets con la opción de pagador de solicitudes habilitada.