Isang Malalim na Pagsisid Sa Baboy



Ang blog post na ito ay isang malalim na pagsisid sa Baboy at mga pag-andar nito. Makakakita ka ng isang demo kung paano ka maaaring gumana sa Hadoop gamit ang Pig na walang dependency sa Java.

Ang isa sa mga pinakamalaking kadahilanan kung bakit ang katanyagan ng Hadoop ay nag-skyrocket sa kamakailang mga oras ay ang katunayan na ang mga tampok tulad ng Pig at Hive ay tumatakbo sa tuktok nito na pinapayagan ang mga hindi programmer na may pag-andar na dating eksklusibo sa mga Java programmer. Ang mga tampok na ito ay isang bunga ng lumalaking pangangailangan para sa mga propesyonal sa Hadoop. Ang iba pang mga tampok na ginagamit ng mga propesyonal sa Hadoop mula sa mga background na hindi Java ay ang Flume, Sqoop, HBase at Oozie.





Upang maunawaan kung bakit hindi mo kailangan ang Java upang malaman ang Hadoop, mag-check out ang blog na ito .

kung paano makakuha ng haba ng array javascript

1 Kasaysayan ng Baboy



Unawain natin kung paano gumagana ang mga tampok na ito.

Alam nating lahat na ang kaalaman sa pag-program ay kinakailangan para sa pagsulat ng mga code ng MapReduce. Ngunit paano kung mayroon akong isang tool na maaaring gawin ang pag-cod kung ibibigay ko lamang ang mga detalye? Iyon ay kung saan ipinapakita ng Pig ang lakas ng kalamnan nito. Gumagamit ang baboy ng isang platform na tinatawag na Pig Latin na inilalabas ang programa mula sa Java MapReduce idyoma sa isang notasyon na ginagawang mataas na antas ang MapReduce na programa, katulad ng SQL para sa mga system ng RDBMS. Ang mga code na nakasulat sa Pig Latin MapReduce ay awtomatikong nai-convert sa katumbas na mga pag-andar ng MapReduce. Hindi ba kahanga-hanga? Ang isa pang katotohanan na Nakakaisip-isip ay ang 10 mga Linya ng Baboy lamang ang kinakailangan upang mapalitan ang 200 Mga Linya ng Java.



10 linya ng Baboy = 200 linya ng Java

Hindi lamang ito nangangahulugan na ang mga propesyunal na hindi taga-Java ay gumagamit ng Hadoop ngunit nagpapatotoo din sa salungguhit na katotohanan na ang Pig ay ginagamit ng isang pantay na bilang ng mga teknikal na developer.

Bilang karagdagan, kung nais mong isulat ang iyong sariling MapReduce code, magagawa mo iyon sa alinman sa mga wika tulad ng Perl, Python, Ruby o C. Ang ilang pangunahing operasyon na maaari nating maisagawa sa anumang Dataset gamit ang Pig ay Group, Sumali, Salain at Pagbukud-bukurin . Ang mga pagpapatakbo na ito ay maaaring isagawa sa nakabalangkas, hindi nakabalangkas at din na semi-nakabalangkas na data. Nagbibigay ang mga ito ng isang ad-hoc na paraan para sa paglikha at pagpapatupad ng mga trabaho sa MapReduce sa napakalaking mga hanay ng data.

Susunod, unawain natin ang Hive. Ito ay isang bukas na mapagkukunan, ang framework-byte scale data warehousing framework batay sa Hadoop para sa pagbubuod ng data, query at pagsusuri. Nagbibigay ang Hive ng isang tulad ng SQL na interface para sa Hadoop. Maaari mong gamitin ang Hive upang mabasa at magsulat ng mga file sa Hadoop at patakbuhin ang iyong mga ulat mula sa isang tool na BI. Ang ilang mga karaniwang pag-andar ng Hadoop ay:

Hayaan akong ipakita sa iyo ang isang demo gamit ang Pig sa Clickstream set ng data
Gagamitin namin ang data ng Clickstream na ito at isasagawa ang Mga Pagbabago, Sumali at Pagpangkat.

Ang ClickStream ay isang serye ng mga pag-click sa mouse na ginawa ng isang gumagamit habang ina-access ang Internet lalo na bilang sinusubaybayan upang masuri ang mga interes ng isang tao para sa mga layunin sa marketing. Pangunahin itong ginagamit ng mga online retail website tulad ng Flipkart at Amazon na sumusubaybay sa iyong mga aktibidad upang makabuo ng mga rekomendasyon. Ang hanay ng data ng Clickstream na nagamit namin ay may mga sumusunod na larangan:

1. Uri ng wika na suportado ng web application

2. Uri ng browser

3. Uri ng koneksyon

4. Country ID

5. Time Stamp

iso 9000 kumpara sa anim na sigma

6. URL

7. Katayuan ng gumagamit

8. Uri ng Gumagamit

Ganito ang magiging hitsura nito sa mga naaangkop na larangan.

Nasa ibaba ang listahan ng mga uri ng browser na ginamit ng iba't ibang mga tao kapag nag-surf sa isang partikular na website. Kabilang sa listahan ang mga browser tulad ng Internet Explorer, Google Chrome, Lynx at iba pa.

Ang uri ng koneksyon sa Internet ay maaaring Lan / Modem / Wifi. Tingnan ang imahe sa ibaba para sa kumpletong listahan:

Sa susunod na imahe, mahahanap mo ang listahan ng mga bansa mula sa kung saan naaakit ang website ng madla kasama ang kanilang mga ID.

Kapag natipon na namin ang lahat ng mga hanay ng data, kailangan naming ilunsad ang Pig's Grunt shell, na inilunsad upang mapatakbo ang mga utos ng Baboy.

Ang unang bagay na kailangan nating gawin sa paglulunsad ng Grunt shell Ay upang mai-load ang data ng Clickstream sa ugnayan ng Pig. Ang isang ugnayan ay walang anuman kundi isang mesa. Nasa ibaba ang utos na ginagamit namin upang mai-load ang isang file na naninirahan sa HDFS papunta sa kaugnayan ni Pig.

Maaari naming mapatunayan ang iskema ng ugnayan sa pamamagitan ng utos na ilarawan ang click_stream.

Kailangan namin ngayon upang idagdag ang mga sanggunian na file na maglalaman ng mga detalye tungkol sa listahan ng mga bansa kasama ang kanilang mga ID at ang iba't ibang mga uri ng browser kasama ang kanilang mga ID.

Mayroon kaming dalawang mga sanggunian na file, ngunit kailangan silang ikonekta upang bumuo ng isang ugnayan.
Nagpapatakbo kami ng isang utos na koneksyon_ref upang ipahiwatig ang uri ng koneksyon.

Ngayon na mayroon kaming isang gumaganang koneksyon at isang matatag na ugnayan, ipapakita namin sa iyo kung paano namin mababago ang data na iyon.
Para sa bawat record sa Clickstream, makakagawa kami ng isang bagong tala sa isang iba't ibang format, iyon ay ang binago na data. Isasama sa bagong format ang mga patlang tulad ng TimeStamp, uri ng Browser, Mga Country ID at ilan pa.

Maaari kaming magsagawa ng pagpapatakbo ng Filter upang mabawasan ang Malaking Data. Ang iba't ibang mga uri ng mga gumagamit ay Administrator, Mga Bisita o Bot. Sa aming demo, sinala ko ang listahan para sa mga Bisita.

Kung natatandaan mo, ang Country ID ay naroroon sa Clickstream at nag-load kami ng isang country_ref file na naglalaman ng mga pangalan ng mga bansa kasama ang mga ID nito. Maaari nating gampanan ang isang pagsali sa pagpapatakbo sa pagitan ng dalawang mga file at pagsamahin ang data upang makakuha ng mga pananaw.

Kung sumali kami sa data, maaari naming malaman ang iba't ibang mga bansa mula sa kung nasaan ang mga gumagamit sa pamamagitan ng Pagpapangkat. Kapag mayroon kaming data na ito, maaari kaming magsagawa ng isang pagpapatakbo sa Bilang upang makilala ang bilang ng mga gumagamit mula sa isang partikular na bansa.

Ito ay walang rocket science upang makakuha ng mga pananaw mula sa Big Data. Ito ay ilan lamang sa maraming mga tampok na ipinatupad ko at sa mga tool tulad ng Hive, Hbase, Oozie, Sqoop at Flume mayroong isang kayamanan ng data na hindi pa maaaring tuklasin. Kaya't kayong pinipigilan ang inyong sarili sa pag-aaral ng Hadoop, oras na upang magbago.

May tanong ba sa amin? Mangyaring banggitin ang mga ito sa seksyon ng mga komento at babalikan ka namin.

Mga Kaugnay na Post:

4 na Paraan upang Maging Maggamit ng R at Hadoop

ano ang hover sa css

Lahat Tungkol sa Cloudera Certified Developer para sa Apache Hadoop