Rozdiel medzi Apache Pig a Apache Hive

Príbeh Apache Pig sa začína v roku 2006, keď výskumník ako Yahoo bojoval s kódmi Java MapReduce. Bolo ťažké znovu použiť a udržiavať kód na kompiláciu. Zároveň zistili, že používatelia MapReduce neboli spokojní s deklaratívnymi jazykmi, ako je SQL. Začali pracovať na novom jazyku, ktorý mal zapadnúť do sladkého miesta medzi deklaratívnym štýlom SQL, nízkym a procedurálnym štýlom MapReduce. To malo za následok narodenie prasaťa a prvé prepustenie prasaťa prišlo v septembri 2008 a do konca roka 2009 asi polovica pracovných miest v spoločnosti Yahoo boli pracovné miesta prasaťa.

Príbeh Apache Hive sa začína v roku 2007, keď programátor, ktorý nie je programom Java, musí bojovať pri používaní Hadoop MapReduce. Odborníci v oblasti IT z databázového prostredia čelili výzvam pri práci na Hadoop Cluster. Vedci pracujúci na Facebooku spočiatku prišli s jazykom Hive. Tento jazyk bol veľmi podobný jazyku SQL. Jazyk sa preto nazýval Hive Query Language (HQL) a neskôr sa stal projektom open source Apache Community. Po tom, čo sa stal projektom Apache Community, došlo k významnému rozvoju v Apache Hive. Facebook bol prvou spoločnosťou, ktorá prišla s Apache Hive.

Dovoľte mi podrobnejšie vysvetliť informácie o Apache Pig vs Apache Hive.

Predstavujeme Apache Pig vs Apache Hive

Apache Pig je platforma na analýzu veľkých súborov údajov, ktorá pozostáva z jazyka na vysokej úrovni na vyjadrenie programov na analýzu údajov, spolu s infraštruktúrou na hodnotenie týchto programov. Apache je open source projekt Apache Community. Apache Pig poskytuje jednoduchý jazyk s názvom Pig Latin, pre otázky a manipuláciu s dátami.

Ošípané využívajú spoločnosti ako Yahoo, Google a Microsoft na zhromažďovanie obrovského množstva súborov údajov vo forme tokov kliknutí, protokolov vyhľadávania a indexového prehľadávania webu.

  • Apache Pig poskytuje vnorené typy údajov, ako sú Mapy, Tuples a Tašky
  • Apache Pig Nasleduje prístup založený na viacerých dopytoch, aby sa zabránilo viacnásobnému skenovaniu množín údajov.
  • Programátori oboznámení s skriptovacím jazykom uprednostňujú Apache Pig
  • Prasa je ľahká, ak viete o SQL
  • Na prácu na Apache Pig nie je potrebné vytvárať schémy
  • Ošípané tiež poskytujú podporu pre hlavné dátové operácie, ako je napríklad objednávanie, filtre a pripojenia
  • Framework Apache Pig prevádza latinu prasaťa do sekvencií programov MapReduce

Softvér pre dátový sklad Apache Hive uľahčuje čítanie, zápis a správu veľkých množín údajov uložených v distribuovanom úložisku pomocou SQL. Apache Hive je open-source projekt Apache postavený na vrchole Hadoopu na dotazovanie, sumarizáciu a analýzu veľkých súborov údajov pomocou rozhrania podobného SQL. Podregister Apache poskytuje jazyk podobný jazyku SQL nazývaný HiveQL, ktorý transparentne prevádza dotazy na MapReduce na vykonávanie na veľkých množinách údajov uložených v systéme Hadoop Distributed File System (HDFS).

  • Apache Hive je infraštruktúra dátového skladu.
  • Apache Hive je ETL nástroj (extrakcia-transformácia-načítanie)
  • Úľ Apache je podobný SQL
  • Apache Hive umožňuje prispôsobené mapovače a redukcie
  • Apache Hive zvyšuje flexibilitu pri návrhu schémy pomocou serializácie a deserializácie dát
  • Úľ Apache je analytický nástroj

Porovnanie Head to Head medzi Apache Pig a Apache Hive (Infographics):

Kľúčové rozdiely medzi Apache Pig a Apache Hive:

  • Apache Pig rýchlejšie porovnáva Apache Hive
  • Apache Pig a Apache Hive sú spustené v hornej časti Hadoop MapReduce
  • Apache Pig je najlepší pre štruktúrované a pološtruktúrované, zatiaľ čo Apache Hive je najlepší pre štruktúrované údaje
  • Apache Pig je procedurálny jazyk, zatiaľ čo Apache Hive je deklaratívny jazyk
  • Apache Pig podporuje funkciu spoločnej skupiny pre vonkajšie spojenia, zatiaľ čo Apache Hive nepodporuje
  • Apache Pig nemá preddefinovanú databázu na ukladanie tabuľky / schémy, zatiaľ čo Apache Hive má preddefinované tabuľky / schémy a ukladá svoje informácie do databázy.
  • Apache Pig je tiež vhodný pre zložitú a vnorenú štruktúru dát, zatiaľ čo Apache Hive je menej vhodný pre zložité dáta
  • Vedci a programátori používajú prasa Apache, zatiaľ čo Data Analysts používajú Apache Hive
Kedy používať Apache Pig:
  • Keď ste programátor a poznáte skriptovací jazyk
  • Ak pri načítavaní nechcete vytvárať schému
  • Požiadavky ETL
  • Keď pracujete na klientskej strane klastra Hadoop
  • Keď pracujete na formáte súboru Avro Hadoop
Kedy používať Apache Hive:
  • Požiadavky na skladovanie údajov
  • Analytické otázky historických údajov
  • Analýza dát, ktorí sú oboznámení s SQL
  • Pri práci na štruktúrovaných údajoch
  • Podľa analytikov údajov
  • Vizualizovať a vytvárať správy

Porovnávacia tabuľka Apache Pig vs Apache Hive

Diskutujem o významných artefaktoch a rozlišujem medzi Apache Pig a Apache Hive.

Apache PigÚľ Apache
Spracovanie dátApache Pig je jazyk na vysokej úrovni toku údajovApache Hive sa používa na dávkové spracovanie, tj online analytické spracovanie (OLAP)
Rýchlosť spracovaniaApache Pig má vyššiu latenciu kvôli vykonávaniu úlohy MapReduce na pozadíApache Hive má tiež vyššiu latenciu kvôli vykonávaniu úlohy MapReduce na pozadí
Kompatibilita s HadoopApache Pig beží na MapReduceApache Hive tiež beží na MapReduce
definíciaApache Pig je otvorený zdrojový systém na vysokej úrovni pre tok údajov, ktorý vám poskytuje jednoduchú jazykovú platformu, ktorá sa nazýva Pig Latin, a ktorá sa dá použiť na manipuláciu s údajmi a otázkami.Apache Hive je open source a podobný SQL používanému pre analytické dotazy
Použitý jazykApache Pig používa procedurálny jazyk toku dát nazývaný Pig LatinApache Hive používa deklaratívny jazyk s názvom HiveQL
schémaApache Pig nemá koncepciu schémy. Údaje môžete ukladať do aliasu.Podregister Apache podporuje schému na vkladanie údajov do tabuliek
Webové rozhranieApache Pig nepodporuje webové rozhranieApache Hive podporuje webové rozhranie
operácieApache Pig sa používa na štruktúrované a pološtrukturované údajeApache Hive sa používa pre štruktúrované údaje.
Špecifikácia užívateľaApache Pig používajú výskumníci a programátoriApache Hive používa Data Analyst
Pracuje zapnutéApache Pig pracuje na strane klienta klastraÚľ Apache Funguje na serverovej strane klastra
Metódy rozdeleniaV Apache Pig neexistuje pojem PartitionApache Hive podporuje funkcie Sharding
Formát súboruPrach Apache podporuje formát súboru AvroÚľ Apache priamo nepodporuje formát Avro, ale podporuje ho pomocou “org.apache.hadoop.hive.serde2.avro”
JDBC / ODBCApache Pig nepodporujePodpora úľa Apache je obmedzená
ladenieJe ľahké ladiť Pig skriptyMôžeme ladiť, ale je to trochu zložité

Záver - Medzi Apache Pig a Apache Hive:

Apache Pig a Apache Hive, obidva sa bežne používajú v klastri Hadoop. Apache Pig a Apache Hive sú výkonným nástrojom na analýzu údajov a ETL. Apache Pig a Apache Hive sa väčšinou používajú v produkčnom prostredí. Používateľ musí vybrať nástroj na základe typov údajov a očakávaného výstupu. Oba nástroje poskytujú jedinečný spôsob analýzy veľkých údajov v klastri Hadoop. Na základe vyššie uvedenej diskusie si používateľ môže vybrať medzi Apache Pig a Apache Hive podľa svojich požiadaviek.

Odporúčaný článok

Toto bol sprievodca Apache Pig verzus Apache Hive, ich význam, porovnanie hlava-hlava, kľúčové rozdiely, porovnávacia tabuľka a záver. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Otázky týkajúce sa rozhovoru pre vývojárov Hadoop
  2. Hadoop vs Hive
  3. Ako rozlúštiť rozhovor pre vývojárov Hadoop?
  4. Apache Hive vs Apache HBase
  5. Apache Hadoop vs Apache Spark

Kategórie: