Apache Hive je balíček datových skladů postavený na Hadoopu a slouží k analýze dat. Úl je zaměřen na uživatele, kterým vyhovuje SQL. Je to podobné jako SQL a nazývá se HiveQL, které se používá pro správu a dotazování strukturovaných dat. Apache Hive se používá k abstraktní složitosti Hadoopu. Tento jazyk také umožňuje tradičním programátorům mapování / redukce připojit své vlastní mapovače a redukce. Populární vlastností Hive je, že není nutné se učit Javu.
Úl, open source peta-bajtové měřítko datového skladovacího rámce založené na Hadoop, byl vyvinut týmem datové infrastruktury na Facebooku. Hive je také jednou z technologií, které se používají k řešení požadavků na Facebooku. Úl je velmi oblíbený u všech uživatelů interně na Facebooku a používá se ke spouštění tisíců úloh v klastru se stovkami uživatelů pro širokou škálu aplikací. Cluster Hive-Hadoop na Facebooku ukládá více než 2 PB surových dat a pravidelně denně načítá 15 TB dat.
Podívejme se na některé z jeho funkcí, díky nimž je populární a uživatelsky přívětivý:
- Umožňuje programátorům připojit vlastní mapovače a reduktory.
- Má infrastrukturu Data Warehouse.
- Poskytuje nástroje umožňující snadné datové ETL.
- Definuje dotazovací jazyk podobný SQL s názvem QL.
Případ použití Apache Hive - Facebook:
jak převrátit číslo v pythonu
Před implementací Hive čelil Facebook mnoha výzvám, protože velikost generovaných dat se zvětšovala nebo spíše explodovala, takže bylo opravdu obtížné s nimi zacházet. Tradiční RDBMS tento tlak nezvládl, a proto Facebook hledal lepší možnosti. Aby Facebook vyřešil tento blížící se problém, zpočátku se snažil použít Hadoop MapReduce, ale s obtížemi v programování a povinnými znalostmi v SQL z něj udělal nepraktické řešení. Úl jim umožnil překonat výzvy, kterým čelili.
S Hive nyní mohou provádět následující:
- Stoly mohou být porcovány a vykládány
- Flexibilita a vývoj schématu
- K dispozici jsou ovladače JDBC / ODBC
- Tabulky úlů lze definovat přímo v HDFS
- Extensible - typy, formáty, funkce a skripty
Případ použití úlu ve zdravotnictví:
Kde používat úl?
Apache Hive lze použít na následujících místech:
- Dolování dat
- Zpracování protokolu
- Indexování dokumentů
- Business Intelligence orientovaná na zákazníka
- Prediktivní modelování
- Testování hypotéz
Architektura úlu:
Úl se skládá z následujících hlavních komponent:
- Metastore - Chcete-li uložit metadata.
- JDBC / ODBC - Query Compiler and Execution Engine pro převod dotazů SQL na posloupnost MapReduce.
- SerDe a ObjectInspectors - pro datové formáty a typy.
- UDF / UDAF - pro funkce definované uživatelem.
- Klienti - Podobně jako příkazový řádek MySQL a webové uživatelské rozhraní.
Součásti úlu:
Metastore:
Metastore ukládá informace o tabulkách, oddílech, sloupcích v tabulkách. Existují 3 způsoby ukládání v Metastore: Embedded Metastore, Local Metastore a Remote Metastore. Remote Metastore se většinou používá v produkčním režimu.
tabulka, jak vytvořit sadu
Omezení úlu:
Úl má následující omezení a za takových okolností jej nelze použít:
- Není určeno pro online zpracování transakcí.
- Poskytuje přijatelnou latenci pro interaktivní procházení dat.
- Nenabízí dotazy v reálném čase a aktualizace na úrovni řádků.
- Latence pro dotazy Hive je obecně velmi vysoká.
Máte na nás dotaz? Uveďte je v sekci komentáře a my se vám ozveme.
Související příspěvky: