Apache HBase est une base de données non relationnelle (NoSQL) conçue pour les analyses Big Data. Elle permet de traiter très rapidement d’immenses volumes de données de différentes sources et de structures diverses. Découvrez tout ce que vous devez savoir à son sujet.
Face à l’essor du Big Data, de nombreuses entreprises doivent désormais traiter des quantités massives de données. Dans ce contexte, les bases de données d’autrefois ne peuvent plus répondre à leurs besoins. Le volume de données à traiter est tel que les requêtes excèdent bien souvent les capacités d’un seul serveur. De même, les bases de données RDBMS ne peuvent prendre en charge des quantités massives de lectures et d’écritures. Cette base de données NoSQL peut répondre à cette problématique. Facebook, le promoteur de Cassandra, a finalement remplacé son propre outil.
Apache HBase : qu’est-ce que c’est ?
https://www.youtube.com/watch?v=IumVWII3fRQ
Apache Hbase est une base de données non relationnelle (NoSQL), reprenant le concept et les fonctionnalités de Google BigTable. La différence est que HBase est Open Source. Cette base de données s’exécute généralement sur le système de fichiers distribués Hadoop (HDFS). Elle offre un accès d’écriture et de lecture en temps réel, aléatoire et cohérent, à des tables contenant des milliards de lignes et des millions de colonnes.
Elle permet aussi combiner des sources de données reposant sur différentes structures et différents schémas. Il s’agit donc d’un très bon choix pour le stockage de données multi-structurel. Il est aussi possible d’effectuer des requêtes pour un repère temporel spécifique, ce qui permet de réaliser des requêtes » flashback « .
Nativement intégrée avec Hadoop, HBase fonctionne avec d’autres moteurs d’accès aux données par le biais de YARN. Son langage de programmation est le Java.
Apache HBase reprend toutes les fonctionnalités de Google BigTable. On retrouve ainsi les filtres Bloom, ou encore les opérations et la compression in-memory. Les tables de cette base de données peuvent servir d’entrée pour les tâches MapReduce dans l’écosystème Hadoop, et peuvent aussi servir de sortie après traitement des données par MapReduce.
Concrètement, HBase est un data store key-value orienté colonne. Il peut donc fonctionner avec toutes les données traitées par Hadoop. Il n’est pas possible de l’utiliser pour remplacer une base de données SQL, mais il est possible d’ajouter une couche SQL à cette data base pour l’intégrer avec les différents outils de Business Intelligence et d’analyse de données.
Quels sont les avantages ?
Les avantages de HBase sont nombreux. Tout d’abord, cette base de données présente une importante tolérance aux pannes. Les données sont répliquées sur les différents serveurs du Data Center, et un failover (basculement) automatique garantit une haute disponibilité. De plus, le sharding et l’équilibrage des charges et des tables est automatique.
Cette base de données non relationnelle est également rapide. Il propose des lookups en temps réel ou presque, et un processing server side par le biais de filtres et de coprocesseurs. Un caching in-memory est également proposé. Son dernier avantage est sa versatilité. Les modèles de données peuvent avoir de nombreux cas d’usage. Il est possible d’exporter les métriques via les plugins File et Ganglia.
Le stockage distribué proposé par HBase permet par ailleurs d’effectuer des requêtes sur des quantités massives de données. Enfin, il est possible de » scaler » les capacités de lecture et d’écriture de cette technologie à des millions par seconde, ce qui permet de surmonter les limites des bases de données RDBMS.
- Partager l'article :