sql >> Databáze >  >> NoSQL >> HBase

HBase a Hive – lepší společně

Tento blogový příspěvek byl publikován na Hortonworks.com před sloučením s Cloudera. Některé odkazy, zdroje nebo reference již nemusí být přesné.

Počítače jsou stále chytřejší a my ne.

– Tim Berners Lee, webový vývojář

Google, Amazon a Netflix nás podmínily. Jako spotřebitelé očekáváme inteligentní aplikace, které předvídají, navrhují a předvídají každý náš krok. Chceme, aby probrali miliony možností a navrhli jen několik, které vyhovují našim potřebám. Chceme aplikace, které nás vezmou na personalizovanou cestu světem nekonečných možností.

Tyto personalizované cesty vyžadují, aby systémy ukládaly obrovské objemy dat a dávaly jim smysl v přijatelném čase. To byla silná stránka Hadoopu od prvního dne.

Provedení cesty také vyžaduje, aby se aplikace přímo integrovaly s hloubkovou analýzou. To zůstává výzvou, protože většina operačních systémů běží mimo Hadoop a umísťuje provozní data a analýzy do samostatných sil.

Technologie jako Apache Hadoop YARN a Apache Slider začínají tato sila narušovat. YARN poskytuje Hadoop kontroly izolace zdrojů, které umožňují hlubokou analýzu aplikačních dat na místě a zároveň poskytují odpovědi v přijatelném časovém rámci. A Apache Slider usnadňuje nasazení dlouhodobých operačních systémů do Hadoopu.

YARN je architektonické centrum Hadoopu, které umožňuje více motorům pro zpracování dat, jako je interaktivní SQL, streamování v reálném čase, věda o datech a dávkové zpracování, zpracovávat data uložená na jediné platformě, čímž odemyká zcela nový přístup k analýze. To poskytuje bezproblémovou integraci provozních a analytických systémů a základ, na kterém může podnik vybudovat moderní datovou architekturu (MDA).

Nejmodernější Hadoop

V Hadoopu je dnes možné propojit provozní a analytické dohromady a ve skutečnosti to vidíme u mnoha našich zákazníků.

Kusy, které potřebujete, jsou již v Hadoop:

  • Apache HBase je databáze NoSQL pro Hadoop a je skvělá pro rychlé aktualizace a přístup k datům s nízkou latencí.
  • Apache Phoenix (průkopníkem Salesforce) je vzhled SQL pro data v HBase. Phoenix již zkoumá integraci s transakčními manažery, jako je Tephra (od Cask).
  • Apache Hive je de facto SQL engine pro Hadoop, který poskytuje nejhlubší analýzu SQL a podporuje dávkové i interaktivní vzory dotazů. Podívejte se na náš nedávný příspěvek Stinger.Next, kde najdete pokroky, jako je Hive LLAP.

Vidíme, že naši zákazníci dnes tyto části používají k vytváření aplikací s hlubokou analýzou, například velmi běžný vzor, ​​který vidíme, zahrnuje:

  • Použití HBase jako online úložiště provozních dat pro rychlé aktualizace horkých dat, jako je aktuální oddíl pro hodinu, den atd.
  • Provádění provozních dotazů přímo proti HBase pomocí Apache Phoenix.
  • Stárnutí dat v tabulkách HBase to Hive pomocí standardních vzorů ETL.
  • Provádění hloubkové analýzy SQL pomocí Hive

Funguje to, ale pro vývojáře to vytváří řadu složitostí. Například:

  • Které rozhraní SQL používám a kdy? Používám Hive, který nabízí hluboké SQL, ale nízké TPS? Nebo použiji Phoenix s vysokým TPS a základním SQL? Nebo použiji oba?
  • Pokud používám obojí, jak mohu sdílet data mezi Hive a HBase?
  • Jak vyladím svůj cluster, abych mohl úspěšně společně lokalizovat HBase a Hive při plnění mých SLA?

Tyto otázky naznačují, že ke zjednodušení vytváření aplikací pomocí hluboké analýzy na Hadoopu je zapotřebí hlubší integrace.

HBase a Hive:Lepší spolu

Jaké jsou možnosti hlubší integrace? V současné době zákazníci dávají dohromady řešení využívající HBase, Phoenix, Hive atd. k vybudování systému s uzavřenou smyčkou na míru pro provozní data a analýzu SQL. Cítíme příležitost poskytnout okamžitou integraci se snadným používáním a dalšími funkcemi, jako jsou transakce, převzetí služeb při selhání mezi datovými centry atd.

Hive, HBase a Phoenix mají velmi aktivní komunitu vývojářů a používají se ve výrobě v bezpočtu organizací. Jedná se o solidní, osvědčené provozní schopnosti, které mohou být základem a budoucností zpracování transakcí na Hadoop.

Hortonworks se tedy snaží pomocí stejného přístupu jako úspěšná iniciativa Stinger Initiative dále investovat do těchto klíčových projektů a budovat hybnou sílu, než je opustit a začít znovu. Plánujeme investovat do vylepšení, která podporují integrovanou provozní a analytickou zkušenost prostřednictvím těsně integrovaného Hive a HBase. To řeší skutečné a zajímavé případy použití způsobem, který zachovává investice a přináší skutečnou hodnotu pro zákazníky.

Vidíme čtyři hlavní oblasti vývoje, které pomáhají realizovat vizi inteligentních aplikací:

1. Sjednocená vrstva SQL s podregistrem

Vývojáři vytvářející aplikace SQL by si neměli muset vybírat mezi různými řešeními SQL, z nichž každé má své silné a slabé stránky. Představujeme si sjednocenou vrstvu SQL, kterou umožňuje Hive podpora pro SQL:2011, která transparentně používá vhodný engine na základě vzoru přístupu dotazu.

Tato kombinace poskytuje jeden SQL dialekt a jeden konektor. Datoví architekti a správci databází mohou určit, kde mají být data uložena, na základě vzorců použití, aniž by uživatelské aplikace zatěžovali nutností připojení k více systémům.

2. Zlepšení HBase jako provozního obchodu

HBase rychle dospívá jako provozní sklad a bude schopen přijímat stále náročnější pracovní zátěže. V minulém roce HBase přidala rozhraní SQL, sekundární indexování a vysokou dostupnost. Tyto funkce budou nadále vyspělé a navíc HBase přidá další podnikové funkce, jako jsou transakce s více tabulkami, mezi datovými centry a další.

Projekty jako Omid (Yahoo), Tephra (Cask), Trafodion (HP) atd. nabízejí různé způsoby přivádění transakcí do HBase. Facebook vyvinul HydraBase, která umožňuje transakce napříč datovými centry. Facebook otestoval HydraBase ve velkém a přechází na to, aby byl dostupný v open source HBase (viz HBASE-12259). Jak tyto systémy dospějí, HBase bude schopen nejnáročnějšího pracovního zatížení.

3. Sdílený katalog metadat a správce transakcí

Data vytvořená v HBase by měla být automaticky viditelná v Hive a naopak. Díky této schopnosti je sdílení dat mezi online a analytickými zcela triviální. Sdílený správce transakcí umožňuje nové funkci ACID společnosti Hive a transakcím HBase na více tabulkách bezproblémově spolupracovat.

4. Podpora smíšené pracovní zátěže s podporou YARN

Zákazníci dnes obvykle nasazují HBase a Hive v samostatných clusterech. Vývoj analytického systému s uzavřenou smyčkou vyžaduje efektivní kombinaci provozních a analytických pracovních zátěží způsobem pro více nájemců. S YARN můžeme efektivně vytvořit jediný systém využitím izolace zdrojů a primitiv správy pracovní zátěže v YARN pro podporu různých forem přístupu k datům. Slider je využívá, když nasazuje HBase do YARN, zatímco Hive LLAP &Tez jsou nativní aplikace YARN, čímž se zjednodušuje proces spuštění analytického systému s uzavřenou smyčkou podle předvídatelného SLA.

Závěr

Podniky využívají již existující technologie dostupné v HDP, jako je Apache HBase, Apache Hive, Apache Phoenix atd., aby se vypořádaly s rychlými aktualizacemi aktuálních dat a analytiků v širokém spektru datových sad, všechny uložené v HDFS pro vytvoření uzavřeného analytického systému. . Doufáme, že využijeme stejné vzory integrace k zajištění bezproblémového zážitku pro zákazníky tím, že vylepšíme Apache HBase a Apache Hive – lépe společně, než aby uživatelé shromažďovali nové technologie, kterým budou rozumět a používat je.


  1. Ukládání souborů v MongoDB pomocí GridFS

  2. vytvoření registračního a přihlašovacího formuláře v node.js a mongodb

  3. Redis jako databáze

  4. Mongoose Unique index nefunguje!