Kratki uvod u košnicu Apache i svinje

Autor: Eugene Taylor
Datum Stvaranja: 8 Kolovoz 2021
Datum Ažuriranja: 17 Lipanj 2024
Anonim
Kratki uvod u košnicu Apache i svinje - Tehnologija
Kratki uvod u košnicu Apache i svinje - Tehnologija


Izvor: Tsekhmister / Dreamstime.com

Oduzeti:

I košnica i Svinja pružaju apstrakciju na višoj razini u odnosu na MapReduce, ali postoje nekoliko ključnih razlika između njih koje programeri trebaju znati.

Apache Hive je okvir koji sjedi na vrhu Hadoopa radi obavljanja ad-hoc upita na podacima u Hadoopu. Hive podržava HiveQL, koji je sličan SQL-u, ali ne podržava kompletne SQL konstrukcije.

Hive pokriva HiveQL upit u program Java MapReduce, a zatim ga predaje u skupinu Hadoop. Isti ishod može se postići upotrebom HiveQL-a i Java MapReduce-a, ali ako koristite Java MapReduce, potrebno je puno koda napisati / otkloniti pogreške u usporedbi s HiveQL-om. Dakle, HiveQL povećava produktivnost programera.

Ukratko, Hive, putem jezika HiveQL, pruža apstrakciju više razine nad programiranjem Java MapReduce. Kao i kod bilo koje druge apstrakcije na visokoj razini, i kod HiveQL-a malo je više performansi u usporedbi s Java MapReduceom, ali zajednica Hive radi na sužavanju tog jaza za većinu najčešće korištenih scenarija.

Uz istu liniju, Svinja pruža apstrakciju na višoj razini nad MapReduce. Pig podržava PigLatin konstrukcije, koje se pretvaraju u program Java MapReduce i zatim predaju u skupinu Hadoop.





Dok je HiveQL deklarativni jezik poput SQL-a, PigLatin je jezik protoka podataka. Izlaz jedne konstrukcije PigLatin može se poslati kao ulaz drugoj konstrukciji PigLatin i tako dalje.

Prije izvjesnog vremena, Cloudera je objavio statistiku o karakteru opterećenja u tipičnom Hadoop grupi i lako se može primijetiti da poslovi svinja i košnica čine dobar dio poslova u klasteru Hadoop. Zbog veće produktivnosti programera, mnoge tvrtke odlučuju se za sažetke više razine poput Svinje i košnice. Dakle, možemo se okladiti da će biti mnogo otvorenih radnih mjesta oko košnice i svinje u usporedbi s razvojem MapReducea.



Iako je knjiga Programiranje svinja objavljena u listopadu 2011., knjiga Programiranje košnica objavljena je nedavno, u listopadu 2012. Za one koji imaju iskustva s radom sa RDBMS-om, početak rada s košnicom bio bi bolja opcija od započinjanja s Svinjom. Također imajte na umu da s PigLatin jezikom nije baš teško započeti.

Za temeljni Hadoop klaster, njegovo prozirno je li predana Java MapReduce posao ili je poslani MapReduce posao putem Hive i Pig. Zbog serijske orijentacije poslova MapReduce, poslovi poslani putem košnice i Svinje također su u prirodi orijentirani na seriju.

Za potrebe odgovora u stvarnom vremenu, Hive i Svinja ne udovoljavaju zahtjevima zbog ranije spomenute serije orijentirane prirode MapReduce. Cloudera je razvila Impala koja se temelji na Dremelu (publikacija s Googlea) za interaktivne ad-hoc upite na vrhu Hadoopa. Impala podržava upite slične SQL-u i kompatibilan je s HiveQL-om. Dakle, sve aplikacije koje su izgrađene na vrhu Hivea trebale bi raditi s minimalnim promjenama s Impalom. Glavna razlika između Hive i Impala je u tome što, dok je HiveQL pretvoren u Java MapReduce poslove, Impala ne skriva SQL upit u Java MapReduce poslove.

Treba li ići sa Svinjom ili košnicom zbog određenog zahtjeva? To je tema za drugi blog.

Objavljeno uz dopuštenje Praveen Sripati. Izvorni članak možete pronaći ovdje: http://www.thecloudavenue.com/2012/12/introduction-to-apache-hive-and-pig.html