Samouczek Hive dla początkujących: nauka na przykładach w 3 dni
Podsumowanie samouczka Hive
Apache Hive pomaga w bardzo szybkim wykonywaniu zapytań i zarządzaniu dużymi zbiorami danych. To jest Narzędzie ETL dla ekosystemu Hadoop. W tym samouczku Apache Hive dla początkujących nauczysz się podstaw Hive i ważnych tematów, takich jak zapytania HQL, ekstrakcje danych, partycje, kontenery itd. Ta seria samouczków Hive pomoże Ci poznać koncepcje i podstawy Hive.
Co powinienem wiedzieć?
Aby zapoznać się z tym samouczkiem dotyczącym zapytań Hive, potrzebujesz podstawowej wiedzy na temat SQL, Hadoop oraz znajomość innych baz danych będzie dodatkową pomocą.
Program kursu Hive
Wprowadzenie
👍 Lessna 1 | Co to jest ul? - Architectura i tryby |
👍 Lessna 2 | Pobierz i zainstaluj HIVE — Jak pobrać i zainstalować HIVE na Ubuntu |
👍 Lessna 3 | Konfiguracja metastore HIVE — Dlaczego używać MySQL? |
👍 Lessna 4 | Typy danych ula — Utwórz i upuść bazę danych w Hive |
Zaawansowane rzeczy
👍 Lessna 1 | Hive Utwórz tabelę — Rodzaje i ich zastosowanie |
👍 Lessna 2 | Przegrody i wiadra ula — Ucz się na przykładzie |
👍 Lessna 3 | Indeksy i widok Hive — Ucz się na przykładzie |
👍 Lessna 4 | Zapytania dotyczące ula — Ucz się na przykładzie |
👍 Lessna 5 | Samouczek dotyczący łączenia i podkwerend Hive — Ucz się na przykładzie |
👍 Lessna 6 | Samouczek dotyczący języka zapytań Hive — Wbudowany Operatorsy |
👍 Lessna 7 | Funkcja ula — Funkcje wbudowane i zdefiniowane przez użytkownika |
👍 Lessna 8 | Ula ETL — Ładowanie przykładów danych JSON, XML i tekstowych |
Wprowadzenie do Hive
Hive ewoluowało jako rozwiązanie do hurtowni danych zbudowane na platformie Hadoop Map-Reduce.
Rozmiar zbiorów danych gromadzonych i analizowanych w branży business intelligence rośnie i w pewnym sensie sprawia, że tradycyjne rozwiązania w zakresie magazynowania danych stają się droższe. Hadoop z frameworkiem MapReduce, jest używany jako alternatywne rozwiązanie do analizy zbiorów danych o dużych rozmiarach. Chociaż Hadoop okazał się przydatny do pracy na ogromnych zbiorach danych, jego framework MapReduce jest na bardzo niskim poziomie i wymaga od programistów pisania niestandardowych programów, które są trudne w utrzymaniu i ponownym użyciu. Hive przybywa tu na ratunek programistom.
Silnik ula kompiluje te zapytania do zadań Map-Reduce, które mają być wykonywane na Hadoop. Ponadto niestandardowe skrypty Map-Reduce mogą być również podłączane do zapytań. Hive działa na danych przechowywanych w tabelach, które składają się z prymitywnych typów danych i typów danych kolekcji, takich jak tablice i mapy.
Hive jest wyposażony w interfejs powłoki wiersza poleceń, którego można używać do tworzenia tabel i wykonywania zapytań.
Język zapytań Hive jest podobny do języka SQL, w którym obsługuje podzapytania. Dzięki językowi zapytań Hive możliwe jest wykonywanie złączeń MapReduce w tabelach Hive. Posiada wsparcie dla prostych Funkcje podobne do SQL– CONCAT, SUBSTR, ROUND itp. oraz funkcje agregujące– SUM, COUNT, MAX itp. Obsługuje także klauzule GROUP BY i SORT BY. Możliwe jest również pisanie funkcji zdefiniowanych przez użytkownika w języku zapytań Hive.
Co to jest ul?
Ula Apache to platforma hurtowni danych służąca do wykonywania zapytań i analizy danych przechowywanych w systemie HDFS. Jest rozwijany na platformie Hadoop. Hive to oprogramowanie typu open source do analizowania dużych zbiorów danych w Hadoop. Zapewnia język deklaratywny podobny do SQL, zwany HiveQL, do wyrażania zapytań. Korzystając z Hive-QL, użytkownicy są związani z SQL potrafi z łatwością przeprowadzić analizę danych.
Zmniejszenie mapy Hive kontra mapa
Zanim wybierzemy jedną z tych dwóch opcji, musimy przyjrzeć się niektórym ich cechom.
Przy wyborze pomiędzy Hive i Map Reduce brane są pod uwagę następujące czynniki:
- Rodzaj danych
- Ilość danych
- Złożoność kodu
Zmniejszenie mapy Hive kontra mapa?
Cecha | Ul | Zmniejszenie mapy |
---|---|---|
Wybierz język | Obsługuje język zapytań podobny do SQL do interakcji i modelowania danych |
|
Poziom abstrakcji | Wyższy poziom abstrakcji w porównaniu z HDFS | Niższy poziom abstrakcji |
Wydajność w kodzie | Stosunkowo mniejsze niż redukcja mapy | Zapewnia wysoką wydajność |
Zakres kodu | Less liczba linii kodu wymagana do wykonania | Większa liczba linii kodów do zdefiniowania |
Rodzaj wymaganych prac rozwojowych | Less Wymagane prace rozwojowe | Potrzebne są dalsze prace rozwojowe |