Lindorm Shell est un outil en ligne de commande compatible avec HBase fourni par Lindorm. Il vous permet de vous connecter à LindormTable via l'API HBase Java pour effectuer des opérations sur les données, telles que la création de tables, l'insertion et l'interrogation de données. Cette rubrique explique comment télécharger Lindorm Shell et se connecter à LindormTable.
Prérequis
Le kit de développement Java (JDK) version 1.8 ou ultérieure est installé.
Ajoutez l'adresse IP de votre client à la liste d'autorisation de l'instance Lindorm. Pour plus d'informations, consultez la rubrique Configurer une liste d'autorisation.
Remarques d'utilisation
Lorsque vous vous connectez à LindormTable via Lindorm Shell, vous ne pouvez effectuer que des opérations de base du langage de définition de données (DDL) et du langage de manipulation de données (DML). Pour obtenir des informations sur les opérations non prises en charge, consultez la rubrique Limites d'utilisation de l'API HBase.
N'utilisez pas l'API HBase pour accéder aux tables larges créées avec SQL. Cela pourrait entraîner l'affichage de caractères illisibles.
-
Nous vous recommandons d'utiliser Lindorm Shell sur un système d'exploitation Linux ou macOS.
ImportantSi vous utilisez Lindorm Shell sous Windows, vous risquez de rencontrer des erreurs ou des messages indiquant qu'une bibliothèque est manquante. Dans ce cas, ajoutez la bibliothèque requise au système d'exploitation, comme indiqué dans le message d'erreur.
Procédure
-
Téléchargez Lindorm Shell.
Dans le coin supérieur gauche de la console Lindorm, sélectionnez la région de votre instance. Sur la page Instances, cliquez sur l'ID de l'instance cible.
Dans le volet de navigation de gauche, cliquez sur Database Connections, puis sur l'onglet Wide Table Engine.
Cliquez sur Lindorm Shell Download.
-
Exécutez la commande suivante pour décompresser le package Lindorm Shell. Cet exemple décompresse le package dans le répertoire
alihbase-2.0.18.tar zxvf hbaseue-shell.tar.gz -
Configurez les paramètres de connexion.
-
Accédez au répertoire
alihbase-2.0.18/confet ouvrez le fichierhbase-site.xml.vi hbase-site.xml -
Configurez le point de terminaison de connexion, le nom d'utilisateur et le mot de passe pour LindormTable.
<configuration> <property> <name>hbase.zookeeper.quorum</name> <value>ld-bp17j28j2y7pm****-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30020</value> </property> <property> <name>hbase.client.username</name> <value>testuser</value> </property> <property> <name>hbase.client.password</name> <value>password</value> </property> </configuration>Paramètres :
-
hbase.zookeeper.quorum : le point de terminaison de connexion pour LindormTable. Vous trouverez ce point de terminaison dans la section Access by Using HBase Java API de la console.
Point de terminaison VPC : utilisez ce point de terminaison si Lindorm Shell s'exécute sur une instance ECS située dans le même VPC que votre instance Lindorm.
Point de terminaison public : utilisez ce point de terminaison si Lindorm Shell s'exécute sur une machine locale ou sur une instance ECS située en dehors du VPC de votre instance Lindorm.
hbase.client.username et hbase.client.password : le nom d'utilisateur et le mot de passe utilisés pour accéder à LindormTable. Si vous avez oublié votre mot de passe, modifiez-le dans le Cluster Management System de LindormTable. Pour plus d'informations, consultez la rubrique Modifier le mot de passe d'un utilisateur.
-
-
-
Connectez-vous à LindormTable en utilisant Lindorm Shell.
Accédez au répertoire
alihbase-2.0.18/binet exécutez la commande suivante../hbase shellLa sortie suivante indique que la connexion a réussi.
Version 2.0.18, r08b8d58a9d6ce89765d5ebe2ddff425aed644c16, Mon Feb 1 12:46:39 CST 2021 Took 0.0034 secondsRemarquePour plus d'informations sur l'utilisation du shell, consultez la rubrique Référence Lindorm Shell.
Référence Lindorm Shell
Référence des commandes
Pour plus d'informations sur les commandes du shell, consultez la documentation The Apache HBase Shell.
Langage de définition de données (DDL)
create : crée une table.
list : répertorie toutes les tables.
disable : désactive une table.
is_disabled : vérifie si une table est désactivée.
enable : active une table.
is_enabled : vérifie si une table est activée.
describe : affiche les détails d'une table, y compris ses propriétés et son schéma.
alter : modifie une table.
exists : vérifie si une table existe.
drop : supprime une table spécifiée.
Langage de manipulation de données (DML)
put : met à jour la valeur d'une cellule spécifique.
get : récupère le contenu d'une ligne ou d'une cellule spécifiée.
delete : supprime la valeur d'une cellule dans une table.
deleteall : supprime toutes les cellules d'une ligne spécifiée.
scan : analyse et renvoie les données de la table.
count : compte et renvoie le nombre de lignes dans une table.
truncate_preserve : tronque une table. Cette opération désactive, supprime, puis recrée la table spécifiée. La nouvelle table conserve les mêmes divisions de régions que la table d'origine.
Entrer et quitter le shell
-
Entrez dans l'environnement Shell.
bin/hbase shell -
Quittez l'environnement Shell.
quit
Exemples
Créer et insérer des données
-
Créez une table. Vous devez spécifier un nom pour la table et au moins une famille de colonnes.
create 'table_name', 'column_family_name'Exemple :
// Create a table named test with a column family named cf. create 'test', 'cf' -
Insérez des données.
put 'table_name', 'row_key', 'column_family:column_name', 'value'Exemple :
put 'test', 'row1', 'cf:a', 'value1' put 'test', 'row2', 'cf:b', 'value2' put 'test', 'row3', 'cf:c', 'value3'Remarquerow1est la clé de ligne de la tabletest,cf:aspécifie la famille de colonnes et le nom de colonne, etvalue1est la valeur.
Interroger des données
-
Interrogez les informations sur toutes les tables. Vous pouvez utiliser des expressions régulières pour filtrer les tables.
list list 'abc.*' list 'test' -
Interrogez les données d'une table spécifiée.
La commande
scanoffre un moyen flexible d'accéder aux données HBase. Vous pouvez utiliser la commandescanpour analyser une table entière ou interroger des données dans une plage spécifique. Une opération d'analyse est légèrement plus lente qu'une interrogation de ligne unique utilisant la commandeget. Exécutez la commande suivante pour interroger les données de la table test.scan 'table_name'Exemple :
scan 'test'Le résultat suivant est renvoyé :
ROW COLUMN+CELL row1 column=cf:a, timestamp=1421762485768, value=value1 row2 column=cf:b, timestamp=1421762491785, value=value2 row3 column=cf:c, timestamp=1421762496210, value=value3 3 row(s) in 0.0230 seconds -
Interrogez une seule ligne de données d'une table.
get 'table_name', 'row_key'Exemple :
get 'test', 'row1'Le résultat suivant est renvoyé :
COLUMN CELL cf:a timestamp=1421762485768, value=value1 1 row(s) in 0.0350 seconds
Désactiver et activer une table
Désactivez ou activez une table. Avant de pouvoir supprimer une table, modifier ses paramètres ou effectuer d'autres opérations de gestion, vous devez d'abord désactiver la table avec la commande disable. Une fois l'opération terminée, utilisez la commande enable pour la réactiver.
disable 'table_name'
enable 'table_name'
Supprimer une table
Supprimez une table spécifiée.
drop 'table_name'