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

Apache HBase to baza danych NoSQL typu open source utworzona 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 bazie danych bez schematu. Baza danych jest zorganizowana według rodzin kolumn.

Z perspektywy użytkownika baza danych HBase jest podobna do bazy danych. Dane są przechowywane w wierszach i kolumnach tabeli, a dane w wierszu są grupowane według rodziny kolumn. 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 danych HBase w usłudze HDInsight jest oferowana jako zarządzany klaster zintegrowany ze środowiskiem Azure. Klastry są skonfigurowane do przechowywania danych bezpośrednio w usłudze Azure Storage, co zapewnia małe opóźnienie i zwiększoną elastyczność w zakresie wydajności i kosztów. Ta właściwość umożliwia klientom tworzenie interaktywnych witryn internetowych, które współpracują z dużymi zestawami danych. Aby tworzyć usługi przechowujące dane czujników i telemetrii z milionów punktów końcowych. Aby analizować te dane za pomocą zadań platformy 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 w czasie rzeczywistym pracę z dużymi zestawami danych.

Implementacja usługi HDInsight używa architektury HBase skalowanej w poziomie w celu zapewnienia automatycznego fragmentowania tabel. Silna spójność operacji odczytu i zapisu oraz automatyczne przełączanie w tryb failover. 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 Create HDInsight clusters on Azure Virtual Network (Tworzenie klastrów usługi HDInsight na platformie Azure Virtual Network).

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

W bazie danych HBase można zarządzać danymi za pomocą poleceń create, get, put i scan z poziomu powłoki HBase. Dane są zapisywane w bazie danych przy użyciu polecenia put i odczytywane przy użyciu polecenia get. Polecenie scan jest używane do uzyskiwania danych z wielu wierszy w tabeli. Danymi można również zarządzać przy użyciu interfejsu API w języku C# bazy danych HBase, który udostępnia bibliotekę klienta ponad interfejsem API REST 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 funkcja BigTable (i według rozszerzenia HBase) została utworzona na podstawie wyszukiwania w internecie. Aparaty wyszukiwania tworzą indeksy, które mapują terminy na zawierające je strony sieci Web. Istnieje jednak wiele innych przypadków użycia, w których baza danych HBase jest przydatna — niektóre z nich są wymienione w tej sekcji.

Scenariusz Opis
Magazyn wartości klucza Baza HBase może być używana 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 jest idealnym rozwiązaniem do przechowywania komunikacji internetowej i zarządzania nią. Usługa WebTable używa bazy danych HBase do wyszukiwania tabel wyodrębnianych ze stron sieci Web oraz zarządzania nimi.
Dane czujników Baza danych HBase może służyć do przechwytywania danych gromadzonych przyrostowo z różnych źródeł. Te dane obejmują analizę społeczną i szeregi czasowe. Interaktywne pulpity nawigacyjne są aktualne przy użyciu trendów i liczników oraz zarządzania systemami dzienników inspekcji. Przykłady obejmują terminal inwestora Bloomberg i bazę danych Open Time Series Database (OpenTSDB). Usługa 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. Dostęp do niego jest uzyskiwany jako sterownik JDBC i umożliwia wykonywanie zapytań dotyczących tabel 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 obejmują: Apache Hive, Apache Pig, Solr, Apache Flume, Apache Impala, Apache Spark, Gangliai Apache Drill.

Następne kroki