IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Apprendre à travailler avec HBase - « Faire du NoSQL c'est juste faire des choix intelligents »,
Un tutoriel de Juvénal CHOKOGOUE

Le , par Malick

0PARTAGES

13  1 
Chers membres du club,

J'ai le plaisir de vous présenter ce tutoriel de Juvénal CHOKOGOUE :

Apprendre à travailler avec HBase
« Faire du NoSQL c’est juste faire des choix intelligents »
Avec toute la volumétrie des données dont on dispose aujourd’hui et toutes leurs caractéristiques, c'est impossible de penser « Gestion de données » tel qu'on l'a fait dans le passé, c'est-à-dire centraliser le stockage des données sur un serveur et centraliser le traitement de ces données sur un SGBDR. Dans l’ère du Big Data, l’approche appropriée consiste à distribuer le stockage des données et à paralléliser leur traitement sur les nœuds d’un cluster d’ordinateurs.

Les moteurs de bases de données relationnelles ne sont pas capables d’assurer la cohérence des données sur plusieurs nœuds d’un cluster. Leur capacité de distribution maximale est estimée à cinq nœuds, ce qui est largement insuffisant pour répondre aux exigences de volumétrie des données. Pour dépasser ces limites, de nouveaux SGBD dit "NoSQL" ont vu le jour. La particularité de ceux-ci est qu’ils n'imposent pas de structure particulière aux données, ils relâchent les contraintes qui empêchent les SGBDR de distribuer le stockage des données et sont linéairement scalables. HBase fait partie de cette catégorie de SGBD. Plus précisément, HBase fait partie de la catégorie de SGBD orientéscolonne, et est l’un des tous premiers SGBD NoSQL à large échelle mis sur pied. Créé en fin d'année 2006 par Chad Walters et Jim Kellerman, HBase a rejoint l'écosystème Hadoop en octobre 2007 et en juin 2010, il est devenu un projet prioritaire de la fondation Apache. Lire la suite du tutoriel....

Bonne lecture

Retrouvez les meilleurs cours et tutoriels NoSQL
Retrouvez les meilleurs cours et tutoriels pour apprendre Big Data

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Drannor
Membre habitué https://www.developpez.com
Le 24/01/2019 à 13:45
Merci pour ce tutoriel, j'y ai beaucoup découvert.
J'ai une question concernant la cohérence des données. Une colonne doit-elle appartenir qu'à une famille de colonnes ?
A la lecture de l'article, j'aurais dis que non vu qu'on souhaite une redondance des données pour un traitement plus rapide.

Mais si ce n'est pas le cas, la colonne va être dupliquée un certain nombre de fois.
Qu'est-ce qui se charge de répliquer la mise à jour d'une cellule appartenant à cette colonne dans toutes les famille qui la référence ?
0  0 
Avatar de jvc35
Membre éprouvé https://www.developpez.com
Le 28/01/2019 à 13:16
Bonjour @Drannor,

j'espère que tu vas bien et je te remercie pour ton commentaire.

Théoriquement, une colonne ne devrait appartenir qu'à une seule famille de colonnes. Mais rien ne t'empêche de la dupliquer dans plusieurs familles. HBase est très différent d'un SGBDR classique. Sa priorité ce n'est pas la cohérence [ACID]comme dans un SGBDR, mais le requêtage de gros volumes de données en un temps de latence le plus faible possible. Même si vous veniez à l'imposer, HBase ne vérifie pas le respect des contraintes d'intégrité reférentielle et sémantiques que vous auriez appliqué sur votre modèle. Ce qui fait que OUI, vous pouvez redonder ou utiliser la même colonne dans plusieurs familles différentes.

La redondance ne se fait pas sur les colonnes ou sur les cellules, mais sur les familles entières de colonnes. Les données des colonnes de chaque famille (prises ensembles) sont partitionnées horizontalement et persistées sur le HDFS sous forme de HFiles. Ce sont ces HFiles qui sont redondés et distribués.

J'espère que celà répond à ta question

Si tu as d'autres interrogations, n'hésites pas.

Cordialement,

Juvenal JVC
0  0 
Avatar de FrenchFrog
Nouveau Candidat au Club https://www.developpez.com
Le 15/06/2021 à 17:24
Merci pour ce tutoriel. A ma première compréhension d'Hbase, je vois un des avantages est d'avoir un système de versioning directement intégré à la solution. J'ai vu qu'avec le get, il est possible d'avoir une version antérieure d'une valeur et le TimestampsFilter permet même d'obtenir toutes les versions entre 2 dates. Toutefois, est-ce qu'il est facilement possible de remonter dans le temps? C'était de présenter l'état d'une table telle qu'elle était à un instant T? C'est à dire ignorer les insert/update postérieur à cette date et de réintégrer les valeurs qui ont été effacées. Je suppose que c'est plus compliqué se la structure de la table a été altérée mais sinon cela doit être théoriquement possible, non? Néanmoins, je ne vois pas à première vue de fonction native pour cela...
0  0 
Avatar de SQLpro
Rédacteur https://www.developpez.com
Le 15/06/2021 à 22:50
Cela est devenu le standard dans la version 2015 de la norme SQL avec la notion de tables temporelles...
À lire : http://mssqlserver.fr/wp-content/upl...mmentaires.pdf
Et il existe des opérateurs spécialisés afin de remonter dans le temps à un point précis ou bien dans une période...
Cela est intégré à SQL Server depuis la version 2017 par exemple.

A +
0  0