

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Write Ahead Logs (WAL) para Amazon EMR
<a name="emr-hbase-wal"></a>

Con Amazon EMR 6.15 y versiones posteriores, puede escribir sus registros de HBase escritura anticipada (WAL) de Apache en el WAL de Amazon EMR. Con versiones anteriores de Amazon EMR, al crear un clúster con la opción **HBase en Amazon S3**, WAL es el único HBase componente de Apache que se almacena en el disco local para los clústeres, y puede almacenar otros componentes, como el directorio raíz, los archivos de almacenamiento (HFiles), los metadatos de las tablas y los datos en Amazon S3.

Puede usar Amazon EMR WAL para recuperar los datos que no se vaciaron en Amazon S3. Para realizar una copia de seguridad completa de sus HBase clústeres, opte por utilizar el servicio Amazon EMR WAL. Entre bastidores, `RegionServer` escribe sus registros de HBase escritura anticipada (WAL) en el WAL para Amazon EMR.

En caso de que su clúster o la zona de disponibilidad (AZ) estén en mal estado o no estén disponibles, puede crear un clúster nuevo, dirigirlo al mismo directorio raíz de S3 y al espacio de trabajo Amazon EMR WAL y recuperar automáticamente los datos en WAL en unos minutos. Para obtener más información, consulte [Restauración desde Amazon EMR WAL](emr-hbase-wal-restoring.md).

A partir de las versiones 7.3.0 y posteriores de Amazon EMR, Amazon EMR crea varios EMR para cada servidor y agrupa varias regiones HBase en una sola WAL de Amazon WALs EMR. De este modo, se mejora el HBase WAL de Apache para mejorar la utilización de los registros y optimizar los costes. Para configurar el número de instancias WAL de Amazon EMR por instancia HBase `RegionServer`, utilice el parámetro. `hbase.wal.regiongrouping.numgroups` Este parámetro está establecido en 2 de forma predeterminada. Hay dos tablas del sistema que no se incluyen en ningún grupo WAL: *meta* y *masterstore*. Estas tablas siempre utilizan su propia tabla individual WALs. 

Si ejecuta una versión anterior a Amazon EMR 7.3.0, le recomendamos que deshabilite manualmente las tablas del HBase clúster anterior para asegurarse de que todos los datos de la WAL de Amazon EMR se vacíen en Amazon S3. A continuación, elimine la Amazon EMR WAL anterior, finalice el clúster anterior y configure un clúster nuevo que ejecute la versión más reciente. Si tiene problemas y no puede deshabilitar las tablas del clúster anterior, puede finalizar directamente el clúster anterior y establecer `emr.wal.multiplex.migrate` en `true` en el nuevo clúster. Si se establece en true, HBase intentará reproducir los datos de las instancias WAL de Amazon EMR antiguas HBase durante la inicialización de la región y eliminará los antiguos después de la WALs reproducción. Este proceso de reproducción implica costes adicionales de lectura. Tras la migración, se recomienda configurar el clúster y establecer `emr.wal.multiplex.migrate` en `false`. Como alternativa, puede eliminar el parámetro para acelerar la inicialización de la región. HBase 

**nota**  
 Amazon EMR WAL elimina los datos después HBase de vaciarlos. Si HBase no vacía los datos, Amazon EMR WAL los conserva durante un máximo de 30 días. Transcurridos 30 días, Amazon EMR WAL elimina automáticamente los datos. Amazon EMR conserva las instancias de WAL durante un máximo de 30 días a partir de la finalización de un clúster de EMR. Sin embargo, si lanza un nuevo clúster habilitado para WAL desde el mismo directorio raíz de S3 dentro de esos 30 días, Amazon EMR no eliminará ninguna de las instancias de WAL del clúster anterior. Para obtener más información, consulte [Restauración desde Amazon EMR WAL](emr-hbase-wal-restoring.md).

En las siguientes secciones se describe cómo configurar y utilizar Amazon EMR WAL con su clúster de EMR HBase habilitado.

**Topics**
+ [

# Espacios de trabajo de Amazon EMR WAL
](emr-hbase-wal-workspaces.md)
+ [

# Permisos necesarios para Amazon EMR WAL
](emr-hbase-wal-permissions.md)
+ [

# Habilitación de Amazon EMR WAL
](emr-hbase-wal-enabling.md)
+ [

# Restauración desde Amazon EMR WAL
](emr-hbase-wal-restoring.md)
+ [

# Uso de configuraciones de seguridad con Amazon EMR WAL
](emr-hbase-wal-security.md)
+ [

# Acceda a Amazon EMR WAL a través de AWS PrivateLink
](emr-hbase-wal-privatelink.md)
+ [

# Descripción de los precios y las métricas de Amazon EMR WAL
](emr-hbase-wal-metrics.md)
+ [

# Etiquetado de espacios de trabajo de WAL
](emr-hbase-wal-tagging.md)
+ [

# Replicación entre clústeres EMR WAL
](emr-hbase-wal-cross-cluster.md)
+ [

# Consideraciones y regiones para Amazon EMR WAL
](emr-hbase-wal-considerations.md)
+ [

# Referencia de la (EMRWAL) CLI de Amazon EMR WAL
](emrwalcli-ref.md)

# Espacios de trabajo de Amazon EMR WAL
<a name="emr-hbase-wal-workspaces"></a>

Amazon EMR WAL añade el concepto de espacios de trabajo de WAL. Un espacio de *trabajo WAL* es un contenedor lógico de. WALs Cada registro de escritura anticipada de Amazon EMR WAL está encapsulado en un espacio de trabajo de WAL. Un clúster de EMR escribe WALs exactamente en un espacio de trabajo de WAL que se configura al lanzar el clúster, o en el `defaultWALworkspace` si no se especifica un espacio de trabajo. Los espacios de trabajo de WAL no están relacionados con ninguna HBase terminología existente, como los espacios de nombres.

Puede usar los espacios de trabajo de WAL para reducir el alcance de los permisos de la IAM de Amazon EMR WAL e incluir solo los espacios de trabajo a los que el clúster necesita acceder. También puede etiquetar su espacio de trabajo de WAL para el control de acceso basado en etiquetas. Para obtener más información acerca del etiquetado, consulte [Etiquetado de espacios de trabajo de WAL](emr-hbase-wal-tagging.md):

![\[HBase architecture diagram showing write request flow through RegionServers, MemStore, and data storage.\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/wal-new.png)


# Permisos necesarios para Amazon EMR WAL
<a name="emr-hbase-wal-permissions"></a>

Para que el clúster se conecte a Amazon EMR WAL, el perfil de instancia del clúster requiere determinados permisos de IAM:
+ Amazon EMR utiliza el rol vinculado a servicios [https://docs.aws.amazon.com/emr/latest/ManagementGuide/using-service-linked-roles-wal.html](https://docs.aws.amazon.com/emr/latest/ManagementGuide/using-service-linked-roles-wal.html) para recuperar el estado de un clúster. Amazon EMR crea automáticamente este rol vinculado al servicio cuando crea un espacio de trabajo de WAL, o HBase creará el rol vinculado al servicio cuando configure un espacio de trabajo para Amazon EMR WAL y el rol vinculado al servicio aún no existe.

  Antes de poder habilitar Amazon EMR WAL para un clúster, debe configurar los permisos para permitir la creación automática del rol vinculado a servicios AWSServiceRoleForEMRWAL. Para obtener más información y un ejemplo de instrucción que añada esta capacidad, consulte [Uso de roles vinculados a servicios para el registro de escritura anticipada](https://docs.aws.amazon.com/emr/latest/ManagementGuide/using-service-linked-roles-wal.html#using-service-linked-roles-permissions-wal).
+ Dado que Amazon EMR WAL usa HBase Write Ahead Log (WAL), sus clústeres deben usar HBase WAL. Los siguientes son los permisos de IAM mínimos que necesita para ejecutarse. HBase Añada estos a la política de permisos para su perfil de instancia:

  ```
  emrwal:DeleteWal
  emrwal:CreateWal
  emrwal:CreateWorkspace
  emrwal:AppendEdit
  emrwal:ReplayEdits
  emrwal:GetCurrentWalTime
  emrwal:CompleteWalFlush
  emrwal:ListWALs
  emrwal:DescribeWAL
  emrwal:TrimWAL
  emrwal:ArchiveWAL
  emrwal:ArchiveWALCheckPoint
  ```
**nota**  
Si limita el ámbito de los permisos de Amazon EMR WAL a solo al conjunto mínimo, algunos comandos de la [EMRWALCLI](emrwalcli-ref.md) no tendrán los permisos necesarios para ejecutarse.

# Habilitación de Amazon EMR WAL
<a name="emr-hbase-wal-enabling"></a>

Siga los pasos siguientes para habilitar la escritura en Amazon EMR WAL al crear un clúster con AWS Command Line Interface.

**nota**  
No puede habilitar Amazon EMR WAL para un clúster que ya se está ejecutando ni puede lanzar dos clústeres con el mismo directorio raíz de S3. Para obtener más información, consulte [Consideraciones y regiones para Amazon EMR WAL](emr-hbase-wal-considerations.md).

1. Antes de poder crear un clúster habilitado para Amazon EMR WAL, debe añadir los permisos necesarios al perfil de instancia que planea usar con el clúster. Para obtener más información, consulte [Permisos necesarios para Amazon EMR WAL](emr-hbase-wal-permissions.md).

1. Creación de un clúster desde la AWS CLI. Utilice la opción `--configurations` para proporcionar un objeto de configuración JSON que especifique la propiedad`hbase.emr.wal.enabled`, como se muestra en el siguiente ejemplo.
   + Las propiedades del objeto de configuración especifican el modo de almacenamiento y la ubicación del directorio raíz en Amazon S3. La ubicación de Amazon S3 que especifique debe estar en la misma región que su clúster de EMR, pero solo un clúster activo puede utilizar el mismo directorio HBase raíz en S3 a la vez.
   + Creación de un clúster con la configuración de grupos de instancia No puede usar Amazon EMR WAL con la configuración de las flotas de instancias. Para obtener más información sobre la creación de clústeres con grupos de instancias, consulte [Configuración de grupos de instancias uniformes](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-uniform-instance-group.html) en la *Guía de administración de Amazon EMR*.
   + Para ver los pasos de la consola para crear un clúster y un `create-cluster` ejemplo detallado en el que se utiliza AWS CLI, consulte [Crear un clúster con HBase](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-create.html).

1. Para habilitar WAL en el nuevo clúster, establezca la propiedad `hbase.emr.wal.enabled` en `true`. El siguiente comando contiene un fragmento de código JSON con un objeto de configuración de ejemplo.

   ```
   aws emr create-cluster --name "hbasewal" --release-label emr-6.x.y \
   --applications Name=HBase --use-default-roles --ec2-attributes KeyName=myKey \
   --instance-type m6i.xlarge --instance-count 1 --configurations hbase.json
   $cat hbase.json
   [
       {
           "Classification": "hbase-site",
           "Properties": {
               "hbase.rootdir": "s3://amzn-s3-demo-bucket/MyHBaseStore"
           }
       },
       {
           "Classification": "hbase",
           "Properties": {
               "hbase.emr.storageMode": "s3",
               "hbase.emr.wal.enabled": "true"
           }
       }
   ]
   ```

Cuando HBase esté en línea en el clúster recién creado, HBase escribirá automáticamente los datos de WAL en la WAL de Amazon EMR y utilizará la WAL de Amazon EMR con fines de recuperación. 

**Example 1: creación de un clúster de EMR que utilice Amazon EMR WAL**  

```
[
    {
        "Classification": "hbase-site",
        "Properties": {
            "hbase.rootdir": "s3://amzn-s3-demo-bucket/MyHBaseStore"
        }
    },
    {
        "Classification": "hbase",
        "Properties": {
            "hbase.emr.storageMode": "s3",
            "hbase.emr.wal.enabled": "true"
        }
    }
]
```

**Example 2: creación de un clúster de EMR con un espacio de trabajo de WAL personalizado**  

```
[
    {
        "Classification": "hbase-site",
        "Properties": {
            "hbase.rootdir": "s3://amzn-s3-demo-bucket/MyHBaseStore",
            "emr.wal.workspace": "customWorkspaceName"
        }
    },
    {
        "Classification": "hbase",
        "Properties": {
            "hbase.emr.storageMode": "s3",
            "hbase.emr.wal.enabled": "true"
        }
    }
]
```

# Restauración desde Amazon EMR WAL
<a name="emr-hbase-wal-restoring"></a>

Como el Amazon EMR WAL de su clúster original se conserva durante 30 días, puede restaurar y reutilizar el WAL para un clúster recién creado dentro de ese período de 30 días. Cuando lanza un clúster nuevo desde el mismo directorio raíz de S3, Amazon EMR conserva las instancias del WAL del clúster anterior. Si finaliza este nuevo clúster, el reloj de 30 días se reiniciará a partir del momento en que lo finaliza.

Utilice el siguiente procedimiento para restaurar un WAL existente con un nuevo clúster. Este proceso supone que creó el clúster original con Amazon EMR WAL habilitado.

1. En un plazo de 30 días a partir de la creación de un clúster compatible con WAL, cree uno nuevo Región de AWS igual que el clúster original. El nuevo clúster puede estar en la misma AZ o en una AZ diferente dentro de la misma región en la que se creó el clúster original.

   Configuración de las propiedades del objeto para especificar el modo de almacenamiento y la ubicación del directorio raíz en Amazon S3. La ubicación de Amazon S3 que especifique debe estar en la misma región que su clúster de EMR, pero solo un clúster activo puede utilizar el mismo directorio HBase raíz en S3 a la vez.

   Para ver los pasos de la consola para crear un clúster y un `create-cluster` ejemplo detallado en el que se utiliza AWS CLI, consulte [Crear un clúster con HBase](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-create.html).

1. Para usar el Amazon EMR WAL existente para el nuevo clúster, establezca la propiedad `hbase.emr.wal.enabled` en `true`. E siguiente fragmento de JSON muestra un objeto de configuración de ejemplo.

```
[
    {
        "Classification": "hbase-site",
        "Properties": {
            "hbase.rootdir": "s3://amzn-s3-demo-bucket/MyHBaseStore"
        }
    },
    {
        "Classification": "hbase",
        "Properties": {
            "hbase.emr.storageMode": "s3",
            "hbase.emr.wal.enabled": "true"
        }
    }
]
```

# Uso de configuraciones de seguridad con Amazon EMR WAL
<a name="emr-hbase-wal-security"></a>

Amazon EMR cifra automáticamente los datos en tránsito entre el clúster y el servicio de Amazon EMR WAL, así como los datos en reposo en Amazon EMR WAL. Para obtener más información, consulte [Cifrado en reposo de Amazon EMR WAL](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption-options.html#emr-encryption-WAL). También puede usar una configuración de seguridad para traer sus propias claves del servicio AWS Key Management Service (KMS) y cifrar los datos que almacena en Amazon EMR WAL. 

Utilice uno de los siguientes métodos para seleccionar una configuración de seguridad al crear un clúster:

------
#### [ Console ]

Desde Consola de administración de AWS, especifique la configuración en **Configuración de seguridad y key pair EC2**.

![\[Security configuration section with search bar, refresh button, and options to browse or create configuration.\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/wal-configure-security.png)


------
#### [ CLI ]

Desde AWS CLI, defina el `--security-configuration` parámetro cuando utilice el comando [create-cluster](https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html).

------

Para obtener más información, consulte [Cifrado en reposo de Amazon EMR WAL](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption-options.html#emr-encryption-WAL) y [Uso de configuraciones de seguridad para definir la seguridad del clúster](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-security-configurations.html) en la *Guía de administración de Amazon EMR*.

Para obtener más información relacionada con la seguridad sobre WAL, consulte [Uso de roles vinculados a servicios para el registro anticipado](https://docs.aws.amazon.com/emr/latest/ManagementGuide/using-service-linked-roles-wal.html).

# Acceda a Amazon EMR WAL a través de AWS PrivateLink
<a name="emr-hbase-wal-privatelink"></a>

Si desea mantener su conexión dentro de la AWS red, Amazon EMR WAL ofrece AWS PrivateLink soporte. Para configurarlo AWS PrivateLink, utilice Consola de administración de AWS o AWS Command Line Interface (AWS CLI) para crear un punto final de VPC de interfaz que se conecte a Amazon EMR WAL. *Para obtener más información, consulte [Acceder a un AWS servicio mediante un punto final de VPC de interfaz](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) en la AWS PrivateLink Guía.*

Los pasos básicos son los siguientes:

1. Utilice la consola de Amazon VPC para [crear un punto de conexión de VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint-aws). Seleccione **Puntos de conexión** y, a continuación, **Crear punto de conexión**.

1. Mantenga la categoría de servicio como **AWS servicios**.

1. En la barra de búsqueda del panel de **Servicios**, escriba **emrwal** y, a continuación, seleccione el servicio etiquetado `com.amazonaws.region.emrwal.prod`.

1. Seleccione su VPC y guarde el punto de conexión. Asegúrese de conectar los mismos grupos de seguridad al punto de conexión de la VPC que conecta al clúster de EMR.

1. Si lo desea, ahora puede habilitar los nombres del host DNS privados para su nuevo punto de conexión. Establezca **Habilitación de nombres de host DNS** y **Habilitación de soporte de DNS** en `true` para su VPC. A continuación, seleccione su ID de punto de conexión, seleccione **Editar la configuración de la VPC** en el menú **Acciones** y habilite los nombres DNS privados.
   + Los nombres de host DNS privados del punto de conexión seguirán el formato `prod.emrwal.region.amazonaws.com`.
   + Si no habilita nombres de host DNS privados, Amazon VPC proporciona un nombre de punto de conexión de DNS que puede utilizar en el formato `endpointID.prod.emrwal.region.vpce.amazonaws.com`.

1. Para usar su AWS PrivateLink punto de conexión, modifique la `emr.wal.client.endpoint` configuración cuando cree su [clúster habilitado para Amazon EMR WAL](emr-hbase-wal-enabling.md), como se muestra en el siguiente ejemplo:

   ```
   [
       {
           "Classification": "hbase-site",
           "Properties": {
               "hbase.rootdir": "s3://amzn-s3-demo-bucket/MyHBaseStore",
               "emr.wal.workspace": "customWorkspaceName",
               "emr.wal.client.endpoint": "https://prod.emrwal.region.amazonaws.com"
           }
       },
       {
           "Classification": "hbase",
           "Properties": {
               "hbase.emr.storageMode": "s3",
               "hbase.emr.wal.enabled": "true"
           }
       }
   ]
   ```

También puede utilizar la política VPCE para permitir o restringir el acceso a la WAL de Amazon APIs EMR. Para obtener más información, consulte [Uso de políticas de punto de conexión para controlar el acceso a puntos de conexión de VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) en la *Guía de AWS PrivateLink *.

# Descripción de los precios y las métricas de Amazon EMR WAL
<a name="emr-hbase-wal-metrics"></a>


| Unidad de facturación de características principales | Details | 
| --- | --- | 
| EMR-WAL-Read-GiB | API calls to read data from your table are billed as ReadRequestGiB. This includes [`Get` and `Scan`](https://hbase.apache.org/book.html#_data_model_operations) operations. Reads are charged based on the sizes of the read items. Amazon EMR bills at a minimum of 1 byte. For example, if you read a 1234.12 bytes item, you're charged for 1235 bytes. Reads are aggregated every hour for billing and shown as GiBs. | 
| EMR-WAL-Write-GiB | API calls to write data from your table are billed as Write-GiB. This includes [https://hbase.apache.org/book.html#_data_model_operations](https://hbase.apache.org/book.html#_data_model_operations) operations. Writes are charged based on the sizes of the written items. Amazon EMR bills at a minimum of 1 byte. For example, if you write a 1234.12 bytes item, you're charged for 1235 bytes. Writes are aggregated every hour for billing and shown as GiBs. | 
| EMR-WAL-WALHours | El número WALs que almacenas en el servicio se factura como. `EMR-WAL-WALHours` Amazon EMR crea una WAL por región. HBase Por ejemplo, si crea 20 HBase tablas, incluidas las tablas del sistema, y cada tabla tiene dos HBase regiones, utilizará 28 800 horas de WAL, calculadas de la siguiente manera: <pre>  20 tables <br />x  2 Regions per table <br />x  1 WAL per Region <br />x 30 days <br />x 24 hours <br />-----------<br />28,800 EMR-WAL-WALHours</pre> | 

**Ejemplo: `EMRWALCount`**

![\[Line graph showing ResourceCount fluctuations over time, ranging from about 18.87 to 19.20.\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/wal-metric.png)


**Ejemplo`EMRWALWorkspaceCount`:**

![\[Graph showing ResourceCount fluctuations over time, ranging from 7.97 to 8.32.\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/wal-metric2.png)


# Etiquetado de espacios de trabajo de WAL
<a name="emr-hbase-wal-tagging"></a>

Puede añadir etiquetas a un espacio de trabajo al crear un nuevo espacio de trabajo y puede añadir, eliminar o enumerar las etiquetas de un espacio de trabajo activo para un clúster en ejecución. No puede etiquetar los recursos individuales del espacio de trabajo ni actualizar las etiquetas existentes; en su lugar, elimine las etiquetas no deseadas del espacio de trabajo y sustitúyalas.

Puede etiquetar los espacios de trabajo desde EMRWAL CLI. Para obtener una lista de comandos de EMRWAL CLI para etiquetar espacios de trabajo, consulte [Referencia de la (EMRWAL) CLI de Amazon EMR WAL](emrwalcli-ref.md).

El siguiente ejemplo de política de IAM ilustra un escenario que permite realizar operaciones CRUDL en el espacio de trabajo únicamente con la clave `resource_tag_allow_test_key` y el valor `resource_tag_allow_test_value` de etiquetado adecuados:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "s3:GetObject",
        "s3:PutObject",
        "s3:DeleteObject",
        "s3:ListBucket"
      ],
      "Effect": "Allow",
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/resource_tag_allow_test_key": [
            "resource_tag_allow_test_value"
          ]
        }
      },
      "Sid": "AllowEMRWAL"
    }
  ]
}
```

------

Para comprobar que la etiqueta ahora es necesaria para las operaciones del espacio de trabajo, utilice [Referencia de la (EMRWAL) CLI de Amazon EMR WAL](emrwalcli-ref.md) para llamar al comando [`listTagsForResource`](emrwalcli-ref.md#emrwalcli-ref-listtagsforresource) en `tagAllowResourceTag` para activar el espacio de trabajo con la etiqueta de recurso deseada. Si configuró la condición correctamente, el comando se ejecutará correctamente.

```
emrwal listTagsForResource -r us-east-1 -arn arn:aws:emrwal:us-east-1:arn:workspace/tagAllowResourceTag
Tag(Key=resource_tag_allow_test_key, Value=resource_tag_allow_test_value)
```

# Replicación entre clústeres EMR WAL
<a name="emr-hbase-wal-cross-cluster"></a>

A partir de EMR 7.5, EMR WAL admite la HBase replicación entre clústeres de registros de escritura anticipada. En este tema se muestra cómo habilitar la característica y comprobar que funciona. [Para obtener más información sobre la replicación en clústeres, consulte la replicación en clústeres en la documentación de Apache.](https://hbase.apache.org/book.html#_cluster_replication) HBase 

**nota**  
Los registros de escritura anticipada conllevan un costo de lectura adicional, ya que el proceso de replicación lee los datos del EMR WAL local. Para obtener más información sobre el costo, consulte [About Amazon EMR Releases](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-wal-metrics.html).

## Configuración de replicación entre clústeres
<a name="emr-hbase-wal-cross-cluster-setup"></a>

Para tener la misma experiencia de usuario, habilitar la función de replicación en EMR WAL es lo mismo que con los registros nativos de HBase escritura anticipada. En el siguiente procedimiento se muestra un ejemplo sencillo. [Para obtener más información, consulte la HBase documentación en Cluster Replication.](https://hbase.apache.org/book.html#_cluster_replication)

1. Inicie un clúster principal, que es la fuente de replicación, con EMR WAL habilitado. Para habilitar los registros de escritura anticipada, consulte [Habilitación de Amazon EMR WAL](emr-hbase-wal-enabling.md). Además, inicie un clúster homólogo. Para este clúster homólogo, puede optar por habilitar EMR WAL o no.

1. En ambos clústeres, cree una tabla:

   ```
   HBASE_CMD="sudo -u hbase hbase"
   echo "create 'test_replication_table',{NAME => 'CF'}" | $HBASE_CMD shell
   ```

1. Agregue una configuración de pares en el clúster principal y habilite la replicación de la tabla. Durante la adición de pares, necesita el nombre de host del nodo maestro del clúster homólogo, que es **PEER\$1DNS**.

   ```
   HBASE_CMD="sudo -u hbase hbase"
   PEER_DNS="ip-10-1-1-0.ec2.com"
   PEER_NAME="aws"
   TABLE_NAME="test_replication_table"
   
   ## Create peering with the destination cluster
   echo "add_peer '$PEER_NAME', CLUSTER_KEY => '$PEER_DNS:2181:/hbase'" | $HBASE_CMD shell
   
   ## List peers in the primary cluster to confirm peer setup
   echo "list_peers" | $HBASE_CMD shell
   
   ## Enable table replication
   echo "enable_table_replication '$TABLE_NAME'" | $HBASE_CMD shell
   ```

## Confirmación de la replicación entre clústeres
<a name="emr-hbase-wal-cross-cluster-confirm"></a>

Tras realizar los pasos de configuración, se habilita la replicación entre el clúster principal y el clúster homólogo. A continuación, se realiza una prueba que confirma que la replicación funciona.

1. Agregue datos en el clúster principal y verifique los datos replicados en el clúster homólogo.

   ```
   ## Write on primary cluster with HBase CLI
   
   put 'test_replication_table', 'aaa', 'CF:a', 'aaa_a1'
   put 'test_replication_table', 'bbb', 'CF:b', 'bbb_b1'
   put 'test_replication_table', 'ccc', 'CF:c', 'ccc_c1'
   ```

1. Confirme que la replicación en el clúster homólogo se ha realizado correctamente. En este caso, debería ver los datos replicados escritos desde el clúster principal al clúster homólogo.

   ```
   ### Scan on peer cluster with HBase CLI
   
   scan 'test_replication_table'
   ```

# Consideraciones y regiones para Amazon EMR WAL
<a name="emr-hbase-wal-considerations"></a>

## Consideraciones para Amazon EMR WAL
<a name="emr-hbase-wal-consid"></a>

En la siguiente lista se describen las consideraciones y limitaciones importantes de Amazon EMR WAL:
+ Amazon EMR WAL está disponible para su uso con las versiones 6.15.0 y posteriores de Amazon EMR.
+ Amazon EMR WAL es un servicio opcional de pago. Usted paga por lo que usa: lectura, escritura y almacenamiento de datos. Para obtener más información, consulte [Descripción de los precios y las métricas de Amazon EMR WAL](emr-hbase-wal-metrics.md) y la página [Precios de Amazon EMR](https://aws.amazon.com/emr/pricing/).
+ Amazon EMR WAL utiliza HBase Write Ahead Log (WAL). Para usar Amazon EMR WAL, sus clústeres deben usar HBase WAL.
+ Para habilitar Amazon EMR WAL al crear un clúster, debe contar con los permisos de rol necesarios. Para obtener más información, consulte [Uso de roles vinculados a servicios para el registro anticipado](https://docs.aws.amazon.com/emr/latest/ManagementGuide/using-service-linked-roles-wal.html).
+ Debe habilitar Amazon EMR WAL al crear el clúster con la, o la API Consola de administración de AWS AWS CLI, y debe usar la configuración de *grupos de instancias*. No puede habilitar Amazon EMR WAL en un clúster en ejecución si no creó el clúster con Amazon EMR WAL. Tampoco puede editar las configuraciones `hbase-site` para habilitar Amazon EMR WAL en un clúster en ejecución.
+ Solo puede habilitar Amazon EMR WAL en clústeres que usen Amazon S3 como directorio raíz.
+ Antes de la versión 7.5.0 de Amazon EMR, los registros en Amazon EMR WAL tenían que ocupar 4 MB o menos. Sin embargo, con Amazon EMR versión 7.5.0 y versiones posteriores, el tamaño máximo del registro en EMR WAL se puede configurar mediante la propiedad `emr.wal.max.payload.size`. El valor predeterminado es 1 GB. En el siguiente ejemplo se establece el tamaño máximo de registro en 2 GB:

  ```
  [
    {
      "Classification":"hbase-site",
      "Properties": {
         "emr.wal.max.payload.size": "2147483648"
      }
    }
  ]
  ```
+ No puede tener varios clústeres activos en el mismo directorio HBase raíz de Amazon S3.
+ No puede habilitar Amazon EMR WAL en clústeres de réplicas de lectura.
+ El WAL se replica en todas las zonas de disponibilidad del servicio administrado.
+ WAL perdura más allá del clúster y permanece disponible para el siguiente clúster..
+ No puede deshabilitar Amazon EMR WAL durante el lanzamiento o cuando el clúster esté operativo (en estado de ejecución).
+ Para obtener información sobre WAL y los límites del espacio de trabajo, consulte [puntos de conexión y cuotas de Amazon EMR](https://docs.aws.amazon.com/general/latest/gr/emr.html).

## Disponibilidad regional para Amazon EMR WAL
<a name="emr-hbase-wal-regions"></a>

El servicio Amazon EMR WAL está disponible en los siguientes lugares: Regiones de AWS
+ `ap-northeast-1`: Asia Pacífico (Tokio)
+ `ap-northeast-2`: Asia-Pacífico (Seúl)
+ `ap-southeast-1`: Asia Pacífico (Singapur)
+ `ap-south-1`: Asia-Pacífico (Mumbai)
+ `ap-southeast-2`: Asia Pacífico (Sídney)
+ `eu-central-1`: Europa (Fráncfort)
+ `eu-north-1`: Europa (Estocolmo)
+ `eu-west-1`: Europa (Irlanda)
+ `sa-east-1`: América del Sur (São Paulo)
+ `us-east-1`: Este de EE. UU. (Norte de Virginia)
+ `us-east-2`: Este de EE. UU. (Ohio)
+ `us-west-2`: Oeste de EE. UU. (Oregón)

Las siguientes regiones solo estarían disponibles con Amazon EMR versión 7.3.0 o posterior:
+ `ap-east-1`: Asia-Pacífico (Hong Kong)
+ `af-south-1`: África (Ciudad del Cabo) 
+ `ca-central-1`: Canadá (centro)
+ `eu-west-2`: Europa (Londres)

# Referencia de la (EMRWAL) CLI de Amazon EMR WAL
<a name="emrwalcli-ref"></a>

La *interfaz de línea de comandos (EMRWAL CLI)EMRWAL* es una herramienta unificada para administrar el registro de escritura anticipada (WAL) para Amazon EMR. La EMRWAL CLI se envía con los clústeres de EMR cuando se habilita WAL en el momento de crear un clúster. Para obtener más información acerca de la habilitación de WAL, consulte [Write Ahead Logs (WAL) para Amazon EMR](emr-hbase-wal.md).

La EMRWAL CLI incluye los siguientes comandos:

**Topics**
+ [

## `createWorkspace`
](#emrwalcli-ref-createworkspace)
+ [

## `deleteWal`
](#emrwalcli-ref-deletewal)
+ [

## `deleteWorkspace`
](#emrwalcli-ref-deleteworkspace)
+ [

## `listTagsForResource`
](#emrwalcli-ref-listtagsforresource)
+ [

## `listWals`
](#emrwalcli-ref-listwals)
+ [

## `listWorkspaces`
](#emrwalcli-ref-listworkspaces)
+ [

## `tagResource`
](#emrwalcli-ref-tagresource)
+ [

## `untagResource`
](#emrwalcli-ref-untagresource)

## `createWorkspace`
<a name="emrwalcli-ref-createworkspace"></a>

El comando `createWorkspace` crea un nuevo espacio de trabajo de Amazon EMR WAL.

**Uso**:

```
emrwal createWorkspace [-tags <tags>] [-e {endpoint}] [-r {Region}] -w {workspacename} [-h]
```

**Ejemplo:**

```
emrwal createWorkspace -w examplews
```

## `deleteWal`
<a name="emrwalcli-ref-deletewal"></a>

El comando `deleteWals` elimina el Amazon EMR WAL que especifique.

**Uso**:

```
emrwal deleteWal [-e {endpoint}] [-r {Region}] [-w {workspacename}] [-p <tablePrefix>] [-n <walName>] [-N <fullName>] [-R] [-m] [-h]
```

**Ejemplo:**

```
emrwal deleteWal -w examplews -p hbasetable -n examplewal
```

## `deleteWorkspace`
<a name="emrwalcli-ref-deleteworkspace"></a>

El comando `deleteWorkspace` elimina el espacio de trabajo de Amazon EMR WAL que especifique.

**Uso**:

```
emrwal deleteWorkspace [-e {endpoint}] [-r {Region}] -w {workspacename} [-h]
```

**Ejemplo:**

```
emrwal deleteWorkspace -w examplews
```

## `listTagsForResource`
<a name="emrwalcli-ref-listtagsforresource"></a>

El comando `listTagsForResource` enumera todas las etiquetas de pares clave-valor del espacio de trabajo de Amazon EMR WAL que especifique.

**Uso**:

```
emrwal listTagsForResource -arn {resource-arn} [-e {endpoint}] [-r {Region}] [-h]
```

**Ejemplo:**

```
emrwal listTagsForResource -arn arn:aws:emrwal::1234567891234:workspace/examplews
```

## `listWals`
<a name="emrwalcli-ref-listwals"></a>

El `listWals` comando muestra todos los Amazon EMR del espacio WALs de trabajo que especifique.

**Uso**:

```
emrwal listWals [-nextToken {token-string}] [-pageSize {integer}] [-e {endpoint}] [-r {Region}] [-w {workspacename}] [-p <tablePrefix>] [-M {integer}] [-h]
```

**Ejemplo:**

```
emrwal listWals -w examplews
```

## `listWorkspaces`
<a name="emrwalcli-ref-listworkspaces"></a>

El comando `listWorkspaces` enumera todos los espacios de Amazon EMR WAL que están disponibles para usted.

**Uso**:

```
emrwal listWorkspaces [-nextToken {token-string}] [-pageSize {integer}] [-e {endpoint}] [-r {Region}] [-M {integer}] [-h]
```

**Ejemplo:**

```
emrwal listWorkspaces
```

## `tagResource`
<a name="emrwalcli-ref-tagresource"></a>

El comando `tagResource` asigna una o más etiquetas de pares clave-valor al espacio de trabajo de Amazon EMR WAL que especifique.

**Uso**:

```
emrwal tagResource -arn {resource-arn} -tags <tags> [-e {endpoint}] [-r {Region}] [-h]
```

**Ejemplo:**

```
emrwal tagResource -arn arn:aws:emrwal::1234567891234:workspace/examplews -tags tag_key=tag_value
```

## `untagResource`
<a name="emrwalcli-ref-untagresource"></a>

El comando `untagResource` anula la asignación de una o más etiquetas de pares clave-valor al espacio de trabajo Amazon EMR WAL que especifique.

**Uso**:

```
emrwal untagResource -arn {resource-arn} -tagKeys <tagKeys> [-e {endpoint}] [-r {Region}] [-h]
```

**Ejemplo:**

```
emrwal untagResource -arn arn:aws:emrwal::1234567891234:workspace/examplews -tagKeys tag_key
```