Crea un clúster Hadoop
Puedes usar Dataproc para crear una o más instancias de Compute Engine que puedan conectarse a una instancia de Bigtable y ejecutar trabajos de Hadoop. En esta página, se explica cómo usar Dataproc para automatizar las siguientes tareas:
- Instalar Hadoop y el cliente de HBase para Java
- Configura Hadoop y Bigtable
- Configurar los alcances de autorización correctos de Bigtable
Después de crear el clúster de Dataproc, puedes usarlo para ejecutar trabajos de Hadoop que lean y escriban datos hacia y desde Bigtable.
En esta página, se asume que estás familiarizado con Hadoop. Para obtener información adicional acerca de Dataproc, consulta la sección sobre la documentación de Cloud Dataproc.
Antes de comenzar
Antes de comenzar, necesitarás realizar las siguientes tareas:
- Crear una instancia de Bigtable. Asegúrate de anotar el ID del proyecto y de la instancia de Bigtable.
-
Enable the Cloud Bigtable API, Cloud Bigtable Admin API, Dataproc, and Cloud Storage JSON APIs.
- Verifica que tu cuenta de usuario tenga un rol que incluye el permiso
storage.objects.get
.Abre la página de IAM en la consola de Google Cloud.
- Instala Google Cloud CLI. Consulta las instrucciones de configuración de la CLI de gcloud para obtener más detalles.
-
Instala Apache Maven, que se usa para ejecutar un trabajo de Hadoop de muestra.
Ejecuta el siguiente comando en Debian GNU/Linux o Ubuntu:
sudo apt-get install maven
Ejecuta el siguiente comando en Red Hat Enterprise Linux o CentOS:
sudo yum install maven
Instala Homebrew en macOS y, luego, ejecuta el siguiente comando:
brew install maven
- Clona el repositorio de GitHub GoogleCloudPlatform/cloud-bigtable-examples, que contiene el ejemplo de un trabajo de Hadoop que usa Bigtable:
git clone https://github.com/GoogleCloudPlatform/cloud-bigtable-examples.git
Cree un bucket de Cloud Storage
Dataproc usa un bucket de Cloud Storage para almacenar archivos temporales. A fin de evitar conflictos entre nombres de archivos, crea un bucket nuevo para Dataproc.
Los nombres de los depósitos de Cloud Storage deben ser únicos a nivel global en todos los depósitos. Elige un nombre de bucket que pueda estar disponible, como un nombre que incorpore el nombre de tu proyecto de Google Cloud.
Después de elegir un nombre, usa el siguiente comando para crear un bucket nuevo y reemplaza los valores entre corchetes con los valores apropiados:
gcloud storage buckets create gs://[BUCKET_NAME] --project=[PROJECT_ID]
Crea el clúster de Dataproc
Ejecuta el siguiente comando para crear un clúster de Dataproc con cuatro nodos trabajadores que reemplacen los valores entre corchetes con los valores adecuados:
gcloud dataproc clusters create [DATAPROC_CLUSTER_NAME] --bucket [BUCKET_NAME] \
--region [region] --num-workers 4 --master-machine-type n1-standard-4 \
--worker-machine-type n1-standard-4
Consulta la sección sobre la documentación de gcloud dataproc clusters create
para conocer la configuración adicional que puedes usar. Si aparece un mensaje de error que incluye el texto Insufficient 'CPUS' quota
, intenta establecer la marca --num-workers
en un valor inferior.
Prueba el clúster de Dataproc
Después de configurar tu clúster de Dataproc, puedes probarlo mediante la ejecución de un trabajo de Hadoop de muestra que cuenta la cantidad de veces que una palabra aparece en un archivo de texto. El trabajo de muestra usa Bigtable para almacenar los resultados de la operación. Puedes usar este trabajo de muestra como referencia cuando configures tu trabajo de Hadoop propio.
Ejecuta el trabajo de muestra de Hadoop
- En el directorio donde clonaste el repositorio de GitHub, cambia al directorio
java/dataproc-wordcount
. Ejecuta el siguiente comando para compilar el proyecto y reemplaza los valores entre corchetes con los valores adecuados:
mvn clean package -Dbigtable.projectID=[PROJECT_ID] \ -Dbigtable.instanceID=[BIGTABLE_INSTANCE_ID]
Ejecuta el siguiente comando para iniciar el trabajo de Hadoop y reemplaza los valores entre corchetes con los valores adecuados:
./cluster.sh start [DATAPROC_CLUSTER_NAME]
Cuando el trabajo está completo, se muestra el nombre de la tabla de salida, que es la palabra WordCount
seguida de un guion y un número único:
Output table is: WordCount-1234567890
Verifica los resultados del trabajo de Hadoop
De manera opcional, después de ejecutar el trabajo de Hadoop, puedes usar la
CLI de cbt
para verificar que el trabajo se haya ejecutado correctamente:
-
Abre una ventana de la terminal en Cloud Shell.
- Instala la CLI de
cbt
:gcloud components update
gcloud components install cbt
- Analiza la tabla de salida para ver los resultados del trabajo de Hadoop y reemplaza
[TABLE_NAME]
con el nombre de tu tabla de salida:cbt -instance [BIGTABLE_INSTANCE_ID] read [TABLE_NAME]
Ahora que se verificó que el clúster está configurado correctamente, puedes usarlo para ejecutar tus propios trabajos de Hadoop.
Borra el clúster de Dataproc.
Cuando termines de usar el clúster de Dataproc, ejecuta el siguiente comando para cerrar y borrar el clúster, y reemplaza [DATAPROC_CLUSTER_NAME]
con el nombre de tu clúster de Dataproc:
gcloud dataproc clusters delete [DATAPROC_CLUSTER_NAME]
¿Qué sigue?
- Obtén más información sobre Dataproc.
- Comienza a usar el cliente de HBase para Java.