Hive bụ ngwá ọrụ nchịkọta data buru ibu nke a na-ejikarị eme ihe na azụmahịa, ọ bụkwa ebe mara mma ịmalite ma ọ bụrụ na ị bụ onye ọhụrụ na Big Data. Ihe nkuzi Apache Hive a na-aga site na isi mmalite nke Apache Hive, ihe kpatara ekwo ekwo ji dị mkpa, atụmatụ ya na ihe niile ị kwesịrị ịma.
Ka anyị buru ụzọ ghọta ụkpụrụ Hadoop nke arụnyere Apache Hive na ya.
Njikọ Apache Hadoop
Apache Hadoop bụ n'efu yana Oghere ikpo okwu maka ịchekwa na nhazi nnukwu datasets sitere na gigabytes ruo petabytes. Hadoop na-enye ohere ịchịkọta ọtụtụ kọmputa iji nyochaa nnukwu datasets n'otu aka ahụ, kama ịchọ otu nnukwu kọmputa iji chekwaa ma nyochaa data ahụ.
MapReduce na Hadoop Distributed File System bụ ihe abụọ mejupụtara:
- MapReduce - MapReduce bụ usoro mmemme yiri ya maka ijikwa nnukwu mpịakọta data ahaziri ahazi, nke edobereghị ya na nke anaghị ahazi na ụyọkọ ngwaike ngwa ahịa.
- HDFS - HDFS (Sistemụ Faịlụ Ekesara Hadoop) bụ akụrụngwa Hadoop na-echekwa ma na-ahazi data. Ọ bụ sistemu faịlụ na-anabata mmejọ nke na-arụ na ngwaike ọkọlọtọ
A na-eji arụ ọrụ dị iche iche (ngwaọrụ) dị na gburugburu ebe obibi Hadoop, gụnyere Sqoop, Pig, na Hive, iji nyere modul Hadoop aka.
- ekwo Ekwo - Ekwo Ekwo bụ usoro maka ide ederede ụdị SQL nke na-eme mgbakọ MapReduce.
- Ezi - Ezi bụ asụsụ mmemme nke enwere ike iji mepụta edemede maka usoro MapReduce.
- Skoop - Sqoop bụ ngwá ọrụ maka mbubata na mbupụ data n'etiti HDFS na RDBMS.
Gịnị bụ Apache Hive?
Apache Hive bụ ebe mepere emepe ụlọ nkwakọba ihe data mmemme maka ịgụ, ide na ijikwa nnukwu data echekwabara ozugbo na Apache Hadoop Distributed File System (HDFS) ma ọ bụ sistemụ nchekwa data ndị ọzọ dị ka Apache HBase.
Ndị mmepe SQL nwere ike iji Hive mepụta nkwupụta asụsụ Hive Query Language (HQL) maka ajụjụ data na nyocha nke dabara na nkwupụta SQL oge niile. Emepụtara ya iji mee ka mmemme MapReduce dị mfe site n'iwepụ mkpa ịmụta na ide koodu Java ogologo. Kama, ị nwere ike dee ajụjụ gị na HQL, Hive ga-arụkwa maapụ ahụ wee belatara gị ọrụ.
Ihe interface dị ka SQL nke Apache Hive abụrụla ọkọlọtọ ọla edo maka ime nyocha ad-hoc, ichikota na nyochaa data Hadoop. Mgbe etinyere na igwe ojii netwọk kọmputa, Ngwọta a na-akwụ ụgwọ karịsịa na ọnụ ahịa, nke mere na ọtụtụ ụlọ ọrụ, gụnyere Netflix na Amazon, na-aga n'ihu na-azụlite ma melite Apache Hive.
History
N'oge ha na Facebook, Joydeep Sen Sarma na Ashish Sooo mebere Apache Hive. Ha abụọ ghọtara na ka ha wee nweta ihe kacha mma na Hadoop, ha ga-emepụta ụfọdụ ihe mgbagwoju anya Java Map-Reduce tasks. Ha ghọtara na ha agaghị enwe ike kuziere injinịa ha na ndị nyocha na-agbasa ngwa ngwa na nka ha ga-achọ iji tinye Hadoop n'ofe ụlọ ọrụ ahụ. Ndị injinia na ndị nyocha na-ejikarị SQL eme ihe dị ka interface onye ọrụ.
Ọ bụ ezie na SQL nwere ike gboo ọtụtụ mkpa nyocha, ndị mmepe ahụ bu n'obi webata mmemme Hadoop. Apache Hive bilitere site na ebumnuche abụọ a: asụsụ nkwupụta dabere na SQL nke nyekwaara ndị mmepe aka iweta script na mmemme nke ha mgbe SQL ezughi oke.
Emebere ya ka ijide metadata nke etiti (Hadoop-based) gbasara ihe ndekọ data niile dị na ụlọ ọrụ ahụ iji mee ka owuwu nke ụlọ ọrụ na-akwalite data dị mfe.
Kedu ka Apache Hive si arụ ọrụ?
Na nkenke, Apache Hive na-atụgharị mmemme ntinye edere n'asụsụ HiveQL (SQL-dị ka) ka ọ bụrụ otu Java MapReduce, Tez, ma ọ bụ Spark ọrụ. (Ngwunye ogbugbu ndị a niile dakọtara na Hadoop YARN.) Mgbe nke ahụ gasịrị, Apache Hive na-ahazi data n'ime tebụl maka Hadoop Distributed File System HDFS) ma rụọ ọrụ na ụyọkọ iji nweta azịza.
data
A na-ahazi tebụl Apache Hive n'otu ụzọ ahụ a na-ahazi tebụl dị na nchekwa data mmekọrịta, yana nkeji data sitere na nha site na ibu ruo obere. Ebe nchekwa data bụ tebụl ndị kewara n'ime nkewa, bụ nke a na-ekewakwa na bọket. A na-eji HiveQL (Asụsụ ajụjụ Hive) nweta data, nke enwere ike gbanwee ma ọ bụ tinye ya. A na-edobe data tebụl n'ime nchekwa data ọ bụla, na tebụl ọ bụla nwere akwụkwọ ndekọ HDFS nke ya.
Architecture
Ugbu a, anyị ga-ekwu maka akụkụ kacha mkpa nke Hive Architecture. Akụkụ nke Apache Hive bụ ndị a:
Metastore - Ọ na-edekọ ozi gbasara tebụl ọ bụla, dị ka usoro ya na ọnọdụ ya. A na-etinyekwa metadata nkebi na Hive. Nke a na-enye onye ọkwọ ụgbọ ala aka idobe ọganihu nke usoro data dị iche iche gbasaa n'ofe ụyọkọ ahụ. A na-echekwa data ahụ n'ụdị RDBMS emebere. Metadata hive dị oke mkpa maka onye ọkwọ ụgbọ ala iji dokwaa usoro data ahụ. Ihe nkesa ndabere na-emegharị data mgbe niile ka enwere ike nwetaghachi ya ma ọ bụrụ na enweghị data.
Driver - Onye ọkwọ ụgbọ ala na-enweta nkwupụta HiveQL, nke na-arụ ọrụ dị ka onye njikwa. Site na ịmepụta nnọkọ, onye ọkwọ ụgbọ ala na-amalite mmezu nke nkwupụta ahụ. Ọ na-edobe ogologo ndụ onye isi na ọganihu ya. N'oge mmebe nke nkwupụta HiveQL, onye ọkwọ ụgbọ ala na-echekwa metadata achọrọ. Ọ na-arụkwa ọrụ dị ka ebe nchịkọta data ma ọ bụ ajụjụ ajụjụ na-eso usoro belata.
Gbako - Ọ na-eme mkpokọta ajụjụ HiveQL. Agbanwela ajụjụ a ka ọ bụrụ atụmatụ mmebe. Edepụtara ọrụ ndị ahụ na atụmatụ. Ọ gụnyekwara usoro nke MapReduce ga-emerịrị iji nweta nsonaazụ dịka ajụjụ tụgharịrị. Atụgharịrị ajụjụ a ka ọ bụrụ Osisi Abstract Syntax site n'aka ndị nchịkọta Hive's compiler (AST). Na-atụgharị AST ka ọ bụrụ eserese Acyclic eduzi ya mgbe ịlele maka ndakọrịta yana mmejọ oge mkpokọta (DAG).
Ihe njikarịcha - Ọ na-ebuli DAG elu site na ime mgbanwe dị iche iche na atụmatụ igbu egbu. Ọ na-ejikọta mgbanwe maka arụmọrụ ka mma, dị ka ịtụgharị pipeline nke njikọ n'ime otu njikọ. Iji kwalite ọsọ ọsọ, njikarịcha nwere ike kewaa mmemme, dị ka itinye mgbanwe na data tupu ịrụ ọrụ mbelata.
Onye ogbugbu - Onye na-arụ ọrụ na-arụ ọrụ ahụ mgbe nchịkọta na njikarịcha agwụla. A na-arụ ọrụ ndị ahụ site n'aka onye nrụpụta.
CLI, UI, na Thrift Server - The Command-line interface (CLI) bụ interface onye ọrụ na-enye ohere ka onye ọrụ mpụga nwee mkparịta ụka na Hive. Sava thrift nke Hive, dị ka ụkpụrụ JDBC ma ọ bụ ODBC, na-enye ndị ahịa si mpụga ohere ịkparịta ụka na Hive site na netwọk.
Security
Ejikọtara Apache Hive na nchekwa Hadoop, nke na-eji Kerberos maka nkwenye n'etiti ndị ahịa na nkesa. HDFS na-ekwupụta ikike maka faịlụ emepụtara ọhụrụ na Apache Hive, na-enye gị ohere ịkwado onye ọrụ, otu, na ndị ọzọ.
Key atụmatụ
- Hive na-akwado tebụl dị n'èzí, nke na-ahapụ gị ịhazi data na-echekwaghị ya na HDFS.
- Ọ na-emekwa ka nkewa data dị na ọkwa tebụl na-abawanye ọsọ ọsọ.
- Apache Hive na-egbo mkpa interface dị ala nke Hadoop.
- Hive na-eme ka nchịkọta data, ịjụ ajụjụ na nyocha dị mfe.
- HiveQL anaghị achọ nkà mmemme ọ bụla; nghọta dị mfe nke ajụjụ SQL zuru oke.
- Anyị nwekwara ike iji Hive mee ajụjụ ad-hoc maka nyocha data.
- Ọ nwere ike itolite, amaara nke ọma na enwere ike ime mgbanwe.
- HiveQL anaghị achọ nkà mmemme ọ bụla; nghọta dị mfe nke ajụjụ SQL zuru oke.
uru
Apache Hive na-enye ohere maka akụkọ njedebe nke ụbọchị, nyocha azụmahịa kwa ụbọchị, ọchụchọ ad-hoc, na nyocha data. Nghọta zuru oke nke Apache Hive nyere na-enye uru asọmpi ma mee ka ọ dịrị gị mfe ịzaghachi ihe ahịa chọrọ.
Nke a bụ ụfọdụ uru dị n'inwe ozi dị otú ahụ ngwa ngwa:
- Ala nke iji - Site na asụsụ SQL ya, ajụjụ ajụjụ dị mfe nghọta.
- Ntinye data ngwa ngwa - N'ihi na Apache Hive na-agụ schema na-akwadoghị ụdị tebụl ma ọ bụ nkọwa atụmatụ, data agaghị agụ, atụgharị, na serialized na diski n'ime usoro nchekwa data. N'ụzọ dị iche, na nchekwa data a na-emekarị, a ga-emerịrị data oge ọ bụla agbakwunyere ya.
- Oke scalability, mgbanwe, na ọnụ ahịa bara uru - N'ihi na echekwara data na HDFS, Apache Hive nwere ike ijide 100s nke petabytes nke data, na-eme ka ọ bụrụ nhọrọ dị oke karịa karịa nchekwa data. Apache Hive, dị ka ọrụ Hadoop sitere na ígwé ojii, na-enye ndị ahịa ohere ịgbatị ma gbadaa sava mebere ngwa ngwa iji zute ibu ọrụ na-agbanwe agbanwe.
- Ike ịrụ ọrụ sara mbara - Nnukwu dataset nwere ike ijikwa ajụjụ ruru 100,000 kwa elekere.
-agaghị emeli
- N'ozuzu, ajụjụ Apache Hive nwere nnukwu latency.
- Nkwado ntinye akwụkwọ nwere oke.
- Ajụjụ ozugbo na mgbanwe ọkwa ọkwa adịghị na Apache Hive.
- Enweghị nkwado maka echiche efu.
- Na ekwo Ekwo, anaghị akwado imelite na hichapụ omume.
- Ebubeghi ya maka OLTP (usoro mgbanwe n'ịntanetị).
Na-amalite na Apache Hive
Apache Hive bụ onye mmekọ Hadoop siri ike na-eme ka ọ dị mfe ma na-edozi usoro ọrụ gị. Iji nweta ihe kacha mma na Apache Hive, ntinye enweghị nkebi dị mkpa. Nzọụkwụ mbụ bụ ịga na website.
1. Ekwo Ekwo nwụnye si a Stable Release
Malite site na nbudata ntọhapụ kwụsiri ike nke Hive kacha nso nso a site na otu n'ime enyo nbudata Apache (lee Mwepụta ekwo Ekwo). A ga-ewepụrịrị bọọlụ tarball. Nke a ga-emepụta obere nchekwa a na-akpọ hive-xyz (ebe xyz bụ nọmba ntọhapụ):
Tọọ mgbanwe gburugburu ebe obibi HIVE_HOME ka ọ rụtụ aka na ndekọ nwụnye:
N'ikpeazụ, tinye $HIVE_HOME/bin gị PATH
:
2. Ekwo Ekwo na-agba ọsọ
Hive na-eji Hadoop, yabụ:
- ị ga-enwerịrị Hadoop n'ụzọ gị ma ọ bụ
3. DLL arụ ọrụ
Ịmepụta tebụl ekwo Ekwo
na-emepụta tebụl aha ya bụ pokes nwere ogidi abụọ, nke mbụ bụ integer na nke abụọ bụ eriri.
Na-eme nchọgharị na tebụl
Na-edepụta Tebụl niile
Tebụl na-agbanwe na idobe
Enwere ike ịgbanwe aha tebụl ma tinye kọlụm ma ọ bụ dochie ya:
Ọ dị mma ịmara na Dochie kọlụm nọchiri anya kọlụm niile dị ebe ọ na-agbanwe naanị nhazi tebụl ọ bụghị data. A ga-ejirịrị SerDe nwa afọ na tebụl. Enwere ike iji dochie kọlụm wepụ ogidi na atụmatụ nke tebụl:
Tebụl mwụda
Enwere ọtụtụ ọrụ na atụmatụ ndị ọzọ na Apache Hive nke ị nwere ike ịmụta maka site na ịga na webụsaịtị gọọmentị.
mmechi
Nkọwa nke hive bụ interface mmemme data maka ịjụ ajụjụ na nyocha maka nnukwu dataset nke ewuru n'elu Apache Hadoop. Ndị ọkachamara na-ahọrọ ya karịa mmemme, ngwaọrụ, na sọftụwia ndị ọzọ ebe ọ bụ na emebere ya maka ọtụtụ data hive ma dịkwa mfe iji.
Echere na nkuzi a ga-enyere gị aka ịmalite na Apache Hive wee mee ka usoro ọrụ gị rụọ ọrụ nke ọma. Mee ka anyị mara na nkọwa.
Nkume a-aza