Samouczek HBase dla początkujących: Co to jest HBase? Naucz się w 3 dni!
Podsumowanie samouczka HBase
Hbase to zorientowany na kolumny system zarządzania bazą danych, który działa na HDFS (Hadoop Distributed File System). W tym samouczku HBase dla początkujących poznasz podstawy Apache HBase i zaawansowane koncepcje. Ten kurs HBase zawiera wszystkie podstawy HBase, od wprowadzenia, instalacji, architektury po zaawansowane rzeczy.
Co to jest HBase?
HBase to zorientowany na kolumny rozproszony system baz danych typu open source w formacie Hadoop środowisko. Początkowo był to Google Big Table, później przemianowano go na HBase i jest głównie napisany w Java. Apache HBase jest potrzebny do aplikacji Big Data w czasie rzeczywistym.
HBase może przechowywać ogromne ilości danych od terabajtów do petabajtów. Tabele obecne w HBase składają się z miliardów wierszy zawierających miliony kolumn. HBase jest zbudowany dla operacji o niskim opóźnieniu, co oznacza pewne specyficzne cechy w porównaniu do tradycyjnych modeli relacyjnych.
Program szkolenia HBase
Oto, co omawiamy w tym przewodniku szkoleniowym Apache HBase
👍 Lessna 1 | Archistrukturę HBase — HBase Architecture, komponenty i model danych |
👍 Lessna 2 | Instalacja HBase’a — Instalacja HBase włączona Ubuntu |
👍 Lessna 3 | Polecenia powłoki HBase — Ucz się na przykładzie |
👍 Lessna 4 | HBase Utwórz tabelę — Kroki tworzenia tabeli w HBase przy użyciu Java API |
👍 Lessna 5 | Wstaw i pobierz dane w HBase — get(), put(), scan() Przykłady |
👍 Lessna 6 | Wąskie gardła wydajności w HBase — Zalety i ograniczenia HBase |
👍 Lessna 7 | Pytania do rozmowy kwalifikacyjnej Hbase — 30 najważniejszych pytań i odpowiedzi podczas rozmowy kwalifikacyjnej Hbase |
Czego dowiesz się z tego samouczka HBase dla początkujących?
W tym samouczku HBase dla początkujących dowiesz się, czym jest Apache HBase Architecture HBase, Jak zainstalować HBase, Kroki tworzenia tabeli w HBase, Zalety i ograniczenia HBase itp.
Dlaczego warto wybrać HBase?
Tabela popularnej aplikacji internetowej może składać się z miliardów wierszy. Jeśli chcemy przeszukać konkretny wiersz z tak ogromnej ilości danych, HBase jest idealnym wyborem, ponieważ czas pobierania zapytania jest krótszy. Większość aplikacji analityki online używa HBase.
Tradycyjne relacyjne modele danych nie spełniają wymagań wydajnościowych bardzo dużych baz danych. Te ograniczenia wydajności i przetwarzania można pokonać za pomocą Apache HBase.
Funkcje Apache HBase
- HBase jest stworzony do operacji o niskim opóźnieniu
- Baza danych HBase jest szeroko wykorzystywana do losowych operacji odczytu i zapisu
- HBase przechowuje dużą ilość danych w formie tabel
- Zapewnia liniową i modułową skalowalność w środowisku klastrowym
- Ściśle spójny dla operacji odczytu i zapisu
- Automatyczne i konfigurowalne dzielenie tabel na fragmenty
- Obsługa automatycznego przełączania awaryjnego pomiędzy serwerami regionalnymi
- Wygodne klasy bazowe do tworzenia kopii zapasowych Mapa HadoopReduce zadania w tabelach HBase
- Mudah digunakan Java API umożliwiające dostęp klienta
- Zablokuj pamięć podręczną i filtry Bloom dla zapytań w czasie rzeczywistym
- Predykat zapytania jest przekazywany w dół za pomocą filtrów po stronie serwera.
Znaczenie baz danych NoSQL w Hadoop
W analizie dużych zbiorów danych Hadoop odgrywa istotną rolę w rozwiązywaniu typowych problemów biznesowych poprzez zarządzanie dużymi zbiorami danych i daje najlepsze rozwiązania w dziedzinie analityki.
W ekosystemie Hadoop każdy komponent odgrywa swoją unikalną rolę
-
Przetwarzanie danych
-
Walidacji danych
-
Przechowywanie danych
Jeśli chodzi o przechowywanie nieustrukturyzowanych i częściowo ustrukturyzowanych danych oraz ich odzyskiwanie, relacyjne bazy danych są mniej przydatne. Ponadto pobieranie wyników poprzez zastosowanie zapytań do ogromnych zbiorów danych przechowywanych w pamięci Hadoop jest trudnym zadaniem. Technologie przechowywania NoSQL zapewniają najlepsze rozwiązanie do szybszego wykonywania zapytań na ogromnych zbiorach danych.
Inne bazy danych typu NoSQL
Niektóre z modeli NoSQL obecnych na rynku to Cassandra, MongoDB, CouchDB. Każdy z tych modeli charakteryzuje się odmiennym sposobem przechowywania.
Na przykład, MongoDB to zorientowana na dokumenty baza danych z drzewa genealogicznego NoSQL. W porównaniu z tradycyjnymi bazami danych zapewnia najlepsze funkcje pod względem wydajności, dostępności i skalowalności. Jest to baza danych typu open source zorientowana na dokumenty i jest w niej zapisana C++.
Cassandra to także rozproszona baza danych z oprogramowania Apache o otwartym kodzie źródłowym, zaprojektowana do obsługi ogromnej ilości danych przechowywanych na serwerach towarowych. Cassandra zapewnia wysoką dostępność bez pojedynczego punktu awarii.
Kompletujemy wszystkie dokumenty (wymagana jest kopia paszportu i XNUMX zdjęcia) potrzebne do CouchDB to baza danych zorientowana na dokumenty, w której pola każdego dokumentu są przechowywane na mapach klucz-wartość.
Czym różni się HBase od innych modeli NoSQL
Model przechowywania HBase różni się od innych modeli NoSQL omówionych powyżej. Można to określić w następujący sposób.
-
HBase przechowuje dane w postaci par klucz/wartość w modelu kolumnowym. W tym modelu wszystkie kolumny są zgrupowane w rodziny kolumn.
-
HBase zapewnia elastyczny model danych i dostęp o niskim opóźnieniu do małych ilości danych przechowywanych w dużych zestawach danych.
-
HBase na Hadoop zwiększy przepustowość i wydajność rozproszonego klastra. W zamian zapewnia szybsze losowe operacje odczytu i zapisu.
Którą bazę danych NoSQL wybrać?
MongoDB, CouchDB, Cassandra to bazy danych typu NoSQL, które są specyficzne dla funkcji i wykorzystywane zgodnie z potrzebami biznesowymi. Tutaj wymieniliśmy różne bazy danych NoSQL według ich przypadku użycia.
Typ bazy danych oparty na funkcji | Przykład bazy danych | Przypadek użycia (kiedy używać) |
---|---|---|
Kluczowa wartość | Redis, MemcacheDB | Buforowanie, kolejkowanie, dystrybucja informacji |
Zorientowane na kolumny | Cassandra, HBase | Skalowanie, zachowanie nieustrukturyzowanej, nieulotnej |
Zorientowany na dokument | MongoDB, Kanapa | Informacje zagnieżdżone, JavaPrzyjazny dla skryptu |
Oparte na wykresach | OrientDB, Neo4J | Obsługa złożonych informacji relacyjnych. Modelowanie i obsługa klasyfikacji. |
HBase kontra HBase Ul
Funkcjonalności | HBase | Ul |
---|---|---|
Model bazy danych | Sklep z szeroką kolumną | Relacyjny system zarządzania bazą danych |
Schemat danych | Schemat - bezpłatny | Ze schematem |
Wsparcie SQL | Nie | Tak, używa HQL (języka zapytań Hive) |
Metody partycjonowania | Sharding | Sharding |
Poziom spójności | Natychmiastowa spójność | Ostateczna spójność |
Indeksy wtórne | Nie | Tak |
Metody replikacji | Możliwość wyboru współczynnika replikacji | Możliwość wyboru współczynnika replikacji |
HBase kontra HBase RDBMS
Porównując HBase z tradycyjnymi relacyjnymi bazami danych, musimy wziąć pod uwagę trzy kluczowe obszary. Są to model danych, przechowywanie danych i różnorodność danych.
HBAZA | RDBMS |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Podsumowanie
HBase zapewnia unikalne funkcje i rozwiązuje typowe przypadki zastosowań przemysłowych. Jako pamięć zorientowana na kolumny, zapewnia szybkie wykonywanie zapytań, pobieranie wyników i dużą ilość miejsca do przechowywania danych. Ten kurs stanowi kompletne wprowadzenie krok po kroku do HBase.