

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.

# Apache HBase
<a name="emr-hbase"></a>

[HBase](https://aws.amazon.com/elasticmapreduce/details/hbase/)es una base de datos distribuida, no relacional y de código abierto desarrollada como parte del proyecto Hadoop de la Apache Software Foundation. HBase se ejecuta sobre el sistema de archivos distribuido Hadoop (HDFS) para proporcionar capacidades de bases de datos no relacionales para el ecosistema de Hadoop. HBase se incluye en la versión 4.6.0 y posteriores de Amazon EMR.

HBase funciona a la perfección con Hadoop, ya que comparte su sistema de archivos y sirve como entrada y salida directas al MapReduce marco y al motor de ejecución. HBase también se integra con Apache Hive, lo que permite realizar consultas similares a las de SQL sobre HBase tablas, combinarlas con tablas basadas en Hive y es compatible con la conectividad de bases de datos Java (JDBC). [Para obtener más información HBase, consulte [Apache y la documentación en el sitio web de Apache HBase](https://hbase.apache.org/). HBase ](http://hbase.apache.org/book.html) Para ver un ejemplo de cómo usarlo HBase con Hive, consulte la entrada del blog sobre AWS big data [Combine NoSQL y análisis masivamente paralelo con HBase Apache y Apache Hive en](https://aws.amazon.com/blogs/big-data/combine-nosql-and-massively-parallel-analytics-using-apache-hbase-and-apache-hive-on-amazon-emr/) Amazon EMR.

Con HBase Amazon EMR, también puede hacer copias de seguridad de sus HBase datos directamente en Amazon Simple Storage Service (Amazon S3) y restaurarlos a partir de una copia de seguridad creada anteriormente al lanzar un clúster. HBase Amazon EMR ofrece opciones adicionales para integrarse con Amazon S3 para la persistencia de datos y la recuperación de desastres. 
+ **HBase en Amazon S3**: con Amazon EMR versión 5.2.0 y versiones posteriores, puede utilizarlo en Amazon HBase S3 para almacenar el directorio HBase raíz y los metadatos de un clúster directamente en Amazon S3. Posteriormente, puede iniciar un nuevo clúster, que apunte a la ubicación del directorio raíz en Amazon S3. Solo un clúster a la vez puede usar la HBase ubicación en Amazon S3, con la excepción de un clúster de lectura y réplica. Para obtener más información, consulte [HBase en Amazon S3 (modo de almacenamiento de Amazon S3)](emr-hbase-s3.md).
+ **HBase réplicas de lectura:** la versión 5.7.0 y posteriores de Amazon EMR, incluida en Amazon HBase S3, admite clústeres de réplica y lectura. Un clúster de réplicas de lectura proporciona acceso de solo lectura a los archivos de almacén y metadatos de un clúster primario para operaciones de solo lectura. Para obtener más información, consulte [Uso de un clúster de réplicas de lectura](emr-hbase-s3.md#emr-hbase-s3-read-replica).
+ **HBase Instantáneas**: como alternativa a HBase Amazon S3, con la versión 4.0 de EMR y versiones posteriores, puede crear instantáneas de HBase sus datos directamente en Amazon S3 y, a continuación, recuperarlos con las instantáneas. Para obtener más información, consulte [Uso de instantáneas HBase](emr-hbase-snapshot.md).

**importante**  
Para el escalado de HBase clústeres de Amazon EMR, no recomendamos utilizar el [escalado gestionado ni el escalado](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-scaling.html) [con políticas personalizadas con](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-automatic-scaling.html) clústeres. HBase 

En la siguiente tabla se muestra la versión HBase incluida en la última versión de la serie Amazon EMR 7.x, junto con los componentes con los que se instala Amazon EMR. HBase

[Para ver la versión de los componentes que se incluyen HBase en esta versión, consulte Versiones de componentes de la versión 7.12.0.](emr-7120-release.md)


**HBase información sobre la versión de emr-7.12.0**  

| Etiqueta de versión de Amazon EMR | HBase Versión | Componentes instalados con HBase | 
| --- | --- | --- | 
| emr-7.12.0 | HBase 2.6.2-amzn-3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-hdfs-zkfc, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 

En la siguiente tabla se muestra la versión HBase incluida en la última versión de la serie Amazon EMR 6.x, junto con los componentes con los que se instala Amazon EMR. HBase

[Para ver la versión de los componentes que se incluyen HBase en esta versión, consulte Versiones de componentes de la versión 6.15.0.](emr-6150-release.md)


**HBase información sobre la versión de emr-6.15.0**  

| Etiqueta de versión de Amazon EMR | HBase Versión | Componentes instalados con HBase | 
| --- | --- | --- | 
| emr-6.15.0 | HBase 2.4.17-amzn-3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 

**nota**  
Apache HBase HBCK2 es una herramienta operativa independiente para reparar HBase regiones y tablas del sistema. En la versión 6.1.0 y posteriores de Amazon EMR, el archivo hbase-hbck2.jar se proporciona en `/usr/lib/hbase-operator-tools/` en el nodo principal. Para obtener más información sobre cómo crear y utilizar la herramienta, consulte [HBaseHBCK2](https://github.com/apache/hbase-operator-tools/tree/master/hbase-hbck2). 

En la siguiente tabla se muestra la versión HBase incluida en la última versión de la serie Amazon EMR 5.x, junto con los componentes con los que se instala Amazon EMR. HBase

[Para ver la versión de los componentes que se incluyen HBase en esta versión, consulte Versiones de componentes de la versión 5.36.2.](emr-5362-release.md)


**HBase información sobre la versión de emr-5.36.2**  

| Etiqueta de versión de Amazon EMR | HBase Versión | Componentes instalados con HBase | 
| --- | --- | --- | 
| emr-5.36.2 | HBase 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 

**Topics**
+ [

# Crear un clúster con HBase
](emr-hbase-create.md)
+ [

# HBase en Amazon S3 (modo de almacenamiento de Amazon S3)
](emr-hbase-s3.md)
+ [

# Write Ahead Logs (WAL) para Amazon EMR
](emr-hbase-wal.md)
+ [

# Uso del HBase shell
](emr-hbase-connect.md)
+ [

# Acceda a HBase las tablas con Hive
](emr-hbase-access-hive.md)
+ [

# Uso de instantáneas HBase
](emr-hbase-snapshot.md)
+ [

# Configuración HBase
](emr-hbase-configure.md)
+ [

# Vea la interfaz de HBase usuario
](hbase-web-ui.md)
+ [

# Ver archivos de HBase registro
](emr-hbase-log-files.md)
+ [

# Supervise HBase con Ganglia
](emr-hbase-ganglia.md)
+ [

# Supervisión de EMR con Amazon HBase CloudWatch
](emr-hbase-cw.md)
+ [

# Migración desde versiones anteriores HBase
](emr-hbase-migrate.md)
+ [

# HBase historial de versiones
](HBase-release-history.md)

# Crear un clúster con HBase
<a name="emr-hbase-create"></a>

Los procedimientos de esta sección abarcan los aspectos básicos del lanzamiento de un clúster mediante el Consola de administración de AWS y el AWS CLI. Para obtener información detallada sobre cómo planificar, configurar y lanzar clústeres de Amazon EMR, consulte [Planificar y configurar clústeres](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan.html) en la *Guía de administración de Amazon EMR*.

## Crear un clúster HBase mediante la consola
<a name="emr-hbase-create-console"></a>

Para ver los pasos rápidos para lanzar clústeres con la consola, consulte [Introducción a Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-gs) en la *Guía de administración de Amazon EMR*.

**Para lanzar un clúster HBase con la consola**

**

1. [Abra la consola Amazon EMR en https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr/)

1. Elija **Create cluster (Crear clúster)** y **Go to advanced options (Ir a las opciones avanzadas)**.

1. En **Software Configuration (Configuración de software)**, elija la **Amazon Release Version (Versión de Amazon)** 4.6.0 o posterior (recomendamos la versión más reciente). Elija **HBase**y otras aplicaciones según desee.

1. **Con Amazon EMR versión 5.2.0 y versiones posteriores, en **Configuración de HBase almacenamiento**, seleccione **HDFS** o S3.** Para obtener más información, consulte [HBase en Amazon S3 (modo de almacenamiento de Amazon S3)](emr-hbase-s3.md).

1.  Seleccione las demás opciones que necesite y, a continuación, elija **Create cluster (Crear clúster)**.

## Creación de un clúster mediante el uso de HBase AWS CLI
<a name="emr-hbase-cli"></a>

Utilice el siguiente comando para crear un clúster con el comando HBase instalado:

```
aws emr create-cluster --name "Test cluster" --release-label emr-7.12.0 \
--applications Name=HBase --use-default-roles --ec2-attributes KeyName=myKey \
--instance-type m5.xlarge --instance-count 3
```

**nota**  
Se incluyen caracteres de continuación de línea de Linux (\$1) 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 (^).

Si la usa HBase en Amazon S3, especifique la `--configurations` opción con una referencia a un objeto de configuración JSON. El objeto de configuración debe contener una `hbase-site` clasificación que especifique la ubicación en Amazon S3 donde se almacenan HBase los datos mediante la `hbase.rootdir` propiedad. También debe contener una clasificación `hbase`, que especifica `s3` utilizando la propiedad `hbase.emr.storageMode`. El siguiente ejemplo muestra un fragmento de JSON con estas opciones de configuración.

```
 1. [
 2.     {
 3.         "Classification": "hbase-site",
 4.         "Properties": {
 5.             "hbase.rootdir": "s3://amzn-s3-demo-bucket/MyHBaseStore"
 6.         }
 7.     },
 8.     {
 9.         "Classification": "hbase",
10.         "Properties": {
11.             "hbase.emr.storageMode": "s3"
12.         }
13.     }
14. ]
```

Para obtener más información HBase sobre Amazon S3, consulte[HBase en Amazon S3 (modo de almacenamiento de Amazon S3)](emr-hbase-s3.md). Para obtener más información sobre las clasificaciones, consulte [Configuración de aplicaciones](emr-configure-apps.md).

# HBase en Amazon S3 (modo de almacenamiento de Amazon S3)
<a name="emr-hbase-s3"></a>

Si ejecuta Amazon EMR HBase en la versión 5.2.0 o posterior, puede habilitarlo en Amazon HBase S3, lo que ofrece las siguientes ventajas:
+ El directorio raíz de HBase se almacena en Amazon S3, incluidos los metadatos de tabla y los archivos de almacén de HBase. Estos datos son persistentes fuera del clúster, están disponibles a través de las zonas de disponibilidad de Amazon EC2 y no tiene que recuperar mediante instantáneas u otros métodos.
+ Con los archivos de almacén en Amazon S3, puede dimensionar el clúster de Amazon EMR en función de sus requisitos informáticos en lugar de sus requisitos de datos, con una replicación 3x en HDFS.
+ Mediante la versión 5.7.0 de Amazon EMR o posteriores, puede configurar un clúster de réplicas de lectura, lo que le permite mantener copias de solo lectura de los datos en Amazon S3. Puede acceder a los datos desde el clúster de réplicas de lectura para realizar operaciones de lectura de forma simultánea y en caso de que el clúster principal deje de estar disponible.
+ En las versiones 6.2.0 a 7.3.0 de Amazon EMR, el HFile seguimiento persistente utiliza una tabla HBase del sistema llamada `hbase:storefile` para rastrear directamente las HFile rutas utilizadas para las operaciones de lectura. Esta característica está habilitada de forma predeterminada y no requiere ninguna migración manual. En las versiones posteriores a la 7.3.0, las HFile rutas se rastrean mediante un rastreador de archivos, que almacena las HFile rutas directamente en un metaarchivo, dentro del directorio de la tienda.

**nota**  
Los usuarios que utilizan una versión de Amazon EMR anterior a la 7.4.0 y van a migrar a EMR-7.4.0 y versiones posteriores, consulte [Migración desde HBase versiones anteriores](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-migrate.html) y siga la documentación de actualización disponible para garantizar una transición fluida.

La siguiente ilustración muestra los HBase componentes relevantes para HBase Amazon S3.

![\[HBase en la arquitectura Amazon S3.\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/hbase_s3.png)


## Habilitación HBase en Amazon S3
<a name="emr-hbase-s3-enable"></a>

Puede activarlo HBase en Amazon S3 mediante la consola de Amazon EMR AWS CLI, la o la API de Amazon EMR. La configuración es una opción durante la creación del clúster. Al utilizar la consola, elija la configuración mediante las **Advanced options (Opciones avanzadas)**. Al utilizar la AWS CLI, utilice la opción `--configurations ` para proporcionar un objeto de configuración JSON. 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 el clúster de Amazon EMR. Solo un clúster activo a la vez puede utilizar el mismo directorio HBase raíz en Amazon S3. Para ver los pasos de la consola y un ejemplo detallado de creación de clústeres utilizando el AWS CLI, consulte. [Crear un clúster con HBase](emr-hbase-create.md) Un objeto de configuración de ejemplo se muestra en el siguiente fragmento de JSON. 

```
{
  "Classification": "hbase-site",
  "Properties": {
    "hbase.rootdir": "s3://amzn-s3-demo-bucket/my-hbase-rootdir"}
},
{
  "Classification": "hbase",
  "Properties": {
  "hbase.emr.storageMode":"s3"
  }
}
```

**nota**  
Si utiliza un bucket de Amazon S3 como `rootdir` formulario HBase, debe añadir una barra al final del URI de Amazon S3. Por ejemplo, debe utilizar `"hbase.rootdir: s3://amzn-s3-demo-bucket/"`, en lugar de `"hbase.rootdir: s3://amzn-s3-demo-bucket"`, para evitar problemas. 

## Uso de un clúster de réplicas de lectura
<a name="emr-hbase-s3-read-replica"></a>

Después de configurar un clúster principal con HBase Amazon S3, puede crear y configurar un clúster de réplica y lectura que proporcione acceso de solo lectura a los mismos datos que el clúster principal. Esto resulta útil cuando se necesita acceso simultáneo a datos de consulta o acceso ininterrumpido si el clúster principal deja de estar disponible. La característica de réplica de lectura está disponible en la versión 5.7.0 de Amazon EMR y posteriores.

El clúster principal y el clúster de réplicas de lectura se configuran de la misma forma con una importante diferencia. Ambos apuntan a la misma ubicación `hbase.rootdir`. Sin embargo, la clasificación `hbase` del clúster de réplicas de lectura incluye la propiedad `"hbase.emr.readreplica.enabled":"true"`.

El clúster de réplicas de lectura está diseñado para operaciones de solo lectura y no se deben realizar acciones manuales de compactación o escritura en él. Para las versiones de Amazon EMR anteriores a la 7.4.0, se recomienda deshabilitar la compactación en el clúster de réplicas de lectura al habilitar la característica de réplicas de lectura. Esta precaución es necesaria porque, con la función de HFile seguimiento persistente habilitada en el clúster principal, es posible que el clúster de lectura-réplica compacte las tablas del sistema, lo que podría provocar una en el clúster principal. FileNotFoundException Al deshabilitar la compactación en el clúster de réplicas de lectura, se evitan las incoherencias de datos entre los clústeres principal y de réplicas de lectura.

Por ejemplo, dada la clasificación JSON del clúster principal, tal y como se ha mostrado anteriormente en el tema, la configuración de un clúster de réplicas de lectura para versiones de EMR anteriores a la 7.4.0 es la siguiente:

```
{
  "Classification": "hbase-site",
  "Properties": {
    "hbase.rootdir": "s3://amzn-s3-demo-bucket/my-hbase-rootdir",
    "hbase.regionserver.compaction.enabled": "false"			
  }
},
{
  "Classification": "hbase",
  "Properties": {
  "hbase.emr.storageMode":"s3",
  "hbase.emr.readreplica.enabled":"true"
  }
}
```

Para las versiones de Amazon EMR posteriores a la 7.3.0, ahora usamos la característica [Seguimiento de archivos de almacenamiento](#emr-hbase-store-file-tracking), por lo que no es necesario deshabilitar las compactaciones.

### Sincronización de la réplica de lectura al agregar datos
<a name="w2aac33c37c15c14"></a>

Como la réplica de lectura utiliza HBase StoreFiles los metadatos que el clúster principal escribe en Amazon S3, la réplica de lectura solo es tan actualizada como el almacén de datos de Amazon S3. Las siguientes directrices pueden ayudarle a minimizar el retardo entre el clúster principal y la réplica de lectura al escribir datos.
+ Cargue los datos de forma masiva en el clúster principal siempre que sea posible. Para obtener más información, consulte la documentación sobre la [carga masiva](http://hbase.apache.org/0.94/book/arch.bulk.load.html) en Apache. HBase 
+ Debe llevarse a cabo un vaciado que escriba archivos de almacén en Amazon S3 tan pronto como sea posible después de agregar los datos. Realice el vaciado manualmente o bien ajuste la configuración de vaciado para minimizar el retardo.
+ Si las compactaciones se pudieran ejecutar automáticamente, ejecute una compactación manual para evitar incoherencias cuando se activen las compactaciones.
+ En el clúster de lectura-réplica, ejecute el comando cuando se modifique algún metadato (por ejemplo, cuando se dividan o compacten HBase regiones, o cuando se agreguen o eliminen tablas). `refresh_meta`
+ En el clúster de réplicas de lectura, ejecute el comando `refresh_hfiles` cuando se añadan registros o se cambien en una tabla.

![\[Sincronizar datos con una réplica de lectura HBase\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/hbase-read-replica.png)


## Seguimiento persistente HFile
<a name="emr-hbase-s3-hfile-tracking"></a>

 HFile El seguimiento persistente utiliza una tabla HBase del sistema llamada `hbase:storefile` para rastrear directamente las HFile rutas utilizadas para las operaciones de lectura. Las nuevas HFile rutas se añaden a la tabla a medida que se añaden datos adicionales HBase. Esto elimina las operaciones de cambio de nombre como mecanismo de confirmación en HBase las rutas de escritura críticas y mejora el tiempo de recuperación al abrir una HBase región al leer la tabla del `hbase:storefile` sistema en lugar de la lista de directorios del sistema de archivos. Esta característica está habilitada de forma predeterminada en las versiones desde 6.2.0 hasta 7.3.0 de Amazon EMR y no requiere ningún paso de migración manual.

**nota**  
El HFile seguimiento persistente mediante la tabla del sistema HBase de archivos de almacenamiento no admite la función de replicación de HBase regiones. Para obtener más información sobre HBase la replicación regional, consulte Lecturas [altas disponibles coherentes con el cronograma](http://hbase.apache.org/book.html#arch.timelineconsistent.reads).

**Desactivar el seguimiento persistente HFile **

El HFile seguimiento persistente está activado de forma predeterminada a partir de la versión 6.2.0 de Amazon EMR. Para deshabilitar el HFile seguimiento persistente, especifique la siguiente anulación de configuración al lanzar un clúster:

```
{
  "Classification": "hbase-site",
  "Properties": {
    "hbase.storefile.tracking.persist.enabled":"false",
    "hbase.hstore.engine.class":"org.apache.hadoop.hbase.regionserver.DefaultStoreEngine"
  }
}
```

**nota**  
Al volver a configurar el clúster de Amazon EMR, se deben actualizar todos los grupos de instancias.

**Sincronización manual de la tabla de archivos de almacenamiento**

La tabla de archivos de almacenamiento se mantiene actualizada a medida que se crean nuevas HFile instancias. Sin embargo, si la tabla de archivos de almacenamiento no está sincronizada con los archivos de datos por algún motivo, se pueden usar los comandos a continuación para sincronizar los datos de forma manual:

**Sincronice la tabla de archivos de almacenamiento en una región en línea:**

`hbase org.apache.hadoop.hbase.client.example.RefreshHFilesClient <table>`

**Sincronice la tabla de archivos de almacenamiento en una región sin conexión:**
+ Elimine la tabla de archivos de almacenamiento znode.

  ```
  echo "ls /hbase/storefile/loaded" | sudo -u hbase hbase zkcli
  [<tableName>, hbase:namespace]
  # The TableName exists in the list
  echo "delete /hbase/storefile/loaded/<tableName>" | sudo -u hbase hbase zkcli
  # Delete the Table ZNode
  echo "ls /hbase/storefile/loaded" | sudo -u hbase hbase zkcli
  [hbase:namespace]
  ```
+ Asigne la región (ejecute en el intérprete de comandos de HBase).

  ```
  hbase cli> assign '<region name>'
  ```
+ Si se produce un error en la asignación.

  ```
  hbase cli> disable '<table name>'
  hbase cli> enable '<table name>'
  ```

**Escalar la tabla de archivos de almacenamiento**

La tabla de archivos de almacenamiento se divide en cuatro regiones de forma predeterminada. Si la tabla de archivos de almacenamiento aún tiene una gran carga de escritura, se puede dividir aún más manualmente.

Para dividir una región activa específica, utilice el siguiente comando (ejecute en el intérprete de comandos de HBase).

```
hbase cli> split '<region name>'
```

Para dividir la tabla, utilice el siguiente comando (ejecute en el intérprete de comandos de HBase).

```
hbase cli> split 'hbase:storefile'
```

## Seguimiento de archivos de almacenamiento
<a name="emr-hbase-store-file-tracking"></a>

De forma predeterminada, utilizamos la **FileBasedStoreFileTracker**implementación. Esta implementación crea nuevos archivos directamente en el directorio de la tienda, lo que evita la necesidad de realizar operaciones de cambio de nombre. Mantiene una lista de las instancias de hfile confirmadas en la memoria, con respaldo de los metarchivos de cada directorio de la tienda. Cada vez que se confirma un nuevo archivo hfile, se actualiza la lista de *archivos rastreados* en el almacén en cuestión y se escribe un nuevo metaarchivo con el contenido de la lista, y se descarta el metarchivo anterior, que contiene una lista obsoleta. Puede encontrar más información sobre el seguimiento de archivos de [almacén en la *guía de HBase referencia de Apache* en el apartado Seguimiento de archivos](https://hbase.apache.org/book.html#storefiletracking) de almacén.

La implementación del FileBasedStoreFile rastreador está habilitada de forma predeterminada, a partir de la versión 7.4.0 de Amazon EMR:

```
{
  "Classification": "hbase-site",
  "Properties": {
    hbase.store.file-tracker.impl: "org.apache.hadoop.hbase.regionserver.storefiletracker.FileBasedStoreFileTracker"
   }
}
```

Para deshabilitar la FileBasedStoreFileTracker implementación, especifique la siguiente anulación de configuración al lanzar un clúster:

```
{
  "Classification": "hbase-site",
  "Properties": {
    hbase.store.file-tracker.impl: "org.apache.hadoop.hbase.regionserver.storefiletracker.DefaultStoreFileTracker"
   }
}
```

**nota**  
Al volver a configurar el clúster de Amazon EMR, se deben actualizar todos los grupos de instancias.

## Consideraciones operativas
<a name="emr-hbase-s3-performance"></a>

HBase los servidores de región se utilizan BlockCache para almacenar las lecturas de datos en la memoria y BucketCache para almacenar las lecturas de datos en el disco local. Además, los servidores de región suelen almacenar MemStore las escrituras de datos en la memoria y utilizan los registros de escritura anticipada para almacenar las escrituras de datos en HDFS antes de que los datos se escriban en Amazon HBase StoreFiles S3. El rendimiento de lectura del clúster se refiere a la frecuencia con la que un registro puede recuperarse en memoria o en las cachés de disco. Si se pierde la memoria caché, el registro se lee desde Amazon S3, que tiene una latencia y una desviación estándar significativamente más altas que la lectura desde HDFS. StoreFile Además, las velocidades de solicitud máximas en Amazon S3 son más bajas que las que se pueden conseguir en la caché local, por lo que el almacenamiento de datos en caché podría ser importante para cargas de trabajo con lectura intensiva. Para obtener más información, consulte [Optimizar el rendimiento de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/PerformanceOptimization.html) en la *Guía del usuario de Amazon Simple Storage Service*.

Para mejorar el rendimiento, le recomendamos que almacene en caché el máximo posible del conjunto de datos en el almacenamiento de instancias de EC2. Como BucketCache utiliza el almacenamiento de instancias EC2 del servidor regional, puede elegir un tipo de instancia EC2 con un almacén de instancias suficiente y añadir el almacenamiento de Amazon EBS para acomodar el tamaño de caché requerido. También puede aumentar el BucketCache tamaño de los almacenes de instancias adjuntos y los volúmenes de EBS mediante la propiedad. `hbase.bucketcache.size` La configuración predeterminada es 8 192 MB.

En el caso de las escrituras, la MemStore frecuencia de las descargas y el número de descargas StoreFiles presentes durante las compactaciones menores y mayores pueden contribuir considerablemente a aumentar los tiempos de respuesta de los servidores regionales. Para obtener un rendimiento óptimo, considere la posibilidad de aumentar el tamaño del multiplicador de HRegion bloques y de MemStore descarga, lo que aumentará el tiempo transcurrido entre las compactaciones principales, pero también aumentará el retraso en la coherencia si utiliza una réplica de lectura. En algunos casos, es posible obtener un mejor rendimiento mediante tamaños de bloque de archivo más grandes (pero inferiores a 5 GB) para activar la funcionalidad de carga multiparte de Amazon S3 en EMRFS. El tamaño de bloque predeterminado de Amazon EMR es de 128 MB. Para obtener más información, consulte [Configuración de HDFS](emr-hdfs-config.md). No son frecuentes los clientes que superen un tamaño de bloque de 1 GB al realizar un análisis comparativo del rendimiento con vaciados y compactaciones. Además, HBase las compactaciones y los servidores regionales funcionan de forma óptima cuando es necesario compactar menos. StoreFiles 

Las tablas pueden tardar mucho en eliminarse en Amazon S3, ya que es necesario cambiar de nombre directorios grandes. Considere la posibilidad de deshabilitar las tablas en lugar de eliminarlas.

Existe un proceso HBase más limpio que limpia los archivos WAL antiguos y almacena los archivos. En la versión 5.17.0 de Amazon EMR y posteriores, el limpiador está habilitado de forma global y se pueden utilizar las siguientes propiedades de configuración para controlar su comportamiento.


| Propiedad de configuración | Predeterminado | Description (Descripción) | 
| --- | --- | --- | 
|  `hbase.regionserver.hfilecleaner.large.thread.count`  |  1  |  El número de subprocesos asignados a la limpieza ha caducado mucho. HFiles  | 
|  `hbase.regionserver.hfilecleaner.small.thread.count`  |  1  |  El número de subprocesos asignados a la limpieza expirado es pequeño HFiles.  | 
|  `hbase.cleaner.scan.dir.concurrent.size`  |  Se establece en la cuarta parte de los núcleos disponibles.  |  El número de subprocesos para escanear los WALs directorios antiguos.  | 
|  `hbase.oldwals.cleaner.thread.size`  |  2  |  El número de subprocesos que se van a limpiar WALs en el WALs directorio antiguo.  | 

En Amazon EMR 5.17.0 y versiones anteriores, el funcionamiento del limpiador puede afectar al rendimiento de las consultas cuando se ejecutan cargas de trabajo pesadas, por lo que le recomendamos que únicamente habilite el limpiador fuera de las horas punta. El limpiador tiene los siguientes comandos de HBase shell:
+ `cleaner_chore_enabled` consulta si el limpiador está habilitado.
+ `cleaner_chore_run` ejecuta manualmente el limpiador para eliminar archivos.
+ `cleaner_chore_switch` habilita o deshabilita el limpiador y devuelve el estado anterior del limpiador. Por ejemplo, `cleaner_chore_switch true` habilita el limpiador.

### Propiedades para ajustar HBase el rendimiento en Amazon S3
<a name="emr-hbase-s3-properties"></a>

Los siguientes parámetros se pueden ajustar para ajustar el rendimiento de la carga de trabajo cuando se utiliza HBase en Amazon S3.


| Propiedad de configuración | Predeterminado | Description (Descripción) | 
| --- | --- | --- | 
|  `hbase.bucketcache.size`  |  8 192  |  La cantidad de espacio en disco, en MB, reservado en el servidor regional, los almacenes de instancias Amazon EC2 y los volúmenes de EBS para almacenamiento. BucketCache La configuración se aplica a todas las instancias de servidor de región. BucketCache Los tamaños más grandes suelen corresponder a un rendimiento mejorado  | 
|  `hbase.hregion.memstore.flush.size`  |  134217728  |  El límite de datos, en bytes, a partir del cual el vaciado de memstore en Amazon S3 se activa.  | 
|  `hbase.hregion.memstore.block.multiplier`  |  4  |  Multiplicador que determina el límite MemStore superior en el que se bloquean las actualizaciones. Si `hbase.hregion.memstore.flush.size` se MemStore supera el valor multiplicado por este valor, las actualizaciones se bloquean. MemStore Es posible que las descargas y la compactación desbloqueen las actualizaciones.  | 
|  `hbase.hstore.blockingStoreFiles`  |  10  |  La cantidad máxima StoreFiles que puede haber en una tienda antes de que se bloqueen las actualizaciones.  | 
|  `hbase.hregion.max.filesize`  |  10737418240  |  El tamaño máximo de una región antes de que la región se divida.  | 

### Cierre y restauración de un clúster sin pérdida de datos
<a name="emr-hbase-s3-shutdown"></a>

Para cerrar un clúster de Amazon EMR sin perder datos que no se hayan escrito en Amazon S3, debe vaciar la MemStore memoria caché en Amazon S3 para escribir nuevos archivos de almacenamiento. En primer lugar, tendrá que deshabilitar todas las tablas. La siguiente configuración de paso puede utilizarse al añadir un paso al clúster. Para obtener más información, consulte [Uso de pasos con la AWS CLI y la consola](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-work-with-steps.html) en la *Guía de administración de Amazon EMR*.

```
Name="Disable all tables",Jar="command-runner.jar",Args=["/bin/bash","/usr/lib/hbase/bin/disable_all_tables.sh"]	
```

De forma alternativa, puede ejecutar el siguiente comando bash directamente.

```
bash /usr/lib/hbase/bin/disable_all_tables.sh
```

Tras deshabilitar todas las tablas, vacíe la `hbase:meta` tabla con el HBase shell y el siguiente comando.

```
flush 'hbase:meta'
```

A continuación, puede ejecutar un script de shell incluido en el clúster de Amazon EMR para vaciar la caché. MemStore Puede agregarlo como un paso o ejecutarlo directamente a través de la AWS CLI en el clúster. El script deshabilita todas HBase las tablas, lo que provoca que MemStore el servidor de cada región pase a Amazon S3. Si el script se completa de forma satisfactoria, los datos persisten en Amazon S3 y el clúster puede terminarse. 

Para reiniciar un clúster con los mismos HBase datos, especifique la misma ubicación de Amazon S3 que el clúster anterior, ya sea en la propiedad de `hbase.rootdir` configuración Consola de administración de AWS o mediante ella.

# 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
```

# Uso del HBase shell
<a name="emr-hbase-connect"></a>

Después de crear un HBase clúster, el siguiente paso es conectarse para HBase poder empezar a leer y escribir datos (los clústeres de lectura y réplica no admiten la escritura de datos). Puede usar el [HBase shell](https://hbase.apache.org/book.html#shell) para probar los comandos.

**Para abrir la HBase carcasa**

1. Use SSH para conectarse al servidor principal del HBase clúster. Para obtener más información sobre cómo conectarse al nodo principal de Amazon EMR mediante SSH, consulte [Conectarse al nodo principal de Amazon EMR mediante SSH](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-ssh.html) en la *Guía de administración de Amazon EMR*. 

1. Ejecute `hbase shell`. El HBase shell se abre con un mensaje similar al siguiente.

   ```
   hbase(main):001:0>
   ```

Puede ejecutar comandos de HBase shell desde la línea de comandos. Para obtener más información sobre los comandos del shell y cómo llamarlos, escriba help en la HBase línea de comandos y pulse Entrar. 

## Creación de una tabla
<a name="emr-hbase-create-table"></a>

El siguiente comando crea una tabla denominada “t1” que tiene una única familia de columnas denominada “f1”.

```
hbase(main):001:0>create 't1', 'f1'
```

## Colocar un valor
<a name="emr-hbase-put-value"></a>

El siguiente comando coloca el valor “v1” para la fila “r1” en la tabla “t1” y la columna “f1”.

```
hbase(main):001:0>put 't1', 'r1', 'f1:col1', 'v1'
```

## Obtener un valor
<a name="emr-hbase-get-value"></a>

El siguiente comando obtiene los valores para la fila “r1” de la tabla “t1”.

```
hbase(main):001:0>get 't1', 'r1'
```

## Eliminación de una tabla
<a name="emr-hbase-delete-table"></a>

El siguiente comando elimina y borra la tabla “t1”. 

```
hbase(main):001:0>drop 'ns1:t1',false
```

El valor booleano corresponde a si desea archivar la tabla o no, por lo que puede configurarlo como `true` si desea guardarla. También puede ejecutar `drop 'ns1:t1'` sin ningún booleano para archivar la tabla.

# Acceda a HBase las tablas con Hive
<a name="emr-hbase-access-hive"></a>

HBase y [Apache Hive](emr-hive.md) están perfectamente integrados, lo que le permite ejecutar cargas de trabajo de procesamiento masivo en paralelo directamente sobre los datos almacenados en. HBase Para usar Hive con ellas HBase, normalmente puedes lanzarlas en el mismo clúster. Sin embargo, puedes lanzar Hive y HBase en clústeres independientes. Ejecutar HBase Hive por separado en distintos clústeres puede mejorar el rendimiento, ya que permite que cada aplicación utilice los recursos del clúster de forma más eficiente.

Los siguientes procedimientos muestran cómo conectarse a HBase un clúster mediante Hive. 

**nota**  
Solo puede conectar un clúster de Hive a un único HBase clúster. 

**Para conectar Hive a HBase**

1. Cree clústeres independientes con Hive e HBase instalado o cree un solo clúster con ambos HBase y Hive instalado.

1. Si utiliza clústeres independientes, modifique los grupos de seguridad para que HBase los puertos de Hive estén abiertos entre estos dos nodos principales.

1. Utilice SSH para conectar al nodo principal para el clúster con Hive instalado. Para obtener más información, consulte [Conectarse al nodo principal mediante SSH](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-ssh.html) en la *Guía de administración de Amazon EMR*.

1. Lance el shell Hive con el siguiente comando. 

   ```
   hive
   ```

1. (Opcional) No necesita hacer esto si HBase Hive se encuentra en el mismo clúster. Conecte el HBase cliente de su clúster de Hive al HBase clúster que contiene sus datos. En el siguiente ejemplo, *public-DNS-name* se reemplaza por el nombre DNS público del nodo principal del HBase clúster, por ejemplo:`ec2-50-19-76-67.compute-1.amazonaws.com`. 

   ```
   set hbase.zookeeper.quorum=public-DNS-name;
   ```

1. Proceda a ejecutar las consultas de Hive en sus HBase datos según lo desee o consulte el siguiente procedimiento.

**Para acceder a HBase los datos de Hive**
+ Una vez realizada la conexión entre el Hive y HBase los clústeres (como se muestra en el procedimiento anterior), puede acceder a los datos almacenados en el HBase clúster creando una tabla externa en Hive. 

  El siguiente ejemplo, cuando se ejecuta desde la línea de comandos de Hive en el nodo principal, crea una tabla externa que hace referencia a los datos almacenados en una HBase tabla llamada. `inputTable` A continuación, puede hacer referencia `inputTable` a las instrucciones de Hive para consultar y modificar los datos almacenados en el HBase clúster. 

  ```
  set hbase.zookeeper.quorum=ec2-107-21-163-157.compute-1.amazonaws.com;
  
  create external table inputTable (key string, value string)
       stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
        with serdeproperties ("hbase.columns.mapping" = ":key,f1:col1")
        tblproperties ("hbase.table.name" = "t1");
  
  select count(key) from inputTable ;
  ```

Para ver un caso de uso más avanzado y un ejemplo de combinación HBase y Hive, consulte la entrada del blog sobre AWS big data, [Combine NoSQL y massively parallel analytics mediante HBase Apache y Apache Hive en](https://aws.amazon.com/blogs/big-data/combine-nosql-and-massively-parallel-analytics-using-apache-hbase-and-apache-hive-on-amazon-emr) Amazon EMR.

# Uso de instantáneas HBase
<a name="emr-hbase-snapshot"></a>

HBase utiliza una función de [instantáneas](https://hbase.apache.org/book.html#ops.snapshots) integrada para crear copias de seguridad ligeras de las tablas. En los clústeres de EMR, estas copias de seguridad se pueden exportar a Amazon S3 mediante EMRFS. Puede crear una instantánea en el nodo principal mediante el HBase shell. En este tema se muestra cómo ejecutar estos comandos de forma interactiva con el shell o mediante un paso mediante `command-runner.jar` el comando AWS CLI o AWS SDK para Java. Para obtener más información sobre otros tipos de HBase copias de seguridad, consulte las [HBase copias de seguridad](https://hbase.apache.org/book.html#ops.backup) en la HBase documentación.

## Crear una instantánea con una tabla
<a name="w2aac33c49b4"></a>

```
hbase snapshot create -n snapshotName -t tableName
```

Uso de command-runner.jar desde AWS CLI:

```
aws emr add-steps --cluster-id j-2AXXXXXXGAPLF \
--steps Name="HBase Shell Step",Jar="command-runner.jar",\
Args=[ "hbase", "snapshot", "create","-n","snapshotName","-t","tableName"]
```

AWS SDK para Java

```
HadoopJarStepConfig hbaseSnapshotConf = new HadoopJarStepConfig()
  .withJar("command-runner.jar")
  .withArgs("hbase","snapshot","create","-n","snapshotName","-t","tableName");
```

**nota**  
Si su nombre de instantánea no es único, la operación de creación devuelve un código `-1` o `255`, pero es posible que no vea un mensaje de error que indique que se realizó incorrectamente. Para utilizar el mismo nombre de instantánea, elimínelo y, a continuación, vuelva a crearlo.

## Eliminar una instantánea
<a name="w2aac33c49b6"></a>

```
hbase shell
>> delete_snapshot 'snapshotName'
```

## Ver información de instantánea
<a name="w2aac33c49b8"></a>

```
hbase snapshot info -snapshot snapshotName
```

## Exportar una instantánea a Amazon S3
<a name="w2aac33c49c10"></a>

**importante**  
Si no especifica un `-mappers` valor al exportar una instantánea, HBase utiliza un cálculo arbitrario para determinar el número de mapeadores. Este valor pueden ser muy grande en función del tamaño de la tabla, lo que afecta negativamente a la ejecución de trabajos durante la exportación. Por este motivo, le recomendamos que especifique el parámetro `-mappers`, el parámetro `-bandwidth` (que especifica el consumo de ancho de banda en megabytes por segundo) o ambos para limitar los recursos del clúster utilizados por la operación de exportación. De forma alternativa, puede ejecutar la operación de exportación de instantánea durante un periodo de bajo consumo.

```
hbase snapshot export -snapshot snapshotName \
-copy-to s3://amzn-s3-demo-bucket/folder -mappers 2
```

Se utiliza `command-runner.jar` desde: AWS CLI

```
aws emr add-steps --cluster-id j-2AXXXXXXGAPLF \
--steps Name="HBase Shell Step",Jar="command-runner.jar",\
Args=[ "hbase", "snapshot", "export","-snapshot","snapshotName","-copy-to","s3://amzn-s3-demo-bucket/folder","-mappers","2","-bandwidth","50"]
```

AWS SDK para Java:

```
HadoopJarStepConfig hbaseImportSnapshotConf = new HadoopJarStepConfig()
  .withJar("command-runner.jar")
  .withArgs("hbase","snapshot","export",
      "-snapshot","snapshotName","-copy-to",
      "s3://bucketName/folder",
      "-mappers","2","-bandwidth","50");
```

## Importar instantáneas desde Amazon S3
<a name="w2aac33c49c12"></a>

Aunque se trata de una importación, la HBase opción utilizada aquí sigue siéndolo`export`.

```
sudo -u hbase hbase snapshot export \
-D hbase.rootdir=s3://amzn-s3-demo-bucket/folder \
-snapshot snapshotName \
-copy-to hdfs://masterPublicDNSName:8020/user/hbase \
-mappers 2
```

Usando `command-runner.jar` desde AWS CLI:

```
aws emr add-steps --cluster-id j-2AXXXXXXGAPLF \
--steps Name="HBase Shell Step",Jar="command-runner.jar", \
Args=["sudo","-u","hbase","hbase snapshot export","-snapshot","snapshotName", \
"-D","hbase.rootdir=s3://amzn-s3-demo-bucket/folder", \
"-copy-to","hdfs://masterPublicDNSName:8020/user/hbase","-mappers","2","-chmod","700"]
```

AWS SDK para Java:

```
HadoopJarStepConfig hbaseImportSnapshotConf = new HadoopJarStepConfig()
  .withJar("command-runner.jar")
  .withArgs("sudo","-u","hbase","hbase","snapshot","export", "-D","hbase.rootdir=s3://path/to/snapshot",
      "-snapshot","snapshotName","-copy-to",
      "hdfs://masterPublicDNSName:8020/user/hbase",
      "-mappers","2","-chuser","hbase");
```

## Restaurar una tabla a partir de instantáneas del shell HBase
<a name="w2aac33c49c14"></a>

```
hbase shell
>> disable tableName
>> restore_snapshot snapshotName
>> enable tableName
```

HBase actualmente no admite todos los comandos de instantáneas que se encuentran en el HBase shell. Por ejemplo, no existe una opción de HBase línea de comandos para restaurar una instantánea, por lo que debe restaurarla dentro de un shell. Esto significa que `command-runner.jar` debe ejecutar un comando Bash. 

**nota**  
Dado que el comando que se utiliza aquí es `echo`, es posible que el comando del intérprete de comandos siga devolviendo errores incluso si el comando ejecutado por Amazon EMR devuelve un código de salida `0`. Consulte los registros de pasos, si decide ejecutar un comando de shell como paso.

```
echo 'disable tableName; \
restore_snapshot snapshotName; \
enable tableName' | hbase shell
```

Este es el paso utilizando la AWS CLI. En primer lugar, cree el siguiente archivo `snapshot.json`:

```
[
  {
    "Name": "restore",
    "Args": ["bash", "-c", "echo $'disable \"tableName\"; restore_snapshot \"snapshotName\"; enable \"tableName\"' | hbase shell"],
    "Jar": "command-runner.jar",
    "ActionOnFailure": "CONTINUE",
    "Type": "CUSTOM_JAR"
  }
]
```

```
aws emr add-steps --cluster-id j-2AXXXXXXGAPLF \
--steps file://./snapshot.json
```

AWS SDK para Java:

```
HadoopJarStepConfig hbaseRestoreSnapshotConf = new HadoopJarStepConfig()
  .withJar("command-runner.jar")
  .withArgs("bash","-c","echo $'disable \"tableName\"; restore_snapshot \"snapshotName\"; enable \"snapshotName\"' | hbase shell");
```

# Configuración HBase
<a name="emr-hbase-configure"></a>

Aunque la HBase configuración predeterminada debería funcionar para la mayoría de las aplicaciones, puede modificarla. HBase Para ello, utilice las propiedades de las clasificaciones de HBase configuración. Para obtener más información, consulte [Configuración de aplicaciones](emr-configure-apps.md).

El siguiente ejemplo crea un clúster con un directorio HBase raíz alternativo basado en un archivo de configuración`myConfig.json`, almacenado en Amazon S3.

**nota**  
Se incluyen caracteres de continuación de línea de Linux (\$1) 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 (^).

```
aws emr create-cluster --release-label emr-7.12.0 --applications Name=HBase \
--instance-type m5.xlarge --instance-count 3 --configurations https://s3.amazonaws.com/amzn-s3-demo-bucket/myfolder/myConfig.json
```

El archivo `myConfig.json` especifica la propiedad `hbase.rootdir` de la clasificación de configuración `hbase-site`, tal y como se muestra en el siguiente ejemplo. *ip-XXX-XX-XX-XXX.ec2.internal*Sustitúyalo por el nombre de host DNS interno del nodo principal del clúster.

```
[
  {
    "Classification":"hbase-site",
    "Properties": {
       "hbase.rootdir": "hdfs://ip-XXX-XX-XX-XXX.ec2.internal:8020/user/myCustomHBaseDir"
    }
  }
]
```

**nota**  
Con la versión 5.21.0 y posteriores de Amazon EMR, puede anular las configuraciones de clúster y especificar las clasificaciones de configuración adicionales para cada grupo de instancias en un clúster en ejecución. Para ello, utilice la consola Amazon EMR, el AWS Command Line Interface (AWS CLI) o el AWS SDK. Para obtener más información, consulte [Suministrar una configuración para un grupo de instancias en un clúster en ejecución](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps-running-cluster.html).

## Cambios en la asignación de memoria en YARN
<a name="emr-hbase-configure-yarn"></a>

HBase no se ejecuta como una aplicación de YARN, por lo que es necesario volver a calcular la memoria asignada a YARN y sus aplicaciones, lo que se traduce en una reducción de la memoria total disponible para YARN si HBase está instalada. Debe tener esto en cuenta a la hora de planificar la ubicación conjunta de las aplicaciones de YARN y HBase en los mismos clústeres. Los tipos de instancias con menos de 64 GB de memoria tienen la mitad de la memoria disponibleNodeManager, que luego se asigna a. HBase RegionServer En el caso de los tipos con una memoria superior a 64 GB, HBase RegionServer la memoria está limitada a 32 GB. Como regla general, la memoria de configuración de YARN es un múltiplo de la memoria de tareas MapReduce reductora.

Las tablas de abajo [Valores predeterminados para los ajustes de configuración de tareas](emr-hadoop-task-config.md#emr-hadoop-task-jvm) muestran los cambios en la configuración de YARN en función de la memoria necesaria HBase.

## HBase números de puerto
<a name="emr-hbase-ports"></a>

Algunos números de puerto elegidos HBase son diferentes de los predeterminados. A continuación se muestran las interfaces y los puertos para HBase Amazon EMR.


**HBase puertos**  

| Interfaz | Puerto | Protocolo | 
| --- | --- | --- | 
| HMaster | 16 000 | TCP | 
| HMaster INTERFAZ DE USUARIO | 16010 | HTTP | 
| RegionServer | 16020 | TCP | 
| RegionServer Información | 16030 | HTTP | 
| Servidor REST | 8070 | HTTP | 
| IU REST | 8085 | HTTP | 
| Servidor Thrift | 9090 | TCP | 
| IU Servidor Thrift | 9095 | HTTP | 

**importante**  
`kms-http-port` es 9700 y `kms-admin-port` es 9701 en la versión de lanzamiento de Amazon EMR 4.6.0 y posteriores.

## HBase configuración del sitio para optimizar
<a name="emr-hbase-settings-optimize"></a>

Puede establecer una o todas las configuraciones del HBase sitio para optimizar el HBase clúster para la carga de trabajo de la aplicación. Le recomendamos los siguientes ajustes como punto de partida en la investigación.

### zookeeper.session.timeout
<a name="emr-hbase-zookeeper.session.timeout"></a>

El tiempo de espera predeterminado es de 40 segundos (40 000 ms). Si un servidor de región se bloquea, esto es lo que tarda el servidor principal en advertir la ausencia de un servidor de región y comenzar la recuperación. Para ayudar a que el servidor principal se recupere con mayor rapidez, puede reducir este valor a un periodo de tiempo más corto. En el ejemplo siguiente se utilizan 30 segundos o 30 000 ms: 

```
[
  {
    "Classification":"hbase-site",
    "Properties": {
       "zookeeper.session.timeout": "30000"
    }
  }
]
```

### hbase.regionserver.handler.count
<a name="emr-hbase-hbase.regionserver.handler.count"></a>

Esto define el número de procesos que el servidor de región mantiene abiertos para servir las solicitudes a las tablas. El valor predeterminado de 10 es bajo, a fin de impedir que los usuarios finalicen sus servidores de región al utilizar grandes búferes de escritura con un elevado número de clientes simultáneos. La regla general es mantener este número bajo cuando la carga útil por solicitud se aproxime al rango de MB (grandes operaciones de venta, escaneos con una memoria caché grande) y alto cuando la carga útil es pequeña (opciones de venta pequeñas ICVs, eliminaciones). El siguiente ejemplo aumenta el número de subprocesos abiertos a 30: 

```
[
  {
    "Classification":"hbase-site",
    "Properties": {
       "hbase.regionserver.handler.count": "30"
    }
  }
]
```

### hbase.hregion.max.filesize
<a name="emr-hbase-hbase.hregion.max.filesize"></a>

Este parámetro controla el tamaño, en bytes, de las regiones individuales. De forma predeterminada, está establecido en `1073741824`. Si escribes muchos datos en tu HBase clúster y eso provoca que se divida con frecuencia, puedes aumentar este tamaño para agrandar las regiones individuales. Esto reduce las divisiones, pero se tarda más tiempo en equilibrar la carga de las regiones de un servidor a otro. 

```
[
  {
    "Classification":"hbase-site",
    "Properties": {
       "hbase.hregion.max.filesize": "1073741824"
    }
  }
]
```

### hbase.hregion.memstore.flush.size
<a name="emr-hbase-hbase.hregion.memstore.flush.size"></a>

Este parámetro controla el tamaño máximo de memstore, en bytes, antes de que se vacíe al disco. De forma predeterminada, es `134217728`. Si la carga de trabajo consta de ráfagas cortas de operaciones de escritura, es posible que desee aumentar este límite para que todas las escrituras se mantengan en la memoria durante la ráfaga y se vacíen al disco después. Esto puede mejorar el rendimiento durante las ráfagas. 

```
[
  {
    "Classification":"hbase-site",
    "Properties": {
       "hbase.hregion.memstore.flush.size": "134217728"
    }
  }
]
```

## Consideraciones sobre el rendimiento
<a name="hbase-performance-considerations"></a>

### Habilitar Z Garbage Collector (ZGC) para HBase
<a name="hbase-performance-considerations-enable"></a>

Con Amazon EMR versión 7.10.0 y versiones posteriores, los usuarios pueden configurar sin problemas los ajustes de recolección de basura (GC) para su clúster. HBase Recomendamos habilitar Z Garbage Collector (ZGC) para lograr tiempos de pausa de GC de baja latencia y de menos de milisegundos.

Esta es una configuración para habilitar ZGC para: HBase RegionServer

```
[
    {
        "Classification": "hbase-env",
        "Properties": {},
        "Configurations": [
            {
                "Classification": "export",
                "Properties": {
                    "JAVA_HOME": "/usr/lib/jvm/jre-21",
                    "HBASE_REGIONSERVER_GC_OPTS": "\"-XX:+UseZGC -XX:+ZGenerational\""
                }
            }
        ]
    }
]
```

**nota**  
La variable de entorno **JAVA\$1HOME** debe configurarse cuando se usa el ZGC generacional (recomendado), ya que se introdujo en el JDK 21. Si desea usar el modo no generacional (sin `-XX:+ZGenerational`) del ZGC, no es necesario configurar el **JAVA\$1HOME**. En el JDK 24, se ha eliminado el modo no generacional del ZGC.

#### Afinamiento de ZGC
<a name="hbase-performance-considerations-tuning-"></a>

1. **Habilite la pila fija de JVM**

   El Z Garbage Collector (ZGC) funciona de manera más eficiente cuando se configura con una memoria de pila fija, lo que elimina la sobrecarga que supone devolver la memoria al sistema operativo. Para configurar la memoria de pila fija para su HBase clúster, utilice la siguiente configuración:

   ```
   [
       {
           "Classification": "hbase",
           "Properties": {
               "hbase.regionserver.fixed.heap.enabled": "true"
           }
       }
   ]
   ```

1. **Habilite el Pre-touch**

   La habilitación de pre-touch mejora el rendimiento de la recopilación de elementos no utilizados (GC) al reducir la latencia inicial y ofrecer un rendimiento más predecible. Para habilitar el pretoque en el HBase clúster, usa la siguiente configuración:

   ```
   [
       {
           "Classification": "hbase-env",
           "Properties": {},
           "Configurations": [
               {
                   "Classification": "export",
                   "Properties": {
                       "JAVA_HOME": "/usr/lib/jvm/jre-21",
                       "HBASE_REGIONSERVER_GC_OPTS": "\"-XX:+UseZGC -XX:+ZGenerational -XX:+AlwaysPreTouch\""
                   }
               }
           ]
       }
   ]
   ```

# Vea la interfaz de HBase usuario
<a name="hbase-web-ui"></a>

**nota**  
La interfaz HBase de usuario utiliza conexiones HTTP inseguras de forma predeterminada. Para habilitar el HTTP seguro (HTTPS), defina la `hbase.ssl.enabled` propiedad de la `hbase-site` clasificación como `true` en su [HBase configuración](emr-hbase-configure.md). Para obtener más información sobre el uso de HTTP (HTTPS) seguro para la interfaz de usuario HBase web, consulte la [Guía de HBase referencia de Apache](https://hbase.apache.org/book.html#_using_secure_http_https_for_the_web_ui).

HBase proporciona una interfaz de usuario basada en la web que puede utilizar para supervisar el HBase clúster. Cuando se ejecuta HBase en Amazon EMR, la interfaz web se ejecuta en el nodo principal y se puede ver mediante el reenvío de puertos, también conocido como creación de un túnel SSH. 

**Para ver la interfaz de usuario HBase**

1. Utilice SSH para crear un túnel en el nodo principal y crear una conexión segura. Para obtener más información, consulte [Opción 2, parte 1: configurar un túnel SSH hacia el nodo maestro mediante el reenvío dinámico de puertos](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-ssh-tunnel.html) en la *Guía de administración de Amazon EMR*. 

1. Instale un navegador web con una herramienta de proxy, como el FoxyProxy complemento para Firefox, a fin de crear un proxy SOCKS para AWS los dominios. Para obtener más información, consulte [Opción 2, parte 2: configurar los ajustes del proxy para ver los sitios web alojados en el nodo maestro](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-proxy.html) en la *Guía de administración de Amazon EMR*. 

1. Con el proxy configurado y la conexión SSH abierta, puede ver la HBase interfaz de usuario abriendo una ventana del navegador con **http: //:16010/master-status*master-public-dns-name*,** donde se encuentra *master-public-dns-name* la dirección DNS pública del nodo principal del clúster. 

![\[HMaster\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/hmaster.png)


También puedes verla en Hue. HBase Por ejemplo, lo siguiente muestra la tabla, `t1`, creada en [Uso del HBase shell](emr-hbase-connect.md):

![\[HMaster\]](http://docs.aws.amazon.com/es_es/emr/latest/ReleaseGuide/images/huehbase.png)


 Para obtener más información Hue, consulte [Hue](emr-hue.md).

# Ver archivos de HBase registro
<a name="emr-hbase-log-files"></a>

Como parte de su funcionamiento, HBase escribe archivos de registro con detalles sobre los ajustes de configuración, las acciones de los demonios y las excepciones. Estos archivos de registro pueden ser útiles para depurar problemas HBase y para realizar un seguimiento del rendimiento. 

Si configura el clúster para mantener los archivos de registro en Amazon S3, debe saber que los registros se escriben en Amazon S3 cada cinco minutos, por lo que es posible que haya un pequeño retraso antes de que los últimos archivos de registro estén disponibles. 

**Para ver HBase los registros del nodo principal**
+ Puede ver los HBase registros actuales mediante SSH para conectarse al nodo principal y navegar hasta el `/var/log/hbase` directorio. Estos registros no estarán disponibles una vez que el clúster se haya terminado a menos que hubiera habilitado el registro en Amazon S3 cuando se lanzó el clúster.

**Para ver HBase los registros en Amazon S3**
+ Para acceder a HBase los registros y otros registros de clústeres en Amazon S3 y tenerlos disponibles una vez finalizado el clúster, especifique un bucket de Amazon S3 para recibir estos registros al crear el clúster. Esto se realiza mediante la opción `--log-uri`. Para obtener más información sobre la habilitación del registro para el clúster, consulte [Configurar el registro de clúster y depuración (opcional)](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-debugging.html) en la *Guía de administración de Amazon EMR*. 

# Supervise HBase con Ganglia
<a name="emr-hbase-ganglia"></a>

**nota**  
La última versión de Amazon EMR que incluye Ganglia es Amazon EMR 6.15.0. Para monitorizar el clúster, las versiones posteriores a la 6.15.0 incluyen el agente de [Amazon CloudWatch ](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-AmazonCloudWatchAgent.html).

El proyecto de código abierto Ganglia es un sistema distribuido y escalable diseñado para monitorizar clústeres y redes al mismo tiempo que minimiza el impacto en su rendimiento. Al habilitar Ganglia en su clúster, puede generar informes y ver el rendimiento del clúster en su conjunto, además de inspeccionar el rendimiento de cada una de las instancias de nodo individuales. Para obtener más información acerca del proyecto de código abierto Ganglia, consulte [http://ganglia.info/](http://ganglia.info/). Para obtener más información sobre el uso de Ganglia con clústeres de Amazon EMR, consulte [Ganglia](emr-ganglia.md).

Una vez que el clúster se haya lanzado con Ganglia configurado, puede acceder a los informes y gráficos de Ganglia utilizando la interfaz gráfica que se ejecuta en el nodo principal. 

Ganglia almacena los archivos de log en el nodo principal del directorio `/mnt/var/lib/ganglia/rrds/`. En versiones anteriores de Amazon EMR, puede almacenar los archivos de registro en el directorio `/var/log/ganglia/rrds/`.

**Para configurar un clúster para Ganglia y usar el HBase AWS CLI**
+ Use un comando `create-cluster` similar al siguiente:

  ```
  aws emr create-cluster --name "Test cluster" --release-label emr-7.12.0 \
  --applications Name=HBase Name=Ganglia --use-default-roles \
  --ec2-attributes KeyName=myKey --instance-type m5.xlarge \
  --instance-count 3
  ```
**nota**  
Si el rol de servicio de Amazon EMR y el perfil de instancia de Amazon EC2, no existen, se produce un error. Utilice el comando `aws emr create-default-roles` para crearlos y, a continuación, vuelva a intentarlo.

  Para más información, consulte [Comandos de Amazon EMR en la AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/emr).

**Para ver HBase las métricas en la interfaz web de Ganglia**

1. Utilice SSH para crear un túnel en el nodo principal y crear una conexión segura. Para obtener más información, consulte [Opción 2, parte 1: configurar un túnel SSH hacia el nodo maestro mediante el reenvío dinámico de puertos](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-ssh-tunnel.html) en la *Guía de administración de Amazon EMR*. 

1. Instale un navegador web con una herramienta de proxy, como el FoxyProxy complemento para Firefox, para crear un proxy SOCKS para AWS los dominios. Para obtener más información, consulte [Opción 2, parte 2: configurar los ajustes del proxy para ver los sitios web alojados en el nodo maestro](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-proxy.html) en la *Guía de administración de Amazon EMR*. 

1. Con el proxy configurado y la conexión SSH abierta, puede ver las métricas de Ganglia abriendo una ventana del navegador con http://*master-public-dns-name*/ganglia/, donde *master-public-dns-name* se encuentra la dirección DNS pública del servidor maestro del clúster. HBase 

**Para ver archivos de registro de Ganglia en el nodo principal**
+ Si el clúster se sigue ejecutando, puede acceder a los archivos de registro utilizando SSH para conectarse al nodo principal y navegando al directorio `/mnt/var/lib/ganglia/rrds/`. En EMR 3.x, vaya al directorio `/var/log/ganglia/rrds`. Para obtener más información, consulte [Conectarse al nodo principal mediante SSH](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-ssh.html) en la *Guía de administración de Amazon EMR*. 

**Para consultar los archivos de registro de Ganglia en Amazon S3**
+ Los archivos de registro de Ganglia no se escriben automáticamente en Amazon S3, aunque habilite el registro para el clúster. Para ver los archivos de registro de Ganglia en Amazon S3, debe insertar manualmente los registros desde `/mnt/var/lib/ganglia/rrds/` en el bucket de S3. 

# Supervisión de EMR con Amazon HBase CloudWatch
<a name="emr-hbase-cw"></a>

A partir de EMR 7.0, Amazon EMR proporciona el Amazon CloudWatch Agent para enviar las métricas o CloudWatch Prometheus, en sustitución del sistema de monitorización Ganglia. Encontrarás más detalles en la [Guía de configuración de Amazon CloudWatch Agent](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-config-700.html).

El CloudWatch agente Amazon EMR 7.0 proporcionaba una integración básica y su configuración requería un esfuerzo manual, como descargar componentes y utilizar acciones de arranque. Sin embargo, a partir de EMR 7.1, el proceso se simplifica. El uso de Amazon CloudWatch Agent en EMR 7.1 facilita la supervisión de las métricas específicas del sistema y de la aplicación, incluidas las de. HBase Al usar la API de configuración de EMR, puede configurar y personalizar rápidamente el proceso de recopilación de métricas y elegir dónde enviar los datos, ya sea a Amazon CloudWatch o Prometheus. Esta flexibilidad le ayuda a vigilar de cerca sus HBase clústeres, lo que garantiza que funcionen sin problemas y de manera eficiente.

El uso de la API de configuración de EMR para gestionar toda la configuración facilita mucho el proceso. El CloudWatch agente de EMR 7.1 admite tres tipos principales de métricas:
+ **Métricas del sistema**: incluyen indicadores clave del rendimiento del sistema, como el uso de la CPU, el uso del disco, el uso de la memoria, las E/S de la red, los procesos y el uso del intercambio.
+ **Métricas de Hadoop Daemon**: estas métricas se refieren a los distintos componentes de Hadoop, que incluyen: DataNode métricas, métricas, métricas YARN y NameNode métricas YARN NodeManager . ResourceManager 
+ **HBase Métricas**: estas métricas proporcionan información sobre el rendimiento: métricas HBase maestras, métricas HBase de servidores HBase regionales, métricas de servidores HBase REST y métricas de Thrift Server. HBase 

------
#### [ Using the AWS CLI ]

Todas las métricas de Hadoop HBase están basadas en JMX, lo que significa que utilizan Java Management Extensions para proporcionar información detallada. Así es como puedes configurar Amazon CloudWatch Agent para que supervise HBase:
+ Consulta los [requisitos previos](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-create.html) antes de crear un clúster con Amazon CloudWatch Agent. Utilice un comando `create-cluster` similar al ejemplo que aparece después de esta lista.
+ Consulte las [configuraciones](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-config.html) compatibles con un HBase clúster.
+ Consulte el ejemplo siguiente para ver ejemplos de configuraciones para configurar la HBase supervisión. Consulte los ejemplos de configuraciones para la entrada `--configuration`.

```
aws emr create-cluster --name "HBase cluster with CloudWatch agent" \
--release-label emr-7.1.0 \
--applications Name=HBase Name=AmazonCloudWatchAgent \
--ec2-attributes KeyName=myKey --instance-type m7g.2xlarge \
--configurations file://./configurations.json \  
--instance-count 3 --use-default-roles
```

Para obtener más información sobre los ejemplos de configuraciones de JSON para las métricas, consulte [Set up metrics](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-setting-up-metrics.html).

------
#### [ Using the console ]

Para crear un clúster con el CloudWatch agente de Amazon desde la consola, sigue estos pasos:

**Cree un clúster con el CloudWatch agente desde la consola**

1. [Inicie sesión en y abra la Consola de administración de AWS consola de Amazon EMR en https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Elija **Create cluster**.

1. En **Nombre y aplicaciones**, elija la versión de Amazon EMR 7.0.0 o posterior.

1. En **Paquete de aplicaciones**, seleccione HBase las aplicaciones adicionales que desee instalar en su clúster e incluya el CloudWatch agente en sus selecciones.

1. Amplíe la **configuración del software**. A continuación, puede introducir la configuración directamente a través de JSON o una sintaxis abreviada mostrada en el texto en sombra en la consola. De lo contrario, puede proporcionar una URI de Amazon S3 para un archivo con un objeto `Configurations` de JSON. Para obtener más información sobre los ejemplos de configuraciones de JSON para las métricas, consulte [Configuración de métricas](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-setting-up-metrics.html).

1. Continúe con la creación del clúster que se ajuste a las necesidades del caso de uso.



------

# Configuración de métricas
<a name="emr-hbase-setting-up-metrics"></a>

Para supervisar el HBase Master, puedes configurar Amazon CloudWatch Agent para que recopile métricas específicas.

1. **Configuración de métricas HBase maestras**: para monitorear la métrica HBase maestra, puedes configurar Amazon CloudWatch Agent para que recopile métricas específicas. A continuación, se muestra un ejemplo de configuración para realizar un seguimiento de las actividades del administrador de tareas maestro:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-master-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=Master,sub=AssignmentManager": "AssignFailedCount,AssignSubmittedCount",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   En esta configuración:
   + Especificamos el MBean (`Hadoop:service=HBase,name=Master,sub=AssignmentManager`) para recopilar métricas como `AssignFailedCount` y`AssignSubmittedCount`.
   + Establecemos el intervalo para recopilar estas métricas cada 30 segundos (30000 milisegundos).

1. **Configuración de las métricas del servidor HBase regional**: para monitorear los servidores HBase regionales, configure el CloudWatch agente de la siguiente manera:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-region-server-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=RegionServer,sub=IPC": "numActiveHandler,numActivePriorityHandler",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   Esta configuración:
   + Supervisa los controladores activos en el servidor de región (`numActiveHandler` y `numActivePriorityHandler`).
   + Utiliza un intervalo de 30 segundos para la recopilación de métricas.

1. **Configuración de las métricas del servidor HBase REST**: para monitorear la interfaz HBase REST, puede usar la siguiente configuración:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-rest-server-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=REST": "successfulPut,successfulScanCount",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   En este ejemplo, el CloudWatch agente recopila métricas sobre las operaciones PUT correctas y escanea los recuentos cada 30 segundos.

1. **Configuración de las métricas de HBase Thrift Server**: para supervisar el HBase Thrift Server, puede configurar las métricas con una configuración como la siguiente:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-thrift-server-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=Thrift,sub=ThriftOne": "BatchGet_max,BatchGet_mean",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   Esta configuración registra los tiempos máximos y medios de las operaciones GET por lotes en el servidor Thrift.

# Uso del destino de las métricas
<a name="emr-hbase-using-metrics"></a>

Con EMR 7.1, tiene la opción de enviar los datos de sus métricas a Amazon o CloudWatch Amazon Managed Service for Prometheus. Esta opción le permite integrarse sin problemas con diferentes herramientas de monitoreo, en función de sus necesidades.

## Envío de métricas a Amazon CloudWatch
<a name="emr-hbase-using-metrics-cw"></a>

Para enviar las métricas a CloudWatch, usa esta configuración:

```
[
  {
    "Classification": "emr-metrics",
    "Properties": {
      "metrics_destination": "cloudwatch"
    },
    "Configurations": []
  }
]
```

## Envío de métricas a Amazon Managed Service para Prometheus
<a name="emr-hbase-using-metrics-prom"></a>

Si prefiere usar Prometheus, establezca el destino y proporcione la URL del punto de conexión:

```
[
  {
    "Classification": "emr-metrics",
    "Properties": {
      "metrics_destination": "prometheus",
      "prometheus_endpoint": "https://aps-workspaces.region.amazonaws.com/workspaces/workspace_id/api/v1/remote_write"
    },
    "Configurations": []
  }
]
```

`region`Sustitúyala por tu AWS región y por tu `workspace_id` ID de espacio de trabajo de Prometheus. Esta configuración dirige sus HBase métricas a Prometheus mediante el punto final especificado.

Con la configuración anterior, puede ver las siguientes métricas en la pestaña **Supervisión**.

# Migración desde versiones anteriores HBase
<a name="emr-hbase-migrate"></a>

Para migrar datos de una HBase versión anterior, consulte [Actualización](https://hbase.apache.org/book.html#upgrading), [número de HBase versión y compatibilidad](https://hbase.apache.org/book.html#hbase.versioning) en la Guía de HBase referencia de Apache. Es posible que deba prestar especial atención a los requisitos para actualizar desde versiones anteriores a la 1.0 de. HBase

## Migración a Amazon EMR versión 7.4.0 o posterior
<a name="emr-hbase-migrate-versions"></a>

**nota**  
Siga estas pautas si va a migrar de una versión EMR anterior a la 7.4.0 a una versión posterior a la 7.3.0.

Si actualmente utiliza una versión de EMR con la característica de seguimiento de archivos de tienda de Amazon habilitada, que se incluye en las versiones 6.2.0 a 7.3.0, y quiere actualizar a una versión con OSS Store File Tracking, que está disponible en las versiones de EMR posteriores a la 7.3.0, siga estos pasos:

1. En el clúster existente:

   1. Deshabilite la tabla `hbase:storefile`.

   1. Elimine la tabla `hbase:storefile`.

   1. Vacíe `hbase:meta`.

   1. Espere a que se actualicen los metadatos.

1. En el nuevo clúster:

   1. Establezca el mismo directorio de Amazon S3 que el directorio raíz.

   1. Inicie el clúster con la implementación de `DefaultStoreFileTracker`:

      ```
      {
        "Classification": "hbase-site",
        "Properties": {
          hbase.store.file-tracker.impl: "org.apache.hadoop.hbase.regionserver.storefiletracker.DefaultStoreFileTracker"
         }
      }
      ```

   1. A nivel de familia de tablas o columnas, use los siguientes comandos para cambiar el rastreador de archivos del almacén:

      1. Cambie el Store File Tracker de la tabla o familia de columnas de la tabla:

         ```
         hbase> change_sft 't1','FILE'
         hbase> change_sft 't2','cf1','FILE'
         ```

      1. Cambie todos los registros de archivos almacenados de la tabla que coincidan con la expresión regular (regex) dada:

         ```
         hbase> change_sft_all 't.*','FILE'
         hbase> change_sft_all 'ns:.*','FILE'
         hbase> change_sft_all 'ns:t.*','FILE'
         ```

# HBase historial de versiones
<a name="HBase-release-history"></a>

En la siguiente tabla se muestra la versión HBase incluida en cada versión de Amazon EMR, junto con los componentes instalados con la aplicación. Para ver las versiones de los componentes de cada versión, consulte la sección Versiones de los componentes en la versión correspondiente de [Versiones de Amazon EMR 7.x](emr-release-7x.md), [Versiones de lanzamiento de Amazon EMR 6.x](emr-release-6x.md) o [Versiones de lanzamiento de Amazon EMR 5.x](emr-release-5x.md).


**HBase información sobre la versión**  

| Etiqueta de versión de Amazon EMR | HBase Versión | Componentes instalados con HBase | 
| --- | --- | --- | 
| emr-7.12.0 | 2.6.2-amzn-3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-hdfs-zkfc, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.11.0 | 2.6.2-amzn-2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-hdfs-zkfc, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.10.0 | 2.6.2-amzn-1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.9.0 | 2.6.2-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.8.0 | 2.6.1-amzn-2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.7.0 | 2.6.1-amzn-1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.6.0 | 2.6.1-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.5.0 | 2.5.10-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.4.0 | 2.5.5-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.3.0 | 2.4.17-amzn-7 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.2.0 | 2.4.17-amzn-6 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-5.36.2 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-7.1.0 | 2.4.17-amzn-5 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-7.0.0 | 2.4.17-amzn-4 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.15.0 | 2.4.17-amzn-3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.14.0 | 2.4.17-amzn-2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.13.0 | 2.4.17-amzn-1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.12.0 | 2.4.17-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.11.1 | 2.4.15-amzn-1.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.11.0 | 2.4.15-amzn-1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.10.1 | 2.4.15-amzn-0.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.10.0 | 2.4.15-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, emr-wal-cli, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.9.1 | 2.4.13-amzn-0.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.9.0 | 2.4.13-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.8.1 | 2.4.12-amzn-0.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.8.0 | 2.4.12-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-6.7.0 | 2.4.4-amzn-3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-5.36.1 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.36.0 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.6.0 | 2.4.4-amzn-2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, hbase-operator-tools, zookeeper-client, zookeeper-server | 
| emr-5.35.0 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.5.0 | 2.4.4-amzn-1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.4.0 | 2.4.4-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.3.1 | 2.2.6-amzn-1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.3.0 | 2.2.6-amzn-1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.2.1 | 2.2.6-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.2.0 | 2.2.6-amzn-0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.1.1 | 2.2.5 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.1.0 | 2.2.5 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.0.1 | 2.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-6.0.0 | 2.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.34.0 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.33.1 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.33.0 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.32.1 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.32.0 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.31.1 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.31.0 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.30.2 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.30.1 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.30.0 | 1.4.13 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.29.0 | 1.4.10 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.28.1 | 1.4.10 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.28.0 | 1.4.10 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.27.1 | 1.4.10 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.27.0 | 1.4.10 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.26.0 | 1.4.10 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.25.0 | 1.4.9 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.24.1 | 1.4.9 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.24.0 | 1.4.9 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.23.1 | 1.4.9 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.23.0 | 1.4.9 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.22.0 | 1.4.9 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.21.2 | 1.4.8 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.21.1 | 1.4.8 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.21.0 | 1.4.8 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.20.1 | 1.4.8 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.20.0 | 1.4.8 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.19.1 | 1.4.7 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.19.0 | 1.4.7 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.18.1 | 1.4.7 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.18.0 | 1.4.7 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.17.2 | 1.4.6 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.17.1 | 1.4.6 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.17.0 | 1.4.6 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.16.1 | 1.4.4 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.16.0 | 1.4.4 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.15.1 | 1.4.4 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.15.0 | 1.4.4 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.14.2 | 1.4.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.14.1 | 1.4.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.14.0 | 1.4.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.13.1 | 1.4.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.13.0 | 1.4.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.12.3 | 1.4.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.12.2 | 1.4.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.12.1 | 1.4.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.12.0 | 1.4.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.11.4 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.11.3 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.11.2 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.11.1 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.11.0 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.10.1 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.10.0 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.9.1 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.9.0 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.8.3 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.8.2 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.8.1 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.8.0 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.7.1 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.7.0 | 1.3.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.6.1 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.6.0 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.5.4 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.5.3 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.5.2 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.5.1 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.5.0 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.4.1 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.4.0 | 1.3.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.3.2 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.3.1 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.3.0 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.2.3 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.2.2 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.2.1 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.2.0 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.1.1 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.1.0 | 1.2.3 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.0.3 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.0.2 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.0.1 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-5.0.0 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.9.6 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.9.5 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.9.4 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.9.3 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.9.2 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.9.1 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.8.5 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.8.4 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.8.3 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.8.2 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.8.1 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.8.0 | 1.2.2 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.7.4 | 1.2.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.7.3 | 1.2.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.7.2 | 1.2.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.7.1 | 1.2.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.7.0 | 1.2.1 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.6.1 | 1.2.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 
| emr-4.6.0 | 1.2.0 | emrfs, emr-ddb, emr-goodies, emr-kinesis, emr-s3-dist-cp, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-mapred, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hbase-hmaster, hbase-client, hbase-region-server, hbase-rest-server, hbase-thrift-server, zookeeper-client, zookeeper-server | 

**Topics**
+ [

# Amazon EMR 7.9.0: notas de la versión HBase
](HBase-release-history-changes-790.md)

# Amazon EMR 7.9.0: notas de la versión HBase
<a name="HBase-release-history-changes-790"></a>

**HBase cambios:**


| Tipo | Description (Descripción) | 
| --- | --- | 
| Cambios | Con la introducción de log4j2 en la clasificación de hbase, se eliminó hbase-log4j. A partir de ahora, use la clasificación hbase-log4j2 para definir las configuraciones relacionadas con el registro. | 