Mikä Hadoop on? Archirakenne, ekosysteemi ja komponentit
⚡ Älykäs yhteenveto
Apache Hadoop on avoimen lähdekoodin kehys, joka tallentaa valtavia tietojoukkoja useiden laitteistoklustereiden kesken ja siirtää prosessointilogiikan dataan, jotta analyysi skaalautuu lisäämällä edullisia solmuja suurempien palvelimien sijaan.

Mikä Hadoop on?
Apache Hadoop on avoimen lähdekoodin ohjelmistokehys, jota käytetään hajautetussa laskentaympäristössä suoritettavien tietojenkäsittelysovellusten kehittämiseen.
Hadoopilla rakennettuja sovelluksia ajetaan suurilla tietojoukoilla, jotka on jaettu yksinkertaisten tietokoneiden klustereihin. Perustietokoneet ovat edullisia ja laajalti saatavilla. Ne ovat hyödyllisiä pääasiassa suuremman laskentatehon saavuttamiseksi alhaisilla kustannuksilla.
Samoin kuin henkilökohtaisen tietokoneen paikallisessa tiedostojärjestelmässä olevat tiedot, Hadoopissa tiedot sijaitsevat hajautetussa tiedostojärjestelmässä, jota kutsutaan Hadoopin hajautettu tiedostojärjestelmäKäsittelymalli perustuu 'Data Locality' konsepti, jossa laskennallinen logiikka lähetetään tietoja sisältäville klusterisolmuille (palvelimille). Tämä laskennallinen logiikka on yksinkertaisesti käännetty versio ohjelmasta, joka on kirjoitettu korkean tason kielellä, kuten JavaTällainen ohjelma käsittelee tallennettuja tietoja Hadoop HDFS.
Tiedätkö? Tietokoneklusteri koostuu useista toisiinsa kytketyistä prosessointiyksiköistä (tallennuslevy + prosessori), jotka toimivat yhtenä järjestelmänä.
Versio 3.5.0, joka julkaistiin 2. huhtikuuta 2026, on nykyinen vakaa julkaisu; versio 3.4 saa edelleen ylläpitopäivityksiä.
Hadoop-ekosysteemi ja komponentit
Alla oleva kaavio näyttää Hadoop-ekosysteemin eri komponentit ryhmiteltynä niiden suorittaman tehtävän mukaan – tallennus, käsittely sekä niitä ympäröivät kysely-, käsittely- ja koordinointityökalut.
Apache Hadoop koostuu kahdesta osaprojektista –
- Hadoop MapReduce: MapReduce on laskennallinen malli ja ohjelmistokehys Hadoopilla ajettavien sovellusten kirjoittamiseen. Nämä MapReduce-ohjelmat pystyvät käsittelemään valtavia tietoja rinnakkain suurissa laskentasolmuryhmissä.
- HDFS (Hadoopin hajautettu tiedostojärjestelmä): HDFS huolehtii Hadoop-sovellusten tallennusosasta. MapReduce-sovellukset kuluttavat dataa HDFS:stä. HDFS luo useita kopioita tietolohkoista ja jakaa ne klusterin laskentasolmuihin. Tämä jakauma mahdollistaa luotettavat ja erittäin nopeat laskennat.
Nykyisissä julkaisuissa on kaksi lisäydinmoduulia. Hadoop LANKA, lisätty Hadoop 2.x:ssä, aikatauluttaa klusterin työskentelyn ja Hadoop Common pitää hallussaan jaettua Java kirjastot, joista jokainen moduuli on riippuvainen. YARN on se, mikä antaa moottoreille, kuten SparkTez ja Flink toimivat MapReducen rinnalla.
Vaikka Hadoop tunnetaan parhaiten MapReducesta ja sen hajautetusta tiedostojärjestelmästä HDFS, termiä käytetään myös useista siihen liittyvistä projekteista, jotka kuuluvat hajautetun laskennan ja laajamittaisen tiedonkäsittelyn piiriin. Muita Apachen Hadooppiin liittyviä projekteja ovat Hive, HBase, Mahout, Sqoop, Flumeja ZooKeeper.
Hadoop Archirakenne
Hadoopilla on master-slave-arkkitehtuuri tiedontallennukseen ja hajautettuun tiedonkäsittelyyn käyttäen MapReduce ja HDFS-metodit. Alla olevassa kaaviossa roolit on sijoitettu vierekkäin siten, että tallennuskerros on toisella puolella ja käsittelykerros toisella.
Korkean tason Hadoop Archirakenne
NameNode
NameNode tallentaa kaikkien nimiavaruudessa käytettyjen tiedostojen ja hakemistojen metatiedot, mukaan lukien tiedot siitä, mistä lohkoista kukin tiedosto koostuu ja missä kyseiset lohkot sijaitsevat.
DataNode
DataNode hallitsee HDFS-solmun tilaa ja antaa sinun olla vuorovaikutuksessa sen tallentamien lohkojen kanssa, raportoiden takaisin NameNodelle säännöllisillä lohkoraporteilla ja sykkeillä.
MasterNode
Pääsolmun avulla voit suorittaa tietojen rinnakkaisen käsittelyn Hadoop MapReducen avulla.
Orjasolmu
Apusolmut ovat Hadoop-klusterin lisäkoneita, joiden avulla voit tallentaa tietoja ja suorittaa monimutkaisia laskelmia. Lisäksi jokainen apusolmu suorittaa tehtävänTracker ja DataNode. Tämän avulla voit synkronoida prosessit NameNoden ja Job-solmun kanssa.Tracker vastaavasti.
Hadoopissa master- tai slave-järjestelmät voidaan asentaa pilveen tai paikallisesti.
Yksi nimihuomautus: JobTracker ja TehtäväTracker kuuluvat ensimmäisen sukupolven MapReduce-ajonaikaiseen ympäristöön (MRv1). Hadoop 2.x:stä eteenpäin YARN jakaa tehtävänsä klusterinlaajuisen Resurssienhallitsijatai Solmujen hallinta työntekijää kohden ja yksi ApplicationMaster työtä kohden. NameNode ja DataNode pysyvät muuttumattomina.
Hadoopin ominaisuudet
Sopii Big Data -analyysiin
As Big Data koska se on luonteeltaan hajautettua ja jäsentämätöntä, Hadoop-klusterit sopivat parhaiten Big Datan analysointiin. Koska laskentayksiköihin virtaa prosessointilogiikka (ei itse data), verkon kaistanleveyttä kuluu vähemmän. Tätä kutsutaan datapaikan käsite, ja se auttaa lisäämään Hadoop-pohjaisten sovellusten tehokkuutta.
skaalautuvuus
Hadoop-klustereita voidaan helposti skaalata mihin tahansa pisteeseen lisäämällä klusterisolmuja, mikä mahdollistaa Big Datan kasvun. Skaalaus ei myöskään vaadi muutoksia sovelluslogiikkaan.
Vikasietoisuus
Hadoop-ekosysteemissä on ominaisuus, jolla syötetiedot voidaan replikoida muihin klusterisolmuihin. Tällä tavoin klusterisolmun vikaantumisen sattuessa tiedonkäsittelyä voidaan silti jatkaa käyttämällä toisessa klusterisolmussa tallennettuja tietoja. HDFS säilyttää oletusarvoisesti kolme kopiota jokaisesta lohkosta, minkä arvon määrittää... dfs.replication ominaisuutta, ja NameNode replikoi uudelleen kaikki lohkot, jotka putoavat kyseisen määrän alapuolelle.
Verkkotopologia Hadoopissa
Verkon topologia (järjestely) vaikuttaa Hadoop-klusterin suorituskykyyn klusterin koon kasvaessa. Suorituskyvyn lisäksi on huolehdittava myös korkeasta käytettävyydestä ja vikojen käsittelystä. Tämän saavuttamiseksi Hadoop-klusterin muodostamisessa hyödynnetään verkkotopologiaa.
Alla oleva puu näyttää, miten kyseinen järjestely on mallinnettu, datakeskuksesta aina kunkin räkin sisällä oleviin solmuihin asti.
Tyypillisesti verkon kaistanleveys on tärkeä tekijä, joka on otettava huomioon mitä tahansa verkkoa muodostettaessa. Koska kaistanleveyden mittaaminen voi kuitenkin olla vaikeaa, Hadoopissa verkko esitetään puuna, ja tämän puun solmujen välistä etäisyyttä (hyppyjen lukumäärää) pidetään tärkeänä tekijänä Hadoop-klusterin muodostumisessa. Tässä kahden solmun välinen etäisyys on yhtä suuri kuin niiden etäisyyksien summa lähimpään yhteiseen esi-isäänsä.
Hadoop-klusteri koostuu datakeskuksesta, räkistä ja solmusta, joka itse asiassa suorittaa töitä. Tässä datakeskus koostuu räkeistä ja räkki koostuu solmuista. Prosessien käytettävissä oleva verkon kaistanleveys vaihtelee prosessien sijainnin mukaan. Toisin sanoen käytettävissä oleva kaistanleveys pienenee, kun siirrytään poispäin...
- Prosessit samassa solmussa
- Eri solmut samassa telineessä
- Solmut saman datakeskuksen eri telineissä
- Solmut eri datakeskuksissa
Telinetietoisuus käyttää samaa puuta: HDFS sijoittaa replikat useampaan kuin yhteen telineeseen, joten telinekytkimen menettäminen ei vie kaikkia datan kopioita mukanaan.



