Connecteur Cloud Storage

Le connecteur Cloud Storage est un bibliothèque Java Open Source qui vous permet d'exécuter Apache Hadoop ou Jobs Apache Spark directement sur données dans Cloud Storage, et offre un certain nombre d'avantages par rapport au choix Système de fichiers distribué Hadoop (HDFS, Hadoop Distributed File System)

Avantages du connecteur Cloud Storage

  • Accès direct aux données : stockez vos données dans Cloud Storage et accédez-y directement. Vous n'avez pas besoin de les transférer dans HDFS.
  • Compatibilité HDFS : accédez facilement à vos données dans Cloud Storage en utilisant le préfixe gs:// au lieu de hdfs://.
  • Interopérabilité : le stockage de données dans Cloud Storage permet une interopérabilité transparente entre les services Spark, Hadoop et Google.
  • Accessibilité des données : contrairement à HDFS, lorsque vous arrêtez un cluster Hadoop, vous avez toujours accès à vos données dans Cloud Storage.
  • Disponibilité élevée des données : la disponibilité des données stockées dans Cloud Storage est élevée, et elles sont répliquées à l'échelle mondiale sans perte de performance.
  • Pas de surcharge de la gestion du stockage : contrairement à HDFS, Cloud Storage ne nécessite pas de maintenance périodique, telle que la vérification, la mise à niveau ou le rollback vers une version précédente du système de fichiers, etc.
  • Démarrage rapide : dans HDFS, une tâche MapReduce ne peut pas être lancée tant que NameNode n'est pas en mode sans échec. Ce processus peut durer de quelques secondes à plusieurs minutes en fonction de la taille et de l'état de vos données. Avec Cloud Storage, vous pouvez exécuter la tâche dès le démarrage des nœuds de tâche, ce qui permet de réaliser des économies considérables au fil du temps.

Configuration du connecteur Cloud Storage du cluster Dataproc

Le connecteur Cloud Storage est installé par défaut sur tous les les nœuds de cluster Dataproc Répertoire /usr/local/share/google/dataproc/lib/.

Les sections suivantes décrivent les étapes à suivre pour configuré correctement le connecteur sur votre cluster Dataproc.

Autorisations de compte de service

Lorsque vous exécutez le connecteur dans des VM Compute Engine, y compris les clusters Dataproc, La propriété google.cloud.auth.service.account.enable est définie sur false par défaut, ce qui signifie que vous n'avez pas besoin de configurer manuellement compte de service pour le connecteur. obtient un compte de service à partir du serveur de métadonnées de VM.

Versions de connecteur autres que celles par défaut

Versions par défaut du connecteur Cloud Storage utilisées dans les images les plus récentes installés sur des clusters Dataproc sont répertoriés dans l'image du cluster des pages de version (consultez Versions de Dataproc compatibles). Si votre application dépend d'un connecteur autre que celui par défaut déployée sur votre cluster, vous devez:

  1. créez un cluster avec le rôle --metadata=GCS_CONNECTOR_VERSION=x.y.z. qui met à jour le connecteur utilisé par les applications exécutées sur le cluster à la version de connecteur spécifiée, ou
  2. inclure et relocaliser les classes du connecteur et les dépendances des connecteurs pour la version que vous utilisez dans le fichier JAR de votre application. Le déménagement est nécessaire pour éviter tout conflit entre les la version du connecteur déployée et la version par défaut du connecteur installé sur le cluster Dataproc (consultez la exemple de déplacement des dépendances Maven).

Clusters autres que Dataproc

  1. Téléchargez le connecteur.

    Pour télécharger le connecteur Cloud Storage pour Hadoop, vous devez disposer des éléments suivants :

  2. Installez le connecteur.

    Consultez la section Installer le connecteur sur GitHub pour installer, configurer et tester le connecteur Cloud Storage.

Utiliser le connecteur

Vous pouvez accéder aux données stockées dans Cloud Storage de plusieurs façons :

Resources

Version Java compatible

Java 8 est indispensable au fonctionnement du connecteur Cloud Storage.

Informations sur la dépendance 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>

ou pour la version grisée:

<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>
    <classifier>shaded</classifier>
</dependency>

Pour en savoir plus, consultez la page sur le connecteur Cloud Storage. Notes de version et Documentation de référence Javadoc

Étape suivante