Udostępnij przez


Co to jest baza danych Apache HBase w usłudze Azure HDInsight

Apache HBase to baza danych NoSQL typu open source oparta na platformie Apache Hadoop i modelowana po google BigTable. Baza HBase zapewnia dostęp losowy i silną spójność dla dużych ilości danych w bez schematowej bazie danych. Baza danych jest zorganizowana według rodzin kolumn.

Z perspektywy użytkownika baza HBase jest podobna do bazy danych. Dane są przechowywane w wierszach i kolumnach tabeli, a dane w wierszu są grupowane według rodziny kolumn. Baza HBase to bez schematu baza danych. Kolumny i typy danych mogą być niezdefiniowane przed ich użyciem. Kod typu open source zapewnia skalowanie liniowe, umożliwiając obsługę petabajtów danych na tysiącach węzłów. Może ona polegać na nadmiarowości danych, przetwarzaniu wsadowym i innych funkcjach udostępnianych przez aplikacje rozproszone w środowisku hadoop.

W jaki sposób baza danych Apache HBase jest implementowana w usłudze Azure HDInsight?

Baza HBase usługi HDInsight jest oferowana jako klaster zarządzany zintegrowany ze środowiskiem platformy Azure. Klastry są skonfigurowane do przechowywania danych bezpośrednio w usłudze Azure Storage, co zapewnia małe opóźnienia i zwiększoną elastyczność w zakresie wydajności i wyborów kosztów. Ta właściwość umożliwia klientom tworzenie interaktywnych witryn internetowych, które współpracują z dużymi zestawami danych. Tworzenie usług, które przechowują dane czujników i danych telemetrycznych z milionów punktów końcowych. Aby analizować te dane za pomocą zadań Hadoop. Bazy danych HBase i Hadoop są dobrymi punktami wyjścia dla projektu danych big data na platformie Azure. Usługi mogą umożliwić aplikacjom czasu rzeczywistego pracę z dużymi zestawami danych.

Implementacja usługi HDInsight używa architektury skalowania poziomego HBase w celu zapewnienia automatycznego fragmentowania tabel. Silna spójność operacji odczytu i zapisu oraz automatyczne przełączanie awaryjne. Wydajność jest zwiększona dzięki buforowaniu w pamięci operacji odczytu i przesyłaniu strumieniowemu o wysokiej przepustowości obejmującemu operacje zapisu. Klaster bazy danych HBase można utworzyć w sieci wirtualnej. Aby uzyskać szczegółowe informacje, zobacz temat Create HDInsight clusters on Azure Virtual Network (Tworzenie klastrów usługi HDInsight w usłudze Azure Virtual Network).

W jaki sposób dane są zarządzane w bazie danych HBase usługi HDInsight?

Danymi można zarządzać w bazie HBase przy użyciu poleceń create, get, put i scan z poziomu powłoki HBase. Dane są zapisywane w bazie danych przy użyciu put i odczytywane przy użyciu get. Komenda scan służy do uzyskiwania danych z wielu wierszy w tabeli. Zarządzanie danymi można również wykonywać za pomocą interfejsu API C# dla HBase, który udostępnia bibliotekę klienta opartą na interfejsie REST API dla HBase. Bazę danych HBase można również odpytować przy użyciu programu Apache Hive. Aby zapoznać się z wprowadzeniem do tych modeli programowania, zobacz Wprowadzenie do korzystania z bazy danych Apache HBase z usługą Apache Hadoop w usłudze HDInsight. Dostępne są również współprocesory, które umożliwiają przetwarzanie danych w węzłach hostujących bazę danych.

Uwaga

Platforma Thrift nie jest obsługiwana przez bazę danych HBase w usłudze HDInsight.

Przypadki użycia bazy danych Apache HBase

Kanoniczny przypadek użycia, dla którego BigTable (a w konsekwencji HBase) został utworzony z wyszukiwarek internetowych. Aparaty wyszukiwania tworzą indeksy mapujące terminy na strony internetowe zawierające je. Istnieje jednak wiele innych przypadków użycia, dla których baza HBase jest odpowiednia — kilka z nich jest wyszczególnionych w tej sekcji.

Scenariusz Opis
Magazyn par klucz-wartość Baza HBase może służyć jako magazyn klucz-wartość i jest odpowiednia do zarządzania systemami komunikatów. Facebook używa bazy danych HBase do obsługi komunikatów i idealnie nadaje się do przechowywania komunikacji internetowej i zarządzania nią. Funkcja WebTable używa bazy danych HBase do wyszukiwania tabel wyodrębnionych ze stron internetowych i zarządzania nimi.
Dane czujnika Baza HBase jest przydatna do przechwytywania danych zbieranych przyrostowo z różnych źródeł. Te dane obejmują analizę społeczności i szeregi czasowe. Utrzymanie aktualności interaktywnych pulpitów nawigacyjnych z uwzględnieniem trendów i liczników oraz zarządzanie systemami logów audytowych. Przykłady obejmują terminal inwestora Bloomberg i bazę danych Open Time Series Database (OpenTSDB). OpenTSDB przechowuje i zapewnia dostęp do metryk zebranych na temat kondycji systemów serwerowych.
Zapytania w czasie rzeczywistym Apache Phoenix to aparat zapytań SQL dla bazy danych Apache HBase. Jest on dostępny jako sterownik JDBC i umożliwia wykonywanie zapytań w tabelach HBase i zarządzanie nimi przy użyciu języka SQL.
HBase jako platforma Aplikacje mogą działać w bazie danych HBase, wykorzystując ją jako magazyn danych. Przykłady obejmują Phoenix, OpenTSDB, Kijii Titan. Aplikacje można również integrować z bazą danych HBase. Przykłady to: Apache Hive, Apache Pig, Solr, Apache Flume, Apache Impala, Apache Spark Ganglia, i Apache Drill.

Następne kroki