Tous les produits
Search
Centre de documentation

E-MapReduce:Utilisation des snapshots HBase

Dernière mise à jour :Aug 20, 2026

La fonctionnalité de snapshot HBase permet d'obtenir une sauvegarde légère des tables avec un impact minimal sur les performances. Vous pouvez créer, importer ou exporter des snapshots sur un cluster E-MapReduce (EMR) contenant le service HBase via HBase Shell ou la ligne de commande. Les snapshots servent à créer de nouvelles tables ou à restaurer les données d'une table. Cette rubrique décrit l'utilisation des snapshots HBase.

Création d'un snapshot

Exécutez la commande hbase shell pour vous connecter à HBase. Pour plus d'informations, consultez la section Connexion à HBase de la rubrique « Utilisation de HBase Shell ». Une fois connecté à HBase, exécutez la commande suivante pour créer un snapshot nommé table1-snapshot pour la table table1. Vous pouvez configurer les paramètres SKIP_FLUSH, TTL ou MAX_FILESIZE dans la commande snapshot afin d'ajouter des limites selon vos besoins métier.

snapshot 'table1', 'table1-snapshot'
Remarque

Le nom du snapshot doit être unique. Exécutez la commande list_snapshots pour consulter tous les snapshots existants.

Création d'une table par clonage d'un snapshot

Utilisez la commande clone_snapshot pour créer une nouvelle table à partir d'un snapshot existant.

Par exemple, après vous être connecté à HBase via la commande hbase shell, exécutez la commande suivante pour créer une table nommée table2 à partir de table1-snapshot :

clone_snapshot 'table1-snapshot', 'table2'

Restauration des données d'une table à l'aide d'un snapshot

Exécutez la commande restore_snapshot pour restaurer les données de la table telles qu'elles étaient au moment de la création du snapshot. Avant d'utiliser un snapshot pour restaurer les données d'une table, vous devez désactiver celle-ci.

Par exemple, après vous être connecté à HBase via la commande hbase shell, exécutez les commandes suivantes pour désactiver table1, restaurer ses données à l'aide de table1-snapshot, puis la réactiver.

disable 'table1'
restore_snapshot 'table1-snapshot'
enable 'table1'

Importation d'un snapshot

Utilisez la ligne de commande pour importer des snapshots HBase situés dans d'autres chemins. Lors de l'importation, spécifiez le nom et le chemin source du snapshot, l'adresse de destination pour l'enregistrer, ainsi que le nombre de mappeurs pour la tâche d'importation.

Par exemple, exécutez la commande suivante pour importer un snapshot depuis le service OSS-HDFS d'un cluster DataServing vers le service OSS-HDFS d'un autre cluster DataServing :

hbase snapshot export \
-snapshot 'table1-snapshot' \
-copy-from oss://${Endpoint of the OSS-HDFS service}/oss-dir \
-copy-to oss://${Endpoint of the OSS-HDFS service}/hbase \
-mappers 2

Paramètre

Description

-snapshot

Nom du snapshot à copier. Par exemple, table1-snapshot.

-copy-from

Adresse source du snapshot à importer et adresse de destination pour l'enregistrement du snapshot.

Vous trouverez le point de terminaison du service OSS-HDFS sur la page Overview de la console Object Storage Service (OSS). Pour plus de détails, consultez Obtenir le point de terminaison du service OSS-HDFS.

-copy-to

-mappers

Nombre de mappeurs pour la tâche d'importation. Dans cet exemple, ce paramètre est défini sur 2.

Important

Si vous ne configurez pas ce paramètre lors de l'importation des snapshots, HBase calcule la valeur en fonction de la taille de la table. Une valeur excessivement élevée affecte les tâches en cours d'exécution dans HBase. Nous vous recommandons de configurer le paramètre -mappers ou -bandwidth pour limiter le nombre de ressources de cluster utilisées pour l'importation d'un snapshot.

Exportation d'un snapshot

Utilisez la ligne de commande pour exporter des snapshots d'un cluster vers le système de fichiers distribué Hadoop (HDFS) ou le service OSS-HDFS d'un autre cluster. Lors de l'exportation, spécifiez le nom et le chemin de destination du snapshot à exporter, ainsi que le nombre de mappeurs pour la tâche d'exportation.

Par exemple, exécutez la commande suivante pour exporter table1-snapshot depuis le cluster actuel vers le service OSS-HDFS d'un autre cluster. Si vous souhaitez exporter un snapshot vers le service HDFS d'un autre cluster, définissez le paramètre -copy-to sur le chemin HDFS correspondant.

hbase snapshot export \
-snapshot 'table1-snapshot' \
-copy-to oss://${Endpoint of the OSS-HDFS service}/oss-dir \
-mappers 2

Suppression d'un snapshot

Après vous être connecté à HBase via la commande hbase shell, exécutez la commande suivante pour supprimer table1-snapshot :

delete_snapshot 'table1-snapshot'

Références

Pour plus d'informations, consultez le Guide de référence Apache HBase sur le site officiel d'Apache HBase.