Hva er forskjellen mellom HDFS og MapReduce

De hovedforskjell mellom HDFS og MapReduce er det HDFS er et distribuert filsystem som gir høy gjennomputs tilgang til applikasjonsdata mens MapReduce er en programvare ramme som behandler store data på store klynger pålitelig.

Store data er en samling av et stort datasett. Den har tre hovedegenskaper: volum, hastighet og variasjon. Hadoop er en programvare som gjør det mulig å lagre og administrere store data. Det er et open source-rammeverk skrevet i Java. Videre støtter det distribuert behandling av store datasett på tvers av datamaskiner. HDFS og MapReduce er to moduler i Hadoop-arkitekturen.

Nøkkelområder dekket

1. Hva er HDFS
     - Definisjon, funksjonalitet
2. Hva er MapReduce
     - Definisjon, funksjonalitet
3. Hva er forskjellen mellom HDFS og MapReduce
     - Sammenligning av nøkkelforskjeller

Nøkkelord

Big Data, HDFS, MapReduce

Hva er HDFS

HDFS står for Hadoop distribuert filsystem. Det er et distribuert filsystem av Hadoop å kjøre på store klynger på en pålitelig og effektiv måte. Det er også basert på Google File System (GFS). Videre har den også en liste over kommandoer for å samhandle med filsystemet.

Videre fungerer HDFS i henhold til master, slavearkitektur. Masterkoden eller navnekoden administrerer filsystemmetadataene mens slavenoderne eller datanotatene lagrer faktiske data.

Figur 1: HDFS Arkitektur

Dessuten er en fil i et HDFS navneområde delt inn i flere blokker. Data noder lagrer disse blokkene. Og navneteknoten kartlegger blokkene til data noder, som håndterer lese- og skriveoperasjoner med filsystemet. Videre utfører de oppgaver som blokkopprettelse, sletting etc. som instruert av navnekoden.

Hva er MapReduce

MapReduce er en programvare ramme som gjør det mulig å skrive applikasjoner til å behandle store data samtidig på store klynger av råvarehardware. Dette rammeverket består av en enkelt master jobbsporing og en slaveoppgavesporing per klusterknutepunkt. Mesteren utfører ressursadministrasjon, planlegger jobber på slaver, overvåker og re-utfører de mislykkede oppgavene. På den annen side utfører slaveoppgavetracker oppgavene instruert av mesteren og sender oppgavene statusinformasjon tilbake til materen konstant.

Figur 2: MapReduce Oversikt

Det er også to oppgaver knyttet til MapReduce. De er kartoppgaven og redusere oppgaven. Kartoppgaven tar inn data og deler dem i tupler av nøkkelparametere, mens Reduce-oppgaven tar utgangen fra en kartoppgave som inngang, og kobler disse datatuplene til mindre tupler. Videre utføres kartoppgaven før reduksjonsoppgaven.

Forskjellen mellom HDFS og MapReduce

Definisjon

HDFS er et distribuert filsystem som pålitelig lagrer store filer på tvers av maskiner i en stor klynge. I kontrast er MapReduce en programvare ramme for enkelt å skrive applikasjoner som behandler store mengder data parallelt på store klynger av råvarehardware på en pålitelig, feiltolerant måte. Disse definisjonene forklarer hovedforskjellen mellom HDFS og MapReduce.

Hovedfunksjonalitet

En annen forskjell mellom HDFS og MapReduce er at HDFS gir høy ytelse tilgang til data på tvers av svært skalerbare Hadoop-klynger mens MapReduce utfører behandling av store data.

Konklusjon

Kort sagt, HDFS og MapReduce er to moduler i Hadoop-arkitekturen. Hovedforskjellen mellom HDFS og MapReduce er at HDFS er et distribuert filsystem som gir høy gjennomputs tilgang til applikasjonsdata mens MapReduce er en programvare ramme som behandler store data på store klynger pålitelig.

Henvisning:

1. "HDFS Architecture Guide", Apache Hadoop, tilgjengelig her. 
2. "MapReduce Tutorial", Apache Hadoop, tilgjengelig her.
3. "Hva er Hadoop Distributed File System (HDFS)? - Definisjon fra WhatIs.com. "SearchDataManagement, tilgjengelig her.

Bilde Courtesy:

1. "Hdfsarchitecture" Av Magnai17 - Eget arbeid (CC BY-SA 4.0) via Commons Wikimedia
2. "Mapreduce Oversikt" Av Poposhka - SVG-Edit (CC BY-SA 3.0) via Commons Wikimedia