Extraire les métadonnées d'Apache Hive pour la migration

Ce document explique comment utiliser l'outil dwh-migration-dumper pour extraire les métadonnées nécessaires avant d'exécuter une migration des données ou des autorisations Apache Hive.

Ce document traite de l'extraction de métadonnées à partir des sources de données suivantes :

  • Apache Hive
  • Système de fichiers distribué Hadoop (HDFS)
  • Apache Ranger
  • Cloudera Manager
  • Journaux de requêtes Apache Hive

Avant de commencer

Avant de pouvoir utiliser l'outil dwh-migration-dumper, procédez comme suit :

Installer Java

Java 8 ou une version ultérieure doit être installé sur le serveur sur lequel vous prévoyez d'exécuter l'outil dwh-migration-dumper. Si ce n'est pas le cas, téléchargez Java à partir de la page des téléchargements Java et installez-le.

Autorisations requises

Le compte utilisateur que vous spécifiez pour connecter l'outil dwh-migration-dumper au système source doit être autorisé à lire les métadonnées de ce système. Vérifiez que ce compte dispose de l'appartenance appropriée au rôle pour interroger les ressources de métadonnées disponibles pour votre plate-forme. Par exemple, INFORMATION_SCHEMA est une ressource de métadonnées commune à plusieurs plates-formes.

Installez l'outil dwh-migration-dumper

Pour installer l'outil dwh-migration-dumper, procédez comme suit :

  1. Sur la machine sur laquelle vous souhaitez exécuter l'outil dwh-migration-dumper, téléchargez le fichier ZIP à partir du dépôt GitHub de l'outil dwh-migration-dumper.
  2. Pour valider le fichier ZIP de l'outil dwh-migration-dumper, téléchargez le fichier SHA256SUMS.txt et exécutez la commande suivante :

    Bash

    sha256sum --check SHA256SUMS.txt

    Si la validation échoue, consultez la section Dépannage.

    Windows PowerShell

    (Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]

    Remplacez RELEASE_ZIP_FILENAME par le nom du fichier ZIP téléchargé correspondant à la version de l'outil d'extraction en ligne de commande dwh-migration-dumper (par exemple, dwh-migration-tools-v1.0.52.zip).

    Le résultat True confirme la réussite de la vérification de la somme de contrôle.

    Le résultat False indique une erreur de validation. Assurez-vous que le fichier de somme de contrôle et le fichier ZIP ont été téléchargés à partir de la même version et placés dans le même répertoire.

  3. Extrayez le fichier ZIP. Le fichier binaire de l'outil d'extraction se trouve dans le sous-répertoire /bin du dossier créé en extrayant le fichier ZIP.

  4. Mettez à jour la variable d'environnement PATH pour inclure le chemin d'installation de l'outil d'extraction.

Extraire les métadonnées pour la migration

Sélectionnez l'une des options suivantes pour savoir comment extraire les métadonnées de votre source de données :

Apache Hive

Exécutez la commande suivante pour extraire les métadonnées d'Apache Hive à l'aide de l'outil dwh-migration-dumper.

dwh-migration-dumper \
  --connector hiveql \
  --host HIVE-HOST \
  --port HIVE-PORT \
  --output gs://MIGRATION-BUCKET/hive-dumper-output.zip \
  --assessment \

Remplacez les éléments suivants :

  • HIVE-HOST : nom d'hôte de l'instance Apache Hive
  • HIVE-PORT : numéro de port de l'instance Apache Hive. Vous pouvez ignorer cet argument si vous utilisez le port 9083 par défaut.
  • MIGRATION-BUCKET : bucket Cloud Storage que vous utilisez pour stocker les fichiers de migration.

Cette commande extrait les métadonnées d'Apache Hive dans un fichier nommé hive-dumper-output.zip dans le répertoire MIGRATION-BUCKET.

HDFS

Exécutez la commande suivante pour extraire les métadonnées de HDFS à l'aide de l'outil dwh-migration-dumper.

dwh-migration-dumper \
  --connector hdfs \
  --host HDFS-HOST \
  --port HDFS-PORT \
  --output gs://MIGRATION-BUCKET/hdfs-dumper-output.zip \
  --assessment \

Remplacez les éléments suivants :

  • HDFS-HOST : nom d'hôte du NameNode HDFS
  • HDFS-PORT : numéro de port NameNode HDFS. Vous pouvez ignorer cet argument si vous utilisez le port 8020 par défaut.
  • MIGRATION-BUCKET : bucket Cloud Storage que vous utilisez pour stocker les fichiers de migration.

Cette commande extrait les métadonnées de HDFS dans un fichier nommé hdfs-dumper-output.zip dans le répertoire MIGRATION-BUCKET.

Il existe plusieurs limites connues lors de l'extraction de métadonnées à partir de HDFS :

  • Certaines tâches de ce connecteur sont facultatives et peuvent échouer, en enregistrant une trace de pile complète dans la sortie. Tant que les tâches requises ont réussi et que le hdfs-dumper-output.zip est généré, vous pouvez procéder à la migration HDFS.
  • Le processus d'extraction peut échouer ou s'exécuter plus lentement que prévu si la taille du pool de threads configurée est trop importante. Si vous rencontrez ces problèmes, nous vous recommandons de réduire la taille du pool de threads à l'aide de l'argument de ligne de commande --thread-pool-size.

Apache Ranger

Exécutez la commande suivante pour extraire les métadonnées d'Apache Ranger à l'aide de l'outil dwh-migration-dumper.

dwh-migration-dumper \
  --connector ranger \
  --host RANGER-HOST \
  --port 6080 \
  --user RANGER-USER \
  --password RANGER-PASSWORD \
  --ranger-scheme RANGER-SCHEME \
  --output gs://MIGRATION-BUCKET/ranger-dumper-output.zip \
  --assessment \

Remplacez les éléments suivants :

  • RANGER-HOST : nom d'hôte de l'instance Apache Ranger
  • RANGER-USER : nom d'utilisateur de l'utilisateur Apache Ranger
  • RANGER-PASSWORD : mot de passe de l'utilisateur Apache Ranger
  • RANGER-SCHEME : spécifiez si Apache Ranger utilise http ou https. La valeur par défaut est http.
  • MIGRATION-BUCKET : bucket Cloud Storage que vous utilisez pour stocker les fichiers de migration.

Vous pouvez également inclure les options facultatives suivantes :

  • --kerberos-auth-for-hadoop : remplace --user et --password si Apache Ranger est protégé par Kerberos au lieu de l'authentification de base. Vous devez exécuter la commande kinit avant l'outil dwh-migration-dumper pour utiliser cet indicateur.
  • --ranger-disable-tls-validation : incluez cet indicateur si le certificat HTTPS utilisé par l'API est auto-signé. Par exemple, lorsque vous utilisez Cloudera.

Cette commande extrait les métadonnées d'Apache Ranger dans un fichier nommé ranger-dumper-output.zip dans le répertoire MIGRATION-BUCKET.

Cloudera

Exécutez la commande suivante pour extraire les métadonnées de Cloudera à l'aide de l'outil dwh-migration-dumper.

dwh-migration-dumper \
  --connector cloudera-manager \
  --url CLOUDERA-URL \
  --user CLOUDERA-USER \
  --password CLOUDERA-PASSWORD \
  --output gs://MIGRATION-BUCKET/cloudera-dumper-output.zip \
  --yarn-application-types APPLICATION-TYPES \
  --pagination-page-size PAGE-SIZE \
  --assessment \

Remplacez les éléments suivants :

  • CLOUDERA-URL : URL de Cloudera Manager
  • CLOUDERA-USER : nom d'utilisateur Cloudera
  • CLOUDERA-PASSWORD : mot de passe de l'utilisateur Cloudera
  • MIGRATION-BUCKET : bucket Cloud Storage que vous utilisez pour stocker les fichiers de migration.
  • APPLICATION-TYPES : (facultatif) liste de tous les types d'applications existants de Hadoop YARN. Exemple :SPARK, MAPREDUCE
  • PAGE-SIZE : (Facultatif) spécifiez la quantité de données extraites des services tiers, comme l'API Hadoop YARN. La valeur par défaut est 1000, ce qui représente 1 000 entités par requête.

Cette commande extrait les métadonnées de Cloudera dans un fichier nommé dwh-migration-cloudera.zip dans le répertoire MIGRATION-BUCKET.

Journaux de requêtes Apache Hive

Suivez les étapes de la section Apache Hive Extraire les métadonnées et interroger les journaux à partir de votre entrepôt de données pour extraire vos journaux de requêtes Apache Hive. Vous pouvez ensuite importer les journaux dans votre bucket Cloud Storage contenant vos fichiers de migration.

Étapes suivantes

Une fois les métadonnées extraites de Hadoop, vous pouvez les utiliser pour effectuer les opérations suivantes :