Vous êtes sur la page 1sur 12

06/03/2021 Hbase pas à pas

Qui Accueil ?
sommes-nous Formations
CGV Big DataDéposezTutoriels
Contact votre CV Témoignages Contact Blog
  

HBASE
HBase est un système de gestion de base de données non-relationnelles distribué, écrit en Java,
disposant d’un stockage structuré pour les grandes tables.

HBase est inspirée des publications de Google sur BigTable. Comme BigTable, elle est une base de
données orientée colonnes. Basées sur une architecture maître/esclave, les bases de données de ce
type sont capables de gérer d’énormes quantités d’informations (plusieurs milliards de lignes par
table)2.

HBase est un sous-projet d’Hadoop, un framework d’architecture distribuée. La base de données


HBase s’installe généralement sur le système de chiers HDFS d’Hadoop pour faciliter la distribution,
même si ce n’est pas obligatoire.

L’essentiel de HBASE :

Lancer Hbase

Lancer Hbase en mode commande :

Commande :

Hbase shell

Résultat :

hbase(main):001:0>

Commandes générales HBASE



Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 1/12
06/03/2021 Hbase pas à pas

 
 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 
Lister le nombre de serveurs hbase utilisés

Commande :

hbase(main):001:0> statut

Résultat :

hbase(main):002:0> status

1 servers, 0 dead, 6.0000 average load

La version Hbase utilisée

Commande :

hbase(main):001:0> version

Résultat :

hbase(main):001:0> version

1.0.0-cdh5.5.0, rUnknown, Mon Nov 9 12:40:01 PST 2015

Avoir des informations sur l’utilisateur actuel

Commande :

hbase(main):001:0>

Résultat :

hbase(main):003:0> whoami

cloudera (auth:SIMPLE)

groups: cloudera, default

Commande help sous hbase pour connaitre toutes les commandes disponibles et leurs
explications

Commande :

hbase(main):001:0> table_help

Résultat : 
Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 2/12
06/03/2021 Hbase pas à pas

Hbase affiche toutes les commandes disponibles sous Hbase


 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 
 

Manipulation de tables sous HBASE

Lister les tables créées sous Hbase

Commande :

hbase(main):001:0> list

Résultat :

hbase(main):028:0> list

TABLE

0 row(s) in 0.0480 seconds

=> []

Créer une table Hbase : pour le faire, il faut créer donner le nom de table et la column family
dans notre exemple est le nom de la table formation et la colonne family c’est le  type .

Commande :

hbase(main): hbase(main):029:0> create 'formation','type'

Résultat :

hbase(main):029:0> create 'formation','type'

0 row(s) in 0.9110 seconds

=> Hbase::Table - formation

hbase(main):030:0>

Si on véri e avec la commande  list cela donne :



Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 3/12
06/03/2021 Hbase pas à pas

hbase(main):030:0> list
 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 
TABLE

formation

1 row(s) in 0.0280 seconds

=> ["formation"]

hbase(main):031:0>

Donc la table formation est bien créée.

Créer une deuxième table ayant comme nom tb_bigdata et la column family source comme
suit :

Commande :

hbase(main):031:0> create 'tb_bigdata','source'

0 row(s) in 1.0180 seconds

=> Hbase::Table - tb_bigdata

hbase(main):032:0>

Véri cation :

hbase(main):032:0> list

TABLE

formation

tb_bigdata

2 row(s) in 0.0540 seconds

=> ["formation", "tb_bigdata"]

La table tb_bigdata est bien créée


Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 4/12
06/03/2021 Hbase pas à pas

Supprimer une table HBASE. Avant de supprimer une table sous hbase il faut d’abord désactiver
 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 
la table puis faire un drop comme suit :

Exemple : Suppression de la table formation Tout d’abord on véri e son état si elle est activée ou
désactivée avec les commandes is_disabled ( désactivée ) ou is_enabled ( activée )

Commande :

hbase(main): hbase(main):029:0> is_enabled 'formation'

Résultat :

hbase(main):039:0> is_enabled 'formation'

true

0 row(s) in 0.0630 seconds

Si on tente de la supprimer en l’état ( Activée ) comme suit :

hbase(main):040:0> drop 'formation'

Résultat :

hbase(main):040:0> drop 'formation'

ERROR: Table formation is enabled. Disable it first.'

Here is some help for this command: Drop the named table. Table must rst be disabled:

hbase> drop 't1'

hbase> drop 'ns1:t1'

Donc il a che simplement un message d’erreur en disant que la table soit désactivée avant
suppression, donc : Etape 1 : désactivé la table comme suit :

hbase(main):045:0> disable 'formation'

0 row(s) in 1.4060 seconds

Véri e son état avec la commande is_disabled :


Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 5/12
06/03/2021 Hbase pas à pas

hbase(main):001:0> is_disabled 'formation'


 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 
true

0 row(s) in 0.9240 seconds

Etape 2 : suppression de la table :

hbase(main):002:0> drop 'formation'

0 row(s) in 0.6770 seconds

Véri cation avec la commande list pour voir si la table est bien supprimée :

hbase(main):003:0> list

TABLE

tb_bigdata

1 row(s) in 0.0240 seconds

Activer toutes les tables hbase commençant par un pré x commun exemple :

Nous disposons des tables suivantes sous HBASE

hbase(main):008:0> list

TABLE

tb_bigdata

tb_classe

tb_formation

3 row(s) in 0.0480 seconds

On constate qu’il y a 3 tables ayant un pré xe tb_ donc nous pouvons activer ces 3 tables comme suit :

hbase(main):013:0> enable_all 'tb.*'

tb_bigdata

tb_classe

Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 6/12
06/03/2021 Hbase pas à pas

 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 


tb_formation

Enable the above 3 tables (y/n)?

3 tables successfully enabled

’inverse est vrai c’est-à-dire :

Pour désactiver toutes les tables hbase commençant par un pré x commun par exemple :

hbase(main):014:0> disable_all 'tb.*'

tb_bigdata

tb_classe

tb_formation

Disable the above 3 tables (y/n)?

3 tables successfully disabled

L’existance d’une de tables sous HBASE

A l’inverse de la commande list, pour véri er l’existance d’une table hbase :

Commande :

hbase(main):016:0> exists 'tb_classe'

Table tb_classe does exist

Une table qui n’existe pas :

hbase(main):017:0> exists 'toto'

Table toto does not exist


Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 7/12
06/03/2021 Hbase pas à pas

La description d’une de tables HBASE ( describe )


 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 
  Pour avoir la description d’une table hbase, il su t de lancer la commande suivante :

Commande :

hbase(main):019:0> describe

Exemple : description de la table tb_bigdata hbase(main):019:0> describe ‘tb_bigdata’ Résultat :

hbase(main):019:0> describe 'tb_bigdata'

Table tb_bigdata is DISABLED

tb_bigdata

COLUMN FAMILIES DESCRIPTION

{NAME => 'source', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCO

=> '1', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CEL

IZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}

1 row(s) in 0.0920 seconds

Cette commande nous renvoie des informations concernant l’état de la table si elle est activée ou pas,
le nom de la column family ‘source’ etc. Nous reviendrons à ce cette commande après insertion de
données dans la table pour voir d’autres informations relatives aux données.

La modi cation d’une de tables HBASE ( alter )

Insérer les données dans une tables HBASE ( put )

Exemple :  table client ayant deux column family « information pro : poste  et ville  »  et une autre
information prive «  telephone et salaire » Alimenté comme ceci : Table client :

Id Information pro Information prive


1 Ing Paris 06335544 4500
2 TS Cergy 076543030 1200
3 PHD Nantes 076540323 6000
          

Création de table 
Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 8/12
06/03/2021 Hbase pas à pas

hbase(main):019:0> create 'client','information pro', 'information prive'


 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 
0 row(s) in 0.6130 seconds

=> Hbase::Table - client

2- Insertion des données dans Hbase : Insertion de la donnée ing de l’id 1, de la QF : information pro
de : quali er poste

hbase(main):022:0> put 'client', '1', 'information pro:poste','ing'

0 row(s) in 0.0240 seconds

2- Insertion des données dans Hbase : Insertion de la donnée paris de l’id 1, de la QF : information pro
de : quali er ville

hbase(main):024:0> put 'client', '1', 'information pro:ville','paris'

0 row(s) in 0.0240 seconds

2- Insertion des données dans Hbase : Insertion de la donnée 06335544de l’id 1, de la QF : information
prive de : quali er tel

hbase(main):025:0> put 'client', '1', 'information prive:tel','06335544'

0 row(s) in 0.0190 seconds

2- Insertion des données dans Hbase : Insertion de la donnée 4500 l’id 1, de la QF : information prive
de : quali er salaire

hbase(main):026:0> put 'client', '1', 'information prive:salaire','06335544'

row(s) in 0.0130 seconds

3-Pour voir la première ligne du tableau client :

hbase(main):027:0> scan 'client'

ROW COLUMN+CELL

1 column=information prive:salaire, timestamp=14611090

1 column=information prive:tel, timestamp=14611089161

1 column=information pro:poste, timestamp=146110861664


Con dentialité - Conditions

1 column=information pro:ville, timestamp=146110877769


https://www.formation-bigdata.com/hbase-pas-a-pas/ 9/12
06/03/2021 Hbase pas à pas

 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 


1 row(s) in 0.0610 seconds

Faire la même chose pour l’id 2 et l’id 3

Les versions dans Hbase

Hbase peut enregistrer n valeur pour la même clé, on appelle cela la VERSIONS ( déconseillé d’aller
plus que 100 ), cette dernière on l’initie à la création de la table comme suit :

create 'Etudiant', {NAME =>'cf', VERSIONS => 4}

Cela signi e qu’on crée la table étudiant et la column family cf avec 4 versions pour la même valeur
Exemple : On alimente la table Etudiant comme suit :

put 'Etudiant', 'row3', 'cf:c', 'value1'

put 'Etudiant', 'row3', 'cf:c', 'value2'

put 'Etudiant', 'row3', 'cf:c', 'value3'

Si on fait un simple scan : on constate que, que la dernière value est a chée

hbase(main):097:0> scan 'Etudiant'

ROW COLUMN+CELL

row3 column=cf:c, timestamp=1461111223262, value=value3

On revanche si on veut consulter toutes les valeurs de la clé row3 :

hbase(main):098:0> scan 'Etudiant' , { VERSIONS => 4}

Résultat :

hbase(main):098:0> scan 'Etudiant' , { VERSIONS => 4}

ROW COLUMN+CELL

row3 column=cf:c, timestamp=1461111223262, value=value3

row3 column=cf:c, timestamp=1461111220557, value=value2

row3 column=cf:c, timestamp=1461111216218, 


value=value1
Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 10/12
06/03/2021 Hbase pas à pas

 Accueil Formations Big Data Tutoriels Témoignages Contact Blog 


1 row(s) in 0.0820 seconds

Newsletter

Retrouvez l’essentiel de l’actualité du Big Data directement par mail !

Les experts de Formation-BigData décortiquent chaque mois l’actualité, les dernières innovations.

Adresse email

Inscription

QUI SOMMES-NOUS ? CONTACT INFO


Newsletter
Formation Big Data est un Email:
centre de formation axé sur Adresse email institut@quantmetry.com
les technologies du Big Data.
Les formations dispensées
sont aussi bien destinées aux Inscription DERNIERS TWEETS
experts décisionnels. Notre
objectif est de vous
accompagner et de vous
***** Formation Scala ***** Détails
encadrer dans l’apprentissage ARTICLES RÉCENTS de la formation au lien suivant lnk
des différentes technologies
contact@formation-bigdat
Big Data. Nous sommes une
 SQL VS. NOSQL- WHAT pic.twitter.com/ZyH9
équipe d’experts en Big Data,
YOU NEED TO KNOW
BI et Data Science ayant plus Il y a 4 ans De Formation BigConData's Twitt

dentialité - Conditions

Répondre · Retweeter · Fav


https://www.formation-bigdata.com/hbase-pas-a-pas/ 11/12
06/03/2021 Hbase pas à pas

de 15 années d’expérience sur


 Accueil  Data Tutoriels
Formations Big Data : les 7 sujets chauds
Témoignages Contact Blog 
la mise en place et
pour 2017
l’industrialisation de solutions Suivre @Form_BigData 76 abonnés
BI puis Big Data chez des
clients de renommée
mondiale.

RÉSEAUX SOCIAUX

  

Formation-BigData.com Copyright FRANCE 2017 | Tout droits réservés


Con dentialité - Conditions

https://www.formation-bigdata.com/hbase-pas-a-pas/ 12/12

Vous aimerez peut-être aussi