sql >> Database teknologi >  >> NoSQL >> HBase

Hvad er Hadoop Reducer Class i MapReduce?

Indtil nu har vi dækket Hadoop-introduktionen og Hadoop HDFS i detaljer. I denne vejledning vil vi give dig en detaljeret beskrivelse af Hadoop Reducer.

Her vil vi diskutere, hvad der er Reducer i MapReduce, hvordan Reducer fungerer i Hadoop MapReduce, forskellige faser af Hadoop Reducer, hvordan kan vi ændre antallet af Reducer i Hadoop MapReduce.

Hvad er Hadoop Reducer?

Reducer i Hadoop reducerer MapReduce et sæt mellemværdier, der deler en nøgle til et mindre sæt værdier.

I MapReduce jobudførelsesflow tager Reducer et sæt af et mellemliggende nøgleværdipar produceret af kortlæggeren som input. Derefter samler, filtrerer og kombinerer Reducer nøgleværdi-par, og dette kræver en bred vifte af behandling.

En-en-mapping finder sted mellem nøgler og reducering i MapReduce jobudførelse. De kører parallelt, da de er uafhængige af hinanden. Brugeren bestemmer antallet af reducerere i MapReduce.

Faser af Hadoop Reducer

Tre faser af Reducer er som følger:

1. Bland fase

Dette er den fase, hvor sorteret output fra mapperen er input til reducereren. Rammeværket henter ved hjælp af HTTP den relevante partition af output fra alle kortlæggere i denne fase.Sorteringsfase

2. Sorteringsfase

Dette er den fase, hvor input fra forskellige kortlæggere igen sorteres baseret på de lignende nøgler i forskellige kortlæggere.

Både Shuffle og Sort forekommer samtidigt.

3. Reducer fase

Denne fase opstår efter blanding og sortering. Reducer opgaveaggreger nøgleværdi-parrene. Med OutputCollector.collect() egenskaben, skrives output fra reduktionsopgaven til filsystemet. Reducer output er ikke sorteret.

Antal reduktioner i Hadoop MapReduce

Brugerindstil antallet af reduktioner ved hjælp af Job.setNumreduceTasks(int) ejendom. Således det rigtige antal reduktionsmidler ved formlen:

 0,95 eller 1,75 ganget med ( * )

Så med 0,95 starter alle reduktionsapparater straks. Begynd derefter at overføre kortoutput, når kortene er færdige.

Hurtigere node afslutter den første runde af reducering med 1,75. Så lancerer den den anden bølge af reducering, som gør et meget bedre job med belastningsbalancering.

Med stigningen i antallet af reduktionsanordninger:

  • Rammeoverhead stiger.
  • Belastningsbalanceringen øges.
  • Omkostningerne ved fejl falder.

Konklusion

Derfor tager Reducer mappers output som input. Bearbejd derefter nøgleværdi-parrene og producerer outputtet. Reducer output er det endelige output. Hvis du kan lide denne blog, eller du har en forespørgsel relateret til Hadoop Reducer, så del venligst med os ved at efterlade en kommentar.

Håber vi vil hjælpe dig.


  1. Mongoose/node.js hvordan man finder, udfylder, laver ting, 'affolker' og opdaterer

  2. Sådan sikrer du dine Open Source-databaser med ClusterControl

  3. Konverter en streng til et tal i MongoDB-projektion

  4. Kan ikke oprette forbindelse til mongoDB, der kører i docker-container