Bahay Mga Uso Isang maikling intro sa apache hive at baboy

Isang maikling intro sa apache hive at baboy

Anonim

Ang Apache Hive ay isang balangkas na nakaupo sa tuktok ng Hadoop para sa paggawa ng mga query sa ad-hoc sa data sa Hadoop. Sinusuportahan ng Hive ang HiveQL, na katulad ng SQL, ngunit hindi suportado ang kumpletong mga konstruksyon ng SQL.


Sinasaklaw ng Hive ang query ng HiveQL sa isang programa sa Java MapReduce at pagkatapos ay isumite ito sa kumpol ng Hadoop. Ang parehong kinalabasan ay maaaring makamit gamit ang HiveQL at Java MapReduce, ngunit ang paggamit ng Java MapReduce ay kakailanganin ng maraming code na isulat / debugged kumpara sa HiveQL. Kaya, pinatataas ng HiveQL ang pagiging produktibo ng developer.


Upang buod, ang Hive, sa pamamagitan ng wika ng HiveQL, ay nagbibigay ng isang mas mataas na antas ng abstraction sa programming ng Java MapReduce. Tulad ng anumang iba pang mataas na antas ng abstraction, mayroong isang maliit na pagganap ng overhead gamit ang HiveQL kung ihahambing sa Java MapReduce, ngunit ang komunidad ng Hive ay nagtatrabaho upang paliitin ang puwang na ito para sa karamihan ng mga karaniwang ginagamit na mga senaryo.


Kasabay ng parehong linya, ang Baboy ay nagbibigay ng isang mas mataas na antas ng abstraction sa MapReduce. Sinusuportahan ng baboy ang mga konstruksyon ng PigLatin, na na-convert sa programang Java MapReduce at pagkatapos ay isinumite sa kumpol ng Hadoop.



Habang ang HiveQL ay isang pagpapahayag na wika tulad ng SQL, ang PigLatin ay isang wika na daloy ng data. Ang output ng isang PigLatin na konstruksyon ay maaaring maipadala bilang input sa isa pang itinayo na PigLatin at iba pa.


Ilang oras pabalik, inilathala ni Cloudera ang mga istatistika tungkol sa karakter ng kargamento sa isang pangkaraniwang kumpol ng Hadoop at madali itong masusunod na ang mga trabaho sa Pig at Hive ay bumubuo ng isang mahusay na bahagi ng mga trabaho sa isang kumpol ng Hadoop. Dahil sa mas mataas na pagiging produktibo ng developer, maraming mga kumpanya ang pumipili ng mas mataas na antas ng mga abstract tulad ng Pig at Hive. Kaya, maaari tayong magtaya mayroong maraming mga pagbubukas ng trabaho sa paligid ng Hive at Pig kung ihahambing sa pag-unlad ng MapReduce.



Bagaman ang librong Programming Pig ay nai-publish noong Oktubre 2011, ang aklat ng Programming Hive ay nai-publish nang mas kamakailan, noong Oktubre 2012. Para sa mga may karanasan sa pagtatrabaho sa RDBMS, ang pagsisimula sa Hive ay magiging isang mas mahusay na opsyon kaysa sa pagsisimula sa Baboy. Tandaan din na ang wika ng PigLatin ay hindi napakahirap na magsimula.


Para sa pinagbabatayan na kumpol ng Hadoop, ito ay malinaw kung ang isang Java MapReduce na trabaho ay isinumite o isang trabaho ng MapReduce ay isinumite sa pamamagitan ng Hive and Pig. Dahil sa batch oriented na kalikasan ng mga trabaho sa MapReduce, ang mga trabaho na isinumite sa pamamagitan ng Hive at Pig ay nakatuon din sa batch na nakatuon sa kalikasan.


Para sa mga kinakailangan sa pagtugon sa real-time, si Hive at Pig ay hindi nakakatugon sa mga kinakailangan dahil sa naunang nabanggit na batch oriented na kalikasan ng mga trabaho sa MapReduce. Binuo ni Cloudera ang Impala, na batay sa Dremel (isang publikasyon mula sa Google) para sa mga interactive na query sa ad-hoc sa tuktok ng Hadoop. Sinusuportahan ni Impala ang mga query na tulad ng SQL at katugma sa HiveQL. Kaya, ang anumang mga application na itinayo sa tuktok ng Hive ay dapat gumana nang may kaunting mga pagbabago kasama si Impala. Ang pangunahing pagkakaiba sa pagitan ng Hive at Impala ay habang habang ang HiveQL ay na-convert sa mga trabaho sa Java MapReduce, si Impala ay hindi pinipigilan ang query ng SQL sa isang trabaho sa Java MapReduce.


Dapat ka bang sumama sa Baboy o Hive para sa isang partikular na kinakailangan? Iyon ang isang paksa para sa isa pang blog.


Na-publish nang may pahintulot mula sa Praveen Sripati. Ang orihinal na artikulo ay matatagpuan dito: http://www.thecloudavenue.com/2012/12/introduction-to-apache-hive-and-pig.html

Isang maikling intro sa apache hive at baboy