Najczęściej zadawane pytania i odpowiedzi dotyczące wywiadu HBase [Ultimate Guide]

Opublikowany: 2020-09-21

Apache HBase to doskonałe rozwiązanie do obsługi dużych zbiorów danych, gdy chcesz, aby Twoja aplikacja wypychała lub pobierała dane w czasie rzeczywistym. Znany jest głównie z elastycznego schematu i dużej szybkości. Ten artykuł ma na celu udzielenie odpowiedzi na niektóre z najważniejszych pytań do wywiadów HBase . Ankieterzy chcą sprawdzić zarówno techniczną, jak i ogólną świadomość kandydatów. Tak więc twój wysiłek powinien polegać na dokładnym i dokładnym przekazaniu pojęć.

Wiele wiodących firm korzysta z technologii Hbase na całym świecie, w tym Adobe, HubSpot, Facebook, Twitter, Yahoo!, OpenLogic i StumbleUpon. Dla początkujących twórców stron internetowych, którzy chcą budować skalowalne strony internetowe, narzędzia do masteringu, takie jak Hadoop i HBase, mogą okazać się niezwykle przydatne.

Dowiedz się nauki o danych z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Przeczytaj: Pomysły na projekty Hadoop

Spis treści

Najpopularniejsze pytania i odpowiedzi dotyczące wywiadu HBase

1. Co to jest HBase?

Jest to zorientowana kolumnowo baza danych opracowana przez Apache Software Foundation. Działając na szczycie klastra Hadoop, HBase służy do przechowywania danych częściowo ustrukturyzowanych i nieustrukturyzowanych. Nie ma więc sztywnego schematu, takiego jak tradycyjna relacyjna baza danych. Ponadto nie obsługuje struktury składni SQL. HBase przechowuje dane i działa na nich za pośrednictwem węzła głównego regulującego serwery klastra i regionu.

2. Jakie są powody korzystania z Hbase?

HBase oferuje system pamięci masowej o dużej pojemności oraz losowe operacje odczytu i zapisu. Może obsługiwać duże zbiory danych, wykonując kilka operacji na sekundę. Rozproszona i skalowalna w poziomie konstrukcja sprawia, że ​​HBase jest popularnym wyborem dla aplikacji czasu rzeczywistego.

3. Wyjaśnij kluczowe elementy HBase.

Części robocze HBase obejmują Zookeeper, HBase Master, RegionServer, Region i Tabele katalogów. Przeznaczenie każdego elementu można opisać w następujący sposób:

  • Zookeeper współrzędne między klientem a HBase Master
  • HBase Master monitoruje RegionServer i dba o funkcje administracyjne
  • RegionServer nadzoruje Region
  • Region zawiera MemStore i HFile
  • Tabele katalogowe zawierają ROOT i META

Zasadniczo Hbase składa się z zestawu tabel, z których każda ma wiersze, kolumny i klucz podstawowy. To kolumna HBase oznacza atrybut obiektu.

4. Jakie są rodzaje poleceń operacyjnych w HBase?

W HBase istnieje pięć kluczowych poleceń operacyjnych: Get, Delete, Put, Increment i Scan.

Get służy do czytania tabeli. Wykonywany przez HTable.get, zwraca dane lub atrybuty określonego wiersza z tabeli. Delete usuwa wiersze z tabeli, a Put dodaje lub aktualizuje wiersze. Inkrementacja umożliwia operacje inkrementacyjne w jednym wierszu. Wreszcie, Scan służy do iteracji wielu wierszy dla określonych atrybutów.

5. Co rozumiesz przez WAL i Hlog?

  • WAL to skrót od Write Ahead Log i jest dość podobny do dziennika BIN w MySQL. Rejestruje wszystkie zmiany w danych.
  • HLog to standardowy plik sekwencji w pamięci Hadoop, który obsługuje magazyn HLogkey.

WAL i HLog służą jako koła ratunkowe w przypadku awarii serwera i utraty danych. Jeśli RegionServer ulegnie awarii lub stanie się niedostępny, pliki WAL zapewniają, że zmiany danych mogą zostać odtworzone.

6. Opisz kilka sytuacji, w których będziesz używać Hbase.

Nadaje się używać HBase, gdy:

  • Rozmiar Twoich danych jest ogromny i wymaga operowania na milionach rekordów.
  • Wdrażasz całkowite przeprojektowanie i remont konwencjonalnych systemów zarządzania bazą danych (RDBMS).
  • Masz środki na podjęcie inwestycji infrastrukturalnych w klastry.
  • Istnieją określone polecenia bez SQL, takie jak transakcje, wpisywane kolumny, linie wewnętrzne itp.

7. Co rozumiesz przez rodziny kolumn i klucze wierszy?

Rodziny kolumn stanowią podstawowe jednostki magazynowe w HBase. Są one definiowane podczas tworzenia tabeli i przechowywane razem na dysku, co pozwala później na zastosowanie takich funkcji, jak kompresja.

Klawisz wiersza umożliwia logiczne grupowanie komórek. Jest on przedrostkiem połączonego klucza, umożliwiając aplikacji zdefiniowanie porządku sortowania. W ten sposób wszystkie komórki z tym samym kluczem wiersza można zapisać na tym samym serwerze.

8. Czym HBase różni się od relacyjnej bazy danych?

HBase różni się od relacyjnej bazy danych, ponieważ jest to magazyn danych bez schematu, zorientowany na kolumny, zawierający rzadko wypełnione tabele. Relacyjna baza danych jest oparta na schemacie, zorientowana na wiersze i przechowuje znormalizowane dane w cienkich tabelach. Co więcej, HBase ma zaletę automatycznego partycjonowania, podczas gdy nie ma takiej wbudowanej obsługi w RDBMS.

Przeczytaj: DBMS vs. RDBMS: różnica między DBMS a RDBMS

9. Co stanowi komórkę w HBase?

Komórki to najmniejsze jednostki tabel HBase, przechowujące dane w postaci krotek. Krotka to struktura danych składająca się z wielu części. W HBase składa się z {wiersza, kolumny, wersji}.

10. Zdefiniuj zagęszczenie w HBase.

Kompaktowanie to proces używany do łączenia HFiles w jeden plik przed usunięciem starych plików z bazy danych.

11. Czy możesz uzyskać bezpośredni dostęp do HFile bez korzystania z HBase?

Tak, istnieje unikalna technika bezpośredniego dostępu do HFile bez pomocy HBase. W tym celu można użyć metody HFile.main.

12. Omów znaczniki usuwania i nagrobków w HBase.

W HBase normalny proces usuwania skutkuje znacznikiem nagrobka. Usunięte komórki stają się niewidoczne, ale reprezentowane przez nie dane są faktycznie usuwane podczas kompaktowania. HBase posiada trzy rodzaje oznaczników nagrobnych:

  • Znacznik usunięcia wersji: Oznacza pojedynczą wersję kolumny do usunięcia
  • Znacznik usunięcia kolumny: zaznacza wszystkie wersje kolumny
  • Znacznik usunięcia rodziny: Ustawia wszystkie kolumny rodziny kolumn do usunięcia

W tym miejscu należy zauważyć, że wiersz w HBase zostałby całkowicie usunięty po dużym zagęszczeniu. W związku z tym po usunięciu i dodaniu większej liczby danych elementy Gets mogą być zamaskowane przez znaczniki reliktu, a wstawione wartości mogą być widoczne dopiero po skompaktowaniu.

13. Co się stanie, gdy zmienisz rozmiar bloku rodziny kolumn?

Jeśli Twoja baza danych jest już zajęta i chcesz zmienić rozmiar bloku rodziny kolumn w HBase, stare dane mogą pozostać w starym rozmiarze bloku. Podczas zagęszczania stare i nowe dane zachowywałyby się tak:

  • Istniejące dane przyjęłyby nowy rozmiar bloku i nadal byłyby poprawnie odczytywane.
  • Nowe pliki miałyby nowy rozmiar bloku.

W ten sposób wszystkie dane są przekształcane do pożądanego rozmiaru bloku przed kolejnym dużym zagęszczeniem.

14. Zdefiniuj różne tryby, które może uruchomić HBase.

HBase może działać w trybie autonomicznym lub rozproszonym. Autonomiczny to domyślny tryb HBase, który używa lokalnego systemu plików zamiast HDFS. Jeśli chodzi o tryb rozproszony, można go dalej podzielić na:

  • Tryb pseudo-dystrybucji: wszystkie demony działają na jednym węźle
  • Tryb w pełni rozproszony: demony działają na wszystkich węzłach w klastrze

15. Jak zaimplementowałbyś złączenia w HBase?

HBase używa zadań MapReduce do przetwarzania terabajtów danych w sposób skalowalny. Nie obsługuje bezpośrednio sprzężeń, ale zapytania sprzężenia są implementowane przez pobieranie danych z tabel HBase.

Zamówienie: Pytania do rozmowy kwalifikacyjnej Hadoop

16. Omów przeznaczenie filtrów w HBase.

Filtry zostały wprowadzone w Apache HBase 0.92, aby pomóc użytkownikom uzyskać dostęp do HBase przez Shell lub Thrift. Dbają więc o Twoje potrzeby w zakresie filtrowania po stronie serwera. Istnieją również filtry dekorujące, które rozszerzają zastosowanie filtrów, aby uzyskać dodatkową kontrolę nad zwracanymi danymi. Oto kilka przykładów filtrów w HBase:

  • Filtr Bloom: Zwykle używany do zapytań w czasie rzeczywistym, jest to efektywny pod względem miejsca sposób na sprawdzenie, czy HFile zawiera określony wiersz lub komórkę
  • Filtr strony: akceptując rozmiar strony jako parametr, filtr strony może zoptymalizować skanowanie poszczególnych regionów HR

17. Porównaj HBase z (i) Cassandra (ii) Hive.

(i) HBase i Cassandra: Zarówno Cassandra, jak i HBase to bazy danych NoSQL zaprojektowane do zarządzania dużymi zbiorami danych. Jednak składnia języka Cassandra Query Language (CQL ) jest wzorowana na SQL. W obu magazynach danych klucz wiersza tworzy indeks podstawowy. Cassandra może tworzyć indeksy pomocnicze na wartościach kolumn. W związku z tym może poprawić dostęp do danych w kolumnach o wysokim poziomie powtarzalności. HBase nie ma tego przepisu, ale ma inne mechanizmy, aby wprowadzić funkcjonalność indeksu pomocniczego. Metody te można łatwo znaleźć w przewodnikach online.

(ii) HBase i Hive: Obie są technologiami opartymi na Hadoop. Jak omówiono powyżej, HBase jest bazą danych kluczy/wartości NoSQL. Z drugiej strony Hive to aparat podobny do SQL, który może obsługiwać zaawansowane zadania MapReduce. Możesz wykonywać operacje odczytu i zapisu danych z Hive do HBase i na odwrót. Podczas gdy Hive jest bardziej odpowiedni do zadań analitycznych, HBase jest doskonałym rozwiązaniem do zapytań w czasie rzeczywistym.

Przeczytaj także: Architektura HBase: wszystko, co musisz wiedzieć

Wniosek

Te pytania do rozmowy kwalifikacyjnej HBase i przypadki użycia prowadzą nas do końca tego artykułu. Staraliśmy się omówić różne tematy, aby zaspokoić poziom podstawowy, średniozaawansowany i zaawansowany. Więc nie przestawaj poprawiać, aby wywrzeć niesamowite wrażenie na rekrutującym!

Jeśli jesteś zainteresowany nauką o danych, sprawdź program IIIT-B i upGrad Executive PG w dziedzinie Data Science , który jest stworzony dla pracujących profesjonalistów i oferuje ponad 10 studiów przypadków i projektów, praktyczne warsztaty praktyczne, mentoring z ekspertami z branży, 1 -on-1 z mentorami branżowymi, ponad 400 godzin nauki i pomocy w pracy z najlepszymi firmami.

Opanuj technologię przyszłości

APLIKUJ O ZAAWANSOWANY PROGRAM CERTYFIKACJI W DATA SCIENCE