Hvad er Hadoop? Introduktion, arkitektur, økosystem, komponenter

Indholdsfortegnelse:

Anonim

Hvad er Hadoop?

Apache Hadoop er en open source-software-ramme, der bruges til at udvikle databehandlingsapplikationer, der udføres i et distribueret computermiljø.

Applikationer bygget med HADOOP køres på store datasæt fordelt på klynger af handelscomputere. Råvarecomputere er billige og bredt tilgængelige. Disse er hovedsageligt nyttige til at opnå større beregningskraft til lave omkostninger.

Svarende til data, der er bosiddende i et lokalt filsystem i et pc-system, ligger Hadoop i Hadoop i et distribueret filsystem, der kaldes et Hadoop Distribueret filsystem . Behandlingsmodellen er baseret på 'Data Locality' koncept, hvor beregningslogik sendes til klyngenoder (server), der indeholder data. Denne beregningslogik er intet, men en kompileret version af et program skrevet på et højt sprog som Java. Et sådant program behandler data, der er gemt i Hadoop HDFS.

Ved du? Computerklynge består af et sæt af flere behandlingsenheder (lagerdisk + processor), der er forbundet til hinanden og fungerer som et enkelt system.

I denne vejledning lærer du,

  • Hadoop EcoSystem og komponenter
  • Hadoop Arkitektur
  • Funktioner af 'Hadoop'
  • Netværkstopologi i Hadoop

Hadoop EcoSystem og komponenter

Nedenstående diagram viser forskellige komponenter i Hadoop-økosystemet-

Apache Hadoop består af to delprojekter -

  1. Hadoop MapReduce: MapReduce er en beregningsmodel og software-ramme til skrivning af applikationer, der køres på Hadoop. Disse MapReduce-programmer er i stand til at behandle enorme data parallelt på store klynger af beregningsknudepunkter.
  2. HDFS ( Hadoop Distributed File System ): HDFS tager sig af lagringsdelen af ​​Hadoop-applikationer. MapReduce-applikationer bruger data fra HDFS. HDFS opretter flere replikaer af datablokke og distribuerer dem på computernoder i en klynge. Denne distribution muliggør pålidelige og ekstremt hurtige beregninger.

Selvom Hadoop er bedst kendt for MapReduce og dets distribuerede filsystem - HDFS, bruges udtrykket også om en familie af relaterede projekter, der falder ind under paraplyen for distribueret databehandling og databehandling i stor skala. Andre Hadoop-relaterede projekter hos Apache inkluderer Hive, HBase, Mahout, Sqoop, Flume og ZooKeeper.

Hadoop Arkitektur

Hadoop-arkitektur på højt niveau

Hadoop har en Master-Slave-arkitektur til datalagring og distribueret databehandling ved hjælp af MapReduce- og HDFS-metoder.

NavnNode:

NameNode repræsenterede alle filer og biblioteker, der bruges i navneområdet

DataNode:

DataNode hjælper dig med at styre tilstanden af ​​en HDFS-knude og giver dig mulighed for at interagere med blokkene

MasterNode:

Hovedknuden giver dig mulighed for at udføre parallel behandling af data ved hjælp af Hadoop MapReduce.

Slave node:

Slaveknudepunkterne er de ekstra maskiner i Hadoop-klyngen, som giver dig mulighed for at gemme data til at udføre komplekse beregninger. Desuden kommer hele slaveknudepunktet med Task Tracker og en DataNode. Dette giver dig mulighed for at synkronisere processerne med henholdsvis NameNode og Job Tracker.

I Hadoop kan master- eller slave-system oprettes i skyen eller på stedet

Funktioner af 'Hadoop'

• Velegnet til Big Data-analyse

Da Big Data har tendens til at være distribueret og ustruktureret i naturen, er HADOOP-klynger bedst egnet til analyse af Big Data. Da det behandler logik (ikke de faktiske data), der flyder til computernoderne, forbruges mindre netværksbåndbredde. Dette koncept kaldes datalokalitetskoncept, som hjælper med at øge effektiviteten af ​​Hadoop-baserede applikationer.

• Skalerbarhed

HADOOP-klynger kan let skaleres i ethvert omfang ved at tilføje yderligere klyngenoder og muliggør således vækst af Big Data. Skalering kræver heller ikke ændringer i applikationslogikken.

• Fejltolerance

HADOOP økosystem har en bestemmelse til at replikere inputdataene til andre klyngenoder. På den måde kan databehandling i tilfælde af en klynge node-fejl fortsætte ved hjælp af data gemt på en anden klynge node.

Netværkstopologi i Hadoop

Topologi (arrangement) af netværket påvirker udførelsen af ​​Hadoop-klyngen, når størrelsen på Hadoop-klyngen vokser. Ud over ydeevnen skal man også være opmærksom på den høje tilgængelighed og håndtering af fejl. For at opnå denne Hadoop gør klyngedannelse brug af netværkstopologi.

Netværksbåndbredde er typisk en vigtig faktor, der skal overvejes, når der dannes ethvert netværk. Da måling af båndbredde imidlertid kunne være vanskelig, i Hadoop er et netværk repræsenteret som et træ, og afstanden mellem knudepunkterne på dette træ (antal humle) betragtes som en vigtig faktor i dannelsen af ​​Hadoop-klynge. Her er afstanden mellem to noder lig med summen af ​​deres afstand til deres nærmeste fælles forfader.

Hadoop-klynge består af et datacenter, stativet og den node, der faktisk udfører job. Her består datacenter af stativer og rack består af noder. Netværksbåndbredde, der er tilgængelig for processer, varierer afhængigt af placeringen af ​​processerne. Det vil sige, at den tilgængelige båndbredde bliver mindre, når vi går væk fra-

  • Processer på samme node
  • Forskellige noder på samme stativ
  • Noder på forskellige stativer i det samme datacenter
  • Noder i forskellige datacentre