Hive to system hurtowni danych, który służy do analizy danych strukturalnych. Jest zbudowany na bazie Hadoopa. Został opracowany przez Facebooka.
Hive zapewnia funkcjonalność odczytu, zapisu i zarządzania dużymi zbiorami danych znajdującymi się w magazynie rozproszonym. Uruchamia zapytania podobne do SQL, zwane HQL (język zapytań Hive), które są wewnętrznie konwertowane na zadania MapReduce.
Korzystając z Hive, możemy pominąć wymóg tradycyjnego podejścia do pisania złożonych programów MapReduce. Hive obsługuje język definicji danych (DDL), język manipulacji danymi (DML) i funkcje zdefiniowane przez użytkownika (UDF).
Funkcje ula
Oto następujące cechy Hive:
- Hive jest szybki i skalowalny.
- Dostarcza zapytania podobne do SQL (tj. HQL), które są niejawnie przekształcane w zadania MapReduce lub Spark.
- Jest w stanie analizować duże zbiory danych przechowywane w HDFS.
- Umożliwia różne typy przechowywania, takie jak zwykły tekst, RCFile i HBase.
- Wykorzystuje indeksowanie do przyspieszania zapytań.
- Może działać na skompresowanych danych przechowywanych w ekosystemie Hadoop.
- Obsługuje funkcje zdefiniowane przez użytkownika (UDF), w których użytkownik może zapewnić swoją funkcjonalność.
Ograniczenia Hive
- Hive nie jest w stanie obsługiwać danych w czasie rzeczywistym.
- Nie jest przeznaczony do przetwarzania transakcji online.
- Zapytania Hive zawierają duże opóźnienia.
Różnice między ulem a świnią
Ul | Świnia |
---|---|
Hive jest powszechnie używany przez analityków danych. | Świnia jest powszechnie używana przez programistów. |
Podąża za zapytaniami podobnymi do SQL. | Jest zgodny z językiem przepływu danych. |
Może obsługiwać dane strukturalne. | Może obsługiwać dane półstrukturalne. |
Działa po stronie serwera klastra HDFS. | Działa po stronie klienta klastra HDFS. |
Hive jest wolniejszy niż Pig. | Świnia jest stosunkowo szybsza niż Hive. |