Tous les produits
Search
Centre de documentation

E-MapReduce:Utiliser OSS-HDFS comme backend de stockage pour HBase

Dernière mise à jour :Aug 09, 2026

Stockez les données HBase dans OSS-HDFS pour les clusters DataServing afin de découpler le calcul du stockage. Les données de journalisation préalable à l'écriture (WAL) restent dans HDFS.

Contexte

OSS-HDFS est un service de stockage de lac de données cloud-native offrant une gestion unifiée des métadonnées, une compatibilité totale avec l'API HDFS et une prise en charge complète de POSIX. Il convient parfaitement aux scénarios de big data et de calcul IA dans les architectures de lac de données. Pour plus d'informations, consultez la rubrique Présentation d'OSS-HDFS.

Le schéma suivant illustre l'architecture de HBase sur OSS-HDFS.HBase on OSS-HDFS

Limites

Cette fonctionnalité est uniquement prise en charge sur les clusters DataServing exécutant E-MapReduce 3.42 ou version ultérieure, ou E-MapReduce 5.8.0 ou version ultérieure.

Procédure

  1. Activez OSS-HDFS et accordez les autorisations d'accès requises. Pour des instructions détaillées, consultez la rubrique Activer OSS-HDFS et accorder des autorisations d'accès.

  2. Récupérez le point de terminaison du service OSS-HDFS.

    Dans la console OSS, accédez à la page Overview et copiez le point de terminaison du service OSS-HDFS. Utilisez ce point de terminaison comme chemin pour le paramètre hbase.rootdir lors de la création du cluster HBase E-MapReduce.

    Dans le volet Access Domain du bucket, repérez la ligne HDFS Service. Le format du point de terminaison du bucket est <BucketName>.cn-shanghai.oss-dls.aliyuncs.com. Copiez ce point de terminaison.

  3. Utilisez OSS-HDFS.

    1. Créez un cluster DataServing. Pour plus d'informations, consultez la rubrique Créer un cluster.

      Lors de la création du cluster DataServing, configurez les paramètres suivants :

      • Optional Services : Sélectionnez tous les services sauf JindoData et Phoenix.

      • HBase Storage Mode : Sélectionnez OSS-HDFS.

      • Root Directory : Spécifiez un bucket OSS avec le service HDFS activé. Utilisez le format oss://${OSS-HDFS_ENDPOINT}/${DIR}. Par exemple, oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase.

      Remarque

      Remplacez les espaces réservés suivants :

      • ${OSS-HDFS_ENDPOINT} : Le point de terminaison OSS-HDFS que vous avez obtenu à l'étape Étape 2.

      • ${DIR} : Le répertoire racine pour HBase.

    2. Créez une table HBase.

      1. Connectez-vous au cluster DataServing. Pour plus d'informations, consultez la rubrique Se connecter à un cluster.

      2. Exécutez la commande suivante pour démarrer le shell HBase :

        hbase shell
      3. Exécutez la commande suivante pour créer une table de test nommée bar avec une famille de colonnes nommée f :

        create 'bar','f'

        Une fois la table créée, exécutez la commande list pour afficher vos tables.

        Exemple de sortie :

        TABLE
        bar
        1 row(s)
        Took 0.0138 seconds
    3. Quittez le shell HBase et exécutez la commande suivante pour vérifier que les données de la table sont stockées dans OSS-HDFS.

      Syntaxe :

      hadoop fs -ls oss://${OSS-HDFS_ENDPOINT}/${DIR}

      Exemple :

      hadoop fs -ls oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase/data/default

      Une sortie similaire confirme que le répertoire de la table HBase a été créé dans OSS-HDFS :

      Found 1 items
      drwxrwxrwx   - hbase supergroup          0 2022-07-28 14:45 oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase/data/default/bar
  4. Facultatif : Arrêtez et restaurez un cluster.

    Étant donné qu'OSS-HDFS découple le calcul du stockage, vous pouvez arrêter le cluster d'origine et en créer un nouveau qui lira les mêmes données depuis le même répertoire OSS-HDFS.

    Important
    • Le nouveau cluster et le cluster d'origine doivent utiliser la même version de HBase. Une incompatibilité de version peut entraîner des problèmes de compatibilité imprévisibles et rendre le nouveau cluster inutilisable.

      Dans la section Optional Services, sélectionnez HBASE (2.3.4).

    • Des écritures simultanées provenant de plusieurs clusters peuvent provoquer des incohérences de métadonnées ou de données, corrompre vos données et rendre les clusters indisponibles.

    1. Connectez-vous au cluster DataServing. Pour plus d'informations, consultez la rubrique Se connecter à un cluster.

    2. Démarrez le shell HBase.

      hbase shell
    3. Exécutez la commande flush pour écrire toutes les données en mémoire de vos tables dans des fichiers HFile.

      flush 'bar'
    4. Exécutez la commande disable sur vos tables pour empêcher toute nouvelle écriture de données.

      disable 'bar'
    5. Créez un nouveau cluster. Assurez-vous qu'il dispose de la même version HBase que le cluster d'origine et configurez-le pour utiliser le même répertoire OSS-HDFS comme backend de stockage.

      Le nouveau cluster restaure automatiquement les données depuis OSS-HDFS et est prêt à l'emploi.