Qu’est-ce qu’Azure HDBase dans Azure HDInsightWhat is Apache HBase in Azure HDInsight

Apache HBase est une base de données NoSQL open source, basée sur Apache Hadoop et modélisée d’après Google BigTable.Apache HBase is an open-source, NoSQL database that is built on Apache Hadoop and modeled after Google BigTable. HBase fournit un accès aléatoire et une forte cohérence pour de vastes quantités de données non structurées et semi-structurées, dans une base de données sans schéma, organisée par familles de colonnes.HBase provides random access and strong consistency for large amounts of unstructured and semistructured data in a schemaless database organized by column families.

Du point de vue de l’utilisateur, HBase est similaire à une base de données.From user perspective, HBase is similar to a database. Les données sont stockées dans les lignes et colonnes d’une table et les données au sein d’une ligne sont regroupées par familles de colonnes.Data is stored in the rows and columns of a table, and data within a row is grouped by column family. HBase est une base de données sans schéma dans le sens où ni les colonnes ni le type de données qui y sont stockées ne doivent être définis avant de pouvoir les utiliser.HBase is a schemaless database in the sense that neither the columns nor the type of data stored in them need to be defined before using them. Le code open source peut être mis à l'échelle de façon linéaire pour gérer des pétaoctets de données dans des milliers de nœuds.The open-source code scales linearly to handle petabytes of data on thousands of nodes. Il peut reposer sur la redondance des données, le traitement par lots et d'autres fonctionnalités qui sont fournies par des applications distribuées dans l'écosystème Hadoop.It can rely on data redundancy, batch processing, and other features that are provided by distributed applications in the Hadoop ecosystem.

Implémentation d’Apache HBase dans Azure HDInsightHow is Apache HBase implemented in Azure HDInsight?

HDInsight HBase est proposé en tant que cluster géré intégré à l'environnement Azure.HDInsight HBase is offered as a managed cluster that is integrated into the Azure environment. Les clusters sont configurés de façon à stocker les données directement dans le Stockage Azure, ce qui fournit une faible latence et une élasticité accrue en matière de choix de performances et de coût.The clusters are configured to store data directly in Azure Storage which provides low latency and increased elasticity in performance and cost choices. Cela permet aux clients de créer des sites web interactifs fonctionnant avec des jeux de données volumineux, de créer des services stockant les données de capteur et de télémétrie provenant de millions de points de terminaison, et d'analyser ces données avec des tâches Hadoop.This enables customers to build interactive websites that work with large datasets, to build services that store sensor and telemetry data from millions of end points, and to analyze this data with Hadoop jobs. HBase et Hadoop sont de bons points de départ pour les projets présentant des données volumineuses dans Azure, et, en particulier, ils permettent à des applications en temps réel d'opérer avec des jeux de données volumineux.HBase and Hadoop are good starting points for big data project in Azure; in particular, they can enable real-time applications to work with large datasets.

La mise en œuvre de HDInsight exploite l'architecture de montée en charge de HBase pour fournir un partitionnement automatique des tables, une cohérence forte pour les lectures et les écritures, et un basculement automatique.The HDInsight implementation leverages the scale-out architecture of HBase to provide automatic sharding of tables, strong consistency for reads and writes, and automatic failover. Les performances sont optimisées par la mise en cache en mémoire des lectures et par des écritures en diffusion à débit élevé.Performance is enhanced by in-memory caching for reads and high-throughput streaming for writes. Vous pouvez créer un cluster HBase au sein du réseau virtuel.HBase cluster can be created inside virtual network. Pour en savoir plus, voir Création de clusters HBase sur Azure Virtual Network.For details, see Create HDInsight clusters on Azure Virtual Network.

Mode de gestion des données HDInsight HBaseHow is data managed in HDInsight HBase?

Les données peuvent être gérées dans HBase au moyen des commandes create, get, put et scan provenant du Shell HBase.Data can be managed in HBase by using the create, get, put, and scan commands from the HBase shell. Les données sont écrites dans la base de données au moyen de put et lues avec get.Data is written to the database by using put and read by using get. La commande scan permet d'obtenir des données à partir de plusieurs lignes dans une table.The scan command is used to obtain data from multiple rows in a table. Les données peuvent également être gérées au moyen de l'API HBase C#, qui fournit une bibliothèque cliente par-dessus l'API REST HBase.Data can also be managed using the HBase C# API, which provides a client library on top of the HBase REST API. Une base de données HBase peut également être interrogée en utilisant Apache Hive.An HBase database can also be queried by using Apache Hive. En guise d’introduction à ces modèles de programmation, consultez la page Bien démarrer avec Apache HBase et Apache Hadoop dans HDInsight.For an introduction to these programming models, see Get started using Apache HBase with Apache Hadoop in HDInsight. Des coprocesseurs, permettant de traiter des données dans les nœuds qui hébergent la base de données, sont également disponibles.Coprocessors are also available, which allow data processing in the nodes that host the database.

Notes

Thrift n’est pas pris en charge par HBase dans HDInsight.Thrift is not supported by HBase in HDInsight.

Scénarios : Cas d’utilisation pour Apache HBaseScenarios: Use cases for Apache HBase

Les recherches Web sont le cas d’utilisation canonique pour lequel BigTable, et par extension HBase, ont été créés.The canonical use case for which BigTable (and by extension, HBase) was created from web search. Les moteurs de recherche créent des index qui mappent les termes avec les pages web les contenant.Search engines build indexes that map terms to the web pages that contain them. Mais il existe de nombreux autres cas d'utilisation pour lesquels HBase est adapté : plusieurs sont répertoriés dans cette section.But there are many other use cases that HBase is suitable for—several of which are itemized in this section.

  • stockage clé-valeurKey-value store

    HBase peut être utilisé comme stockage clé-valeur et convient pour la gestion des systèmes de messagerie.HBase can be used as a key-value store, and it is suitable for managing message systems. Facebook utilise HBase pour son système de messagerie et il est idéal pour le stockage et la gestion des communications Internet.Facebook uses HBase for their messaging system, and it is ideal for storing and managing Internet communications. WebTable utilise HBase pour rechercher et gérer des tables extraites à partir de pages Web.WebTable uses HBase to search for and manage tables that are extracted from webpages.

  • données de capteurSensor data

    HBase est utile pour la capture de données collectées de façon incrémentielle à partir de diverses sources.HBase is useful for capturing data that is collected incrementally from various sources. Cela inclut l'analytique sociale, les séries chronologiques, la mise à jour des tableaux de bord interactifs avec les tendances et les compteurs, et la gestion de systèmes de journal d'audit.This includes social analytics, time series, keeping interactive dashboards up-to-date with trends and counters, and managing audit log systems. Par exemple, le Bloomberg Terminal et la base de données OpenTSDB (Open Time Series Database) qui stocke les métriques collectées sur l'intégrité des systèmes serveur et y donne accès.Examples include Bloomberg trader terminal and the Open Time Series Database (OpenTSDB), which stores and provides access to metrics collected about the health of server systems.

  • requête en temps réelReal-time query

    Apache Phoenix est un moteur de requête SQL pour Apache HBase.Apache Phoenix is a SQL query engine for Apache HBase. Il est accessible en tant que pilote JDBC et permet d'interroger et de gérer les tables HBase au moyen de SQL.It is accessed as a JDBC driver, and it enables querying and managing HBase tables by using SQL.

  • HBase en tant que plateformeHBase as a platform

    Les applications peuvent fonctionner par-dessus HBase, en l'utilisant comme banque de données.Applications can run on top of HBase by using it as a datastore. Exemples : Phoenix, OpenTSDB, Kiji et Titan.Examples include Phoenix, OpenTSDB, Kiji, and Titan. Les applications peuvent également s'intégrer à HBase.Applications can also integrate with HBase. Exemples : Apache Hive, Apache Pig, Solr, Apache Storm, Apache Flume, Apache Impala, Apache Spark , Ganglia et Apache Drill.Examples include Apache Hive, Apache Pig, Solr, Apache Storm, Apache Flume, Apache Impala, Apache Spark , Ganglia, and Apache Drill.

Étapes suivantesNext steps