Dom trendovi Kratki uvod u košnicu apaša i svinja

Kratki uvod u košnicu apaša i svinja

Anonim

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 cjelovite konstrukcije SQL-a.


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 ima malo 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 Hadoop grupi. 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 osnovni Hadoop klaster jasno je je li poslan posao Java MapReduce ili je poslani posao MapReduce putem košnice i svinje. Zbog serijske orijentacije poslova MapReduce, poslovi poslani putem košnice i Svinje također su u prirodi orijentirani na seriju.


Za potrebe reakcije u stvarnom vremenu, košnice i svinje ne ispunjavaju zahtjeve 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 se HiveQL pretvara u Java MapReduce poslove, Impala ne skriva SQL upit u Java MapReduce.


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

Kratki uvod u košnicu apaša i svinja