Hva er MapReduce? - Lær eksemplet og fordelene med MapReduce

Innholdsfortegnelse:

Anonim

Hva er MapReduce?

MapReduce programmeringsramme brukes til å utføre distribuert og parallell behandling med store datasett i et distribuert miljø. Kart og reduser er de to forskjellige oppgavene til et kartreduserende program. Først i kartfasen blir dataene lest, og nøkkelverdipar blir generert ut av dem. Deretter mates disse nøkkelverdiparene til å redusere oppgaven som samler dataene til nøkkelverdiparene i det mindre settet med verdier som produserer den endelige utdata. Dermed implementeres alltid en reduksjonsoppgave etter at en kartoppgave er fullført. Det er veldig enkelt å skalere databehandling over flere databehandlingsnoder.

Det er nemlig tre trinn i programmet:

  1. Kartfase
  2. Shuffle Stage
  3. Reduser scenen

Eksempel :

Wordcount problem-

Anta at nedenfor er inndataene:

  • Mike Jon Jake
  • Paul Paul Jake
  • Mike Paul Jon

1. Ovennevnte data er delt inn i tre inndeler som nedenfor:

  • Mike Jon Jake
  • Paul Paul Jake
  • Mike Paul Jon

2. Deretter mates disse dataene inn i neste fase som kalles kartleggingsfase.

Så for den første linjen (Mike Jon Jake) har vi 3 nøkkelverdipar - Mike, 1; Jon, 1; Jake, 1.

Nedenfor er resultatet i kartleggingsfasen:

  • Mike, en
    Jon, en
    Jake, en
  • Paul, en
    Paul, en
    Jake, en
  • Mike, en
    Paul, en
    Jon, en

3. Ovennevnte data mates deretter inn i neste fase som kalles sorterings- og stokkfase.

I denne fasen blir dataene gruppert i unike nøkler og sortert. Nedenfor er resultatet i sorterings- og blandingsfasen:

  • Jake, (1, 1)
  • Jon, (1, 1)
  • Mike, (1, 1)
  • Paul, (1, 1, 1)

4. Ovennevnte data mates deretter inn i neste fase kalt reduksjonsfase.

Her blir alle nøkkelverdiene samlet og antall 1er telles. Nedenfor er resultatet i redusere fase:

  • Jake, 2
  • Jon, 2
  • Mike, 2
  • Paul, 3

Fordelene med MapReduce:

Her lærer vi noen viktige fordeler med MapReduce Programming Framework,

1. Skalerbarhet

Hadoop som en plattform som er svært skalerbar og skyldes i stor grad evnen til at den lagrer og distribuerer store datasett på mange servere. Serverne som brukes her er ganske rimelige og kan fungere parallelt. Systemets prosessorkraft kan forbedres med tillegg av flere servere. De tradisjonelle relasjonsdatabasestyringssystemene eller RDBMS klarte ikke å skalere for å behandle enorme datasett.

2. Fleksibilitet

Hadoop MapReduce programmeringsmodell gir fleksibilitet til å behandle struktur eller ustrukturerte data fra forskjellige forretningsorganisasjoner som kan benytte seg av dataene og kan operere på forskjellige typer data. Dermed kan de generere en forretningsverdi ut av disse dataene som er meningsfulle og nyttige for virksomhetsorganisasjonene for analyse. Uansett hvilken datakilde det er om det er et sosialt medie, clickstream, e-post osv. Hadoop tilbyr støtte for mange språk som brukes til databehandling. Sammen med alt dette tillater programmering av Hadoop MapReduce mange applikasjoner som markedsanalyse, anbefalingssystem, datavarehus og svindel.

3. Sikkerhet og autentisering

Hvis en utenforstående person får tilgang til alle dataene i organisasjonen og kan manipulere flere petabytes av dataene, kan det gjøre mye skade når det gjelder forretningsdrift i drift til forretningsorganisasjonen. Denne risikoen adresseres av MapReduce-programmeringsmodellen ved å jobbe med hdfs og HBase som tillater høy sikkerhet slik at bare den godkjente brukeren kan operere på de lagrede dataene i systemet.

4. Kostnadseffektiv løsning

Et slikt system er meget skalerbart og er en veldig kostnadseffektiv løsning for en forretningsmodell som må lagre data som vokser eksponentielt i takt med dagens behov. Når det gjelder gamle tradisjonelle relasjonsdatabaseadministrasjonssystemer, var det ikke så lett å behandle dataene som med Hadoop-systemet når det gjelder skalerbarhet. I slike tilfeller ble virksomheten tvunget til å nedbemanne dataene og videre implementere klassifisering basert på forutsetninger om hvordan visse data kan være verdifulle for organisasjonen og dermed fjerne rådataene. Her kommer Hadoop Scalout-arkitektur med MapReduce-programmering til unnsetning.

5. Rask

Hadoop distribuerte filsystem HDFS er en nøkkelfunksjon som brukes i Hadoop som i utgangspunktet implementerer et kartleggingssystem for å lokalisere data i en klynge. MapReduce-programmering er verktøyet som brukes til databehandling, og det er også plassert på den samme serveren, noe som gir raskere behandling av data. Hadoop MapReduce behandler store datamengder som er ustrukturerte eller semistrukturerte på kortere tid.

6. En enkel modell for programmering

MapReduce-programmering er basert på en veldig enkel programmeringsmodell som i utgangspunktet lar programmererne utvikle et MapReduce-program som kan håndtere mange flere oppgaver med enklere og mer effektivitet. MapReduce programmeringsmodell er skrevet med Java-språk er veldig populær og veldig lett å lære. Det er enkelt for folk å lære Java-programmering og designe databehandlingsmodell som tilfredsstiller deres forretningsbehov.

7. Parallell behandling

Programmeringsmodellen deler oppgavene på en måte som gjør det mulig å utføre den uavhengige oppgaven parallelt. Derfor gjør denne parallelle behandlingen det enklere for prosessene å påta seg hver av oppgavene som hjelper til med å kjøre programmet på mye kortere tid.

8. Tilgjengelighet og spenstig natur

Hadoop MapReduce programmeringsmodell behandler dataene ved å sende dataene til en individuell node samt videresende det samme settet med data til de andre nodene som er bosatt i nettverket. Som et resultat, i tilfelle feil i en spesiell node, er fortsatt den samme datakopien tilgjengelig på de andre nodene som kan brukes når det er nødvendig for å sikre tilgjengeligheten av data.
På denne måten er Hadoop feiltolerant. Dette er en unik funksjonalitet som tilbys i Hadoop MapReduce at den er i stand til raskt å gjenkjenne feilen og bruke en hurtigreparasjon for en automatisk gjenopprettingsløsning.

Det er mange selskaper over hele kloden som bruker kart-redusere som facebook, yahoo, etc.

Konklusjon - Hva er MapReduce

Kartreduksjon har stor kapasitet når det gjelder stor databehandling sammenlignet med tradisjonelle RDBMS-systemer. Mange organisasjoner har allerede innsett potensialet sitt og går over til denne nye teknologien. Det er tydelig at kart-redusere har veldig lang tid å gå i en stor databehandlingsplattform.

Anbefalte artikler

Dette har vært en guide til Hva er MapReduce. Her diskuterte vi grunnleggende konsept, eksempler og fordeler med MapReduce. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Hva er JavaScript?
  2. MapReduce Interview Questions
  3. Hva er Python
  4. Slik fungerer MapReduce
  5. Hva er Big data og Hadoop