Map Side Sumali Vs. Samahan

Tinalakay sa post na ito ang panig ng Hadoop Map na sumali sa Vs. sumali ka Alamin din kung ano ang binabawasan ng mapa, sumali sa talahanayan, sumali sa gilid, mga kalamangan ng paggamit ng operasyon ng pagsali sa panig ng mapa sa Hive

Sa blog na ito, tatalakayin natin ang tungkol sa Sumali sa gilid ng mapa at mga pakinabang nito sa normal na pagsali sa operasyon Pugad .Ito ay isang mahalagang konsepto na kakailanganin mong malaman upang ipatupad ang iyong .Ngunit bago malaman ang tungkol dito, dapat muna nating maunawaan ang konsepto ng 'Sumali' at kung ano ang nangyayari sa panloob kapag gumanap kami ng pagsali Pugad .

Samahan ay isang sugnay na pinagsasama ang mga tala ng dalawang talahanayan (o Mga Data-Sets).
Ipagpalagay na mayroon kaming dalawang talahanayan A at B. Kapag nagsagawa kami ng pagsali sa pagpapatakbo sa kanila, ibabalik nito ang mga tala na kung saan ay ang kombinasyon ng lahat ng mga haligi o f A at B.





Ngayon ipaalam sa amin na maunawaan ang pag-andar ng normal na sumali sa isang halimbawa ..

Kailanman, naglalapat kami ng sumali sa pagpapatakbo, ang trabaho ay itatalaga sa isang gawain sa Map Reduce na binubuo ng dalawang yugto- a ‘Yugto ng mapa 'At isang' Bawasan ang entablado ’. Ang trabaho ng isang mapper sa panahon ng Map Stage ay 'Basahin' ang data mula sa pagsali sa mga talahanayan at sa 'Bumalik' ang 'Sumali key' at 'Sumali halaga' ipares sa isang intermediate file. Dagdag dito, sa yugto ng shuffle, ang intermediate file na ito ay pagkatapos ay pinagsunod-sunod at pinagsama. Ang trabaho ng reducer sa panahon ng pagbawas ng yugto ay kunin ang pinagsunod-sunod na resulta bilang pag-input at kumpletuhin ang gawain ng pagsali.



  • Ang Pagsali sa panig ng mapa ay katulad ng pagsali ngunit lahat ng mga gawain ay isasagawa ng mapper lamang.

  • Ang Sumali sa panig ng Mapa ay magiging angkop para sa maliliit na talahanayan upang ma-optimize ang gawain.



Paano makakasama ang panig ng mapa sa pag-optimize ng gawain?

Ipagpalagay na mayroon kaming dalawang mga talahanayan kung saan ang isa sa mga ito ay isang maliit na mesa. Kapag nagsumite kami ng isang gawain na mabawasan ang mapa, isang Map Bawasan ang lokal na gawain ay malilikha bago ang orihinal na sumali sa Map Reduce na gawain na magbabasa ng data ng maliit na talahanayan mula sa HDFS at iimbak ito sa isang memorya ng hash na nasa memorya. Matapos basahin, isina-serialize nito ang in-memory hash table sa isang hash table file.

Sa susunod na yugto, kapag tumatakbo ang orihinal na gawain ng Map Reduce, inililipat nito ang data sa file ng hash table sa ipinamigay na cache ng Hadoop, na pinupunan ang mga file na ito sa lokal na disk ng bawat mapper. Kaya't ang lahat ng mga mapper ay maaaring mai-load ang patuloy na file ng hash table na ito pabalik sa memorya at gawin ang pagsali sa trabaho tulad ng dati. Ang daloy ng pagpapatupad ng pagsali sa na-optimize na mapa ay ipinapakita sa larawan sa ibaba. Pagkatapos ng pag-optimize, ang maliit na talahanayan ay kailangang basahin nang isang beses lamang. Gayundin kung maraming mga mapper ang tumatakbo sa parehong makina, kailangan lamang ng ipamahagi na cache na itulak ang isang kopya ng hash table file sa makina na ito.

Ang mga kalamangan ng paggamit ng panig sa mapa ay sumali:

  • Ang pagsali sa panig ng mapa ay tumutulong sa pagliit ng gastos na natamo para sa pag-uuri at pagsasama sa pag-shuffle at bawasan mga yugto
  • Ang pagsali sa panig ng mapa ay tumutulong din sa pagpapabuti ng pagganap ng gawain sa pamamagitan ng pagbawas ng oras upang matapos ang gawain.

Ang mga hindi pakinabang ng panig sa Map ay sumali:

  • Ang pagsali sa panig sa mapa ay sapat lamang kapag ang isa sa mga talahanayan na kung saan gumanap ka ng operasyon sa pagsali sa mapa-panig ay sapat na maliit upang magkasya sa memorya. Samakatuwid ito ay hindi angkop upang maisagawa ang map-side na sumali sa mga talahanayan na kung saan ay malaking data sa pareho sa kanila.

Simpleng Halimbawa para sa Map Reduce Joins:

kung paano lumikha ng power bi dashboard

Lumikha tayo ng dalawang talahanayan:

  • Emp : naglalaman ng mga detalye ng isang empleyado tulad ng pangalan ng empleyado, ID ng empleyado at Kagawaran na kinabibilangan niya.

  • Dept: naglalaman ng mga detalye tulad ng Pangalan ng Kagawaran, Department ID at iba pa.

Lumikha ng dalawang mga file ng pag-input tulad ng ipinapakita sa sumusunod na imahe upang mai-load ang data sa nilikha na mga talahanayan.

empleyado.txt

dept.txt

Ngayon, i-load natin ang data sa mga talahanayan.

Gawin natin ang Mapa-gilid Samahan sa dalawang talahanayan upang makuha ang listahan ng mga kagawaran kung saan nagtatrabaho ang bawat empleyado.

Narito, ang pangalawang mesa dept ay isang maliit na mesa. Tandaan, palaging ang bilang ng kagawaran ay magiging mas mababa sa bilang ng mga empleyado sa isang samahan.

Gawin natin ang parehong gawain sa tulong ng normal na Sumali sa panig na sumali.

Habang isinasagawa ang parehong pagsali, mahahanap mo ang dalawang pagkakaiba:

  • Ang pagsali sa pagbawas sa mapa ay nakumpleto ang trabaho sa mas kaunting oras kung ihahambing sa oras na ginugol sa normal na pagsali.

  • Ang pagsali sa pagbawas sa mapa ay nakumpleto ang trabaho nito nang walang tulong ng anumang reducer samantalang ang normal na sumali ay naisakatuparan ang trabahong ito sa tulong ng isang reducer.

Samakatuwid, Map-side Sumali ay ang iyong pinakamahusay na mapagpipilian kapag ang isa sa mga talahanayan ay sapat na maliit upang magkasya sa memorya upang makumpleto ang trabaho sa isang maikling span ng oras.

Sa Real-time na kapaligiran , magkakaroon ka ng mga hanay ng data na may malaking halaga ng data. Kaya't ang pagganap ng pagtatasa at pagkuha ng data ay magiging matagal kung ang isa sa mga set ng data ay may isang maliit na sukat. Sa mga ganitong kaso Sumali sa gilid ng mapa ay makakatulong upang makumpleto ang trabaho sa mas kaunting oras.

Hindi pa nagkaroon ng mas mahusay na oras upang makabisado ang Hadoop! Magsimula ka na ngayon sa espesyal na na-curate na Big Data at Hadoop na kurso ni Edureka.

kung paano gumamit ng isang iterator

Mga Sanggunian:
https://www.facebook.com/notes/facebook-engineering/join-optimization-in-apache-hive/470667928919

Mga Kaugnay na Post:

7 Paraan ng Big Pagsasanay sa Data ay Maaaring Baguhin ang Iyong Organisasyon