Conector de Cloud Storage

El conector de Cloud Storage es una biblioteca Java de código abierto que te permite ejecutar trabajos de Apache Hadoop o Apache Spark directamente en los datos en Cloud Storage y ofrece una serie de beneficios sobre el sistema de archivos distribuidos de Hadoop (HDFS).

Beneficios del conector de Cloud Storage

  • Acceso directo a datos: almacena tus datos en Cloud Storage y accede a ellos directamente. No es necesario transferirlo a HDFS primero.
  • Compatibilidad con HDFS: Puedes acceder fácilmente a tus datos en Cloud Storage con el prefijo gs:// en lugar de hdfs://.
  • Interoperabilidad: El almacenamiento de datos en Cloud Storage permite una interoperabilidad perfecta entre los servicios de Spark, Hadoop y Google.
  • Accesibilidad a los datos: Cuando cierras un clúster de Hadoop, a diferencia de HDFS, sigues teniendo acceso a tus datos en Cloud Storage.
  • Alta disponibilidad de los datos: Los datos almacenados en Cloud Storage están altamente disponibles y replicados de forma global sin perder rendimiento.
  • Sobrecarga de administración sin almacenamiento: A diferencia de HDFS, Cloud Storage no requiere mantenimiento de rutina, como revisar el sistema de archivos, actualizar o revertir a una versión anterior del sistema de archivos.
  • Inicio rápido: en HDFS, un trabajo MapReduce no puede iniciarse hasta que el NameNode se encuentre fuera del modo seguro, un proceso que puede demorar desde unos segundos hasta varios minutos. según el tamaño y el estado de tus datos. Con Cloud Storage, puedes comenzar tu trabajo en cuanto se inicien los nodos de tareas, lo que genera importantes ahorros de costos a lo largo del tiempo.

Obtén el conector

Clústeres de Dataproc

El conector de Cloud Storage se instala de forma predeterminada en todos los nodos del clúster de Dataproc en el directorio /usr/local/share/google/dataproc/lib/.

Si tu aplicación depende de una versión de conector distinta de la versión de conector implementada en tu clúster de Dataproc predeterminado, debes realizar una de las siguientes acciones:

  1. Crea un clúster nuevo con la marca --metadata GCS_CONNECTOR_VERSION=x.y.z, que actualizará el conector que usa tu aplicación a la versión del conector especificada, o
  2. incluir y reubicar las clases de conector y las dependencias de conector para la versión que usas en el archivo jar de tu aplicación, de modo que la versión de conector que usas no entre en conflicto con la versión de conector implementada en tu clúster de Dataproc (consulta este ejemplo de reubicación de dependencias en Maven).

Clústeres que no son de Dataproc

Para descargar el conector de Cloud Storage para Hadoop, sigue estos pasos:

Usa el conector

Hay varias formas de acceder a los datos almacenados en Cloud Storage:

Recursos

Versión de Java

El conector de Cloud Storage requiere Java 8.

Información sobre las dependencias de Apache Maven

<dependency>
    <groupId>com.google.cloud.bigdataoss</groupId>
    <artifactId>gcs-connector</artifactId>
    <version>insert "hadoopX-X.X.X" connector version number here</version>
    <scope>provided</scope>
</dependency>

Para obtener información más detallada, consulta las notas de la versión del conector de Cloud Storage y la referencia de Javadoc.

¿Qué sigue?