Apache Pig operatori: 1. daļa - Relāciju operatori



Šajā ziņojumā ir aprakstīti operatori Apache Pig. Apskatiet šo ierakstu Apache Pig operatoriem: 1. daļa - Relāciju operatori.

Šis ieraksts ir par operatoriem Apache Pig.Apache Pig ļauj arī rakstīt sarežģītas datu transformācijas bez Java zināšanas, padarot to patiešām svarīgu .Pirms došanās pie Operatoriem ātri apskatīsim, kas ir Pig and Pig Latin un dažādi režīmi, kādos tos var darbināt.

Kas ir Apache Pig?

Apache Pig ir augsta līmeņa procesuālā valoda lielu datu kopu vaicājumiem, izmantojot Hadoop un Map Reduce Platform. Tā ir Java pakete, kurā skriptus var izpildīt no jebkuras valodas ieviešanas, kas darbojas JVM. To ļoti izmanto iteratīvos procesos.





labākais java ide logiem

Apache Pig vienkāršo Hadoop lietošanu, ļaujot SQL veida vaicājumus izplatītai datu kopai un ļauj izveidot sarežģītus uzdevumus, lai ātri un efektīvi apstrādātu lielu datu apjomu. Cūka labākā īpašība ir tā, ka tā atbalsta daudzas relācijas funkcijas, piemēram, Pievienošanās, Grupēšana un Kopums.

Es zinu, ka Cūka izklausās daudz vairāk kā ETL rīks, un tai ir daudz iezīmju, kas kopīgas ar ETL rīkiem. Bet Pig priekšrocība salīdzinājumā ar ETL rīkiem ir tā, ka tā var darboties vienlaicīgi ar daudziem serveriem.



Kas ir Apache Pig Latin?

Apache Pig izveido vienkāršāku procesuālās valodas abstrakciju, izmantojot Map Reduce, lai Hadoop lietojumprogrammām izveidotu strukturētākas vaicājumu valodas (SQL) saskarni, ko sauc par Apache Pig Latin, tāpēc atsevišķas Map Reduce lietojumprogrammas rakstīšanas vietā jūs varat rakstīt vienu skriptu Apache Cūku latīņu valoda, kas tiek automātiski paralēlota un sadalīta pa kopu. Vienkāršiem vārdiem sakot, Pig Latin ir vienkāršu paziņojumu secība, kurā tiek ievadīts un izveidots produkts. Ievades un izvades datus veido maisi, kartes, kopas un skalārs.

Apache Pig izpildes režīmi:

Apache Pig ir divi izpildes režīmi:

  • Vietējais režīms

Vietējā režīmā avota dati tiktu atlasīti no jūsu datorsistēmas vietējā direktorija. MapReduce režīmu var norādīt, izmantojot komandu ‘pig –x local’.



Apache Pig operatori - 1

  • MapReduce režīms:

Lai palaistu Pig režīmā MapReduce, nepieciešama piekļuve Hadoop klastera un HDFS instalācijai. MapReduce režīmu var norādīt, izmantojot komandu ‘pig’.

Apache Pig operatori:

Apache Pig Operators ir augsta līmeņa procesuālā valoda lielu datu kopu vaicāšanai, izmantojot Hadoop un Map Reduce Platform. Pig Latin teikums ir operators, kurš uztver relāciju kā ievadi un rada citu relāciju kā izvadi. Šie operatori ir galvenie rīki, ko Pig Latin nodrošina datu darbībai. Tie ļauj to pārveidot, kārtojot, grupējot, pievienojoties, projicējot un filtrējot.

Izveidosim divus failus, lai palaistu komandas:

Mums ir divi faili ar nosaukumu “pirmais” un “otrais”. Pirmajā failā ir trīs lauki: user, url & id.

Otrajā failā ir divi lauki: URL un vērtējums. Šie divi faili ir CSV faili.

Apache Pig operatorus var klasificēt kā: Relāciju un diagnostikas.

Relāciju operatori:

Relāciju operatori ir galvenie rīki, ko Pig Latin nodrošina, lai darbotos ar datiem. Tas ļauj pārveidot datus, kārtojot, grupējot, apvienojot, projicējot un filtrējot. Šajā sadaļā apskatīti galvenie relāciju operatori.

KRAVA:

LOAD operators tiek izmantots, lai datus no failu sistēmas vai HDFS krātuves ielādētu Pig attiecībās.

Šajā piemērā Operators Load ielādē datus no faila “pirmais” uz veidlapas relāciju “loading1”. Lauku nosaukumi ir user, url, id.

KATRAM:

Šis operators ģenerē datu pārveidojumus, pamatojoties uz datu kolonnām. To izmanto, lai pievienotu vai noņemtu laukus no relācijas. Izmantojiet operāciju FOREACH-GENERATE, lai strādātu ar datu kolonnām.

FOREACH rezultāts:

FILTRS:

Šis operators atlasa kopas no relācijas, pamatojoties uz nosacījumu.

Šajā piemērā mēs filtrējam ierakstu no “loading1”, ja nosacījums “id” ir lielāks par 8.

FILTRS Rezultāts:

PIEVIENOTIES:

Operators JOIN tiek izmantots, lai veiktu divu vai vairāku attiecību iekšēju, ekvijoinu savienojumu, pamatojoties uz kopējām lauka vērtībām. JOIN operators vienmēr veic iekšēju savienojumu. Iekšējie savienojumi ignorē nulles atslēgas, tāpēc ir lietderīgi tos filtrēt pirms pievienošanās.

Šajā piemērā savienojiet abas attiecības, pamatojoties uz kolonnu ‘url’ no ‘loading1’ un ‘loading2’.

PIEVIENOTIES rezultātu:

SAKĀRTOT PĒC:

Order By izmanto, lai kārtotu relāciju, pamatojoties uz vienu vai vairākiem laukiem. Jūs varat veikt kārtošanu augošā vai dilstošā secībā, izmantojot ASC un DESC atslēgvārdus.

Zemāk sniegtajā piemērā mēs kārtojam datus ielādē2 augošā secībā vērtējumu laukā.

PASŪTĪT PĒC rezultāta :

ATŠĶIRT:

Atšķirīgais relācijā noņem dublikātu kopas. Ļaujiet ņemt ievades failu, kā norādīts tālāk amr, crap, 8 un amr, myblog, 10 divreiz failā. Kad šī faila datiem izmantojam atšķirīgu, ierakstu dublikāti tiek noņemti.

ATŠĶIRT rezultātu:

VEIKALS:

Veikals tiek izmantots, lai saglabātu rezultātus failu sistēmā.

Šeit mēs ietaupām ielāde3 datus failā ar nosaukumu uzglabāšana uz HDFS.

VEIKALA rezultāts:

GRUPA:

Operators GROUP grupē kopas ar vienu un to pašu grupas atslēgu (atslēgas lauks). Atslēgas lauks būs kopa, ja grupas atslēgai ir vairāk nekā viens lauks, pretējā gadījumā tas būs tāda paša veida kā grupas atslēgai. GROUP darbības rezultāts ir relācija, kas ietver vienu kopu katrā grupā.

Šajā piemērā grupa th

relācija ‘loading1’ ar kolonnas URL.

GRUPAS rezultāts:

GRUPA:

COGROUP ir tas pats, kas GROUP operators. Lasāmības labad programmētāji parasti izmanto GROUP, ja ir iesaistītas tikai vienas attiecības, un COGROUP, kad atkal ir iesaistītas vairākas attiecības.

Šajā piemērā abās attiecībās grupējiet laukus ‘loading1’ un ‘loading2’ pēc URL.

COGROUP rezultāts:

KRUSTS:

Operators CROSS tiek izmantots, lai aprēķinātu divu vai vairāku attiecību savstarpējo produktu (Dekarta preci).

Krustprodukta piemērošana iekraušanai1 un iekraušanai2.

KRUSTS rezultāts:

LIMIT:

Operators LIMIT tiek izmantots, lai ierobežotu izvades kopu skaitu. Ja norādītais izvades kopu skaits ir vienāds vai pārsniedz attiecībās esošo kopu skaitu, izejā attiecībā tiks iekļauti visi kopas.

LIMIT Rezultāts:

SPLIT:

Operators SPLIT tiek izmantots, lai sadalītu relācijas saturu divās vai vairākās attiecībās, kuru pamatā ir kāda izteiksme. Atkarībā no nosacījumiem, kas norādīti izteiksmē.

Sadaliet loading2 divās attiecībās x un y. x relācija, kas izveidota, ielādējot2, satur laukus, kuru vērtējums ir lielāks par 8, un y relācijā ir lauki, kuru vērtējums ir mazāks vai vienāds ar 8.

mācīties pl sql tiešsaistē bez maksas

Vai mums ir jautājums? Lūdzu, pieminējiet tos komentāru sadaļā, un mēs ar jums sazināsimies.

Saistītās ziņas:

Apache Pig operatori - diagnostikas operatori

Darbības, lai izveidotu UDF Apache Pig