Mikä on Hadoop?
Apache Hadoop on avoimen lähdekoodin ohjelmistokehys, jota käytetään hajautetussa laskentaympäristössä suoritettavien tietojenkäsittelysovellusten kehittämiseen.
HADOOP: n avulla rakennettuja sovelluksia ajetaan suurissa tietojoukoissa, jotka on jaettu hyödyketietokoneiden klustereille. Hyödyketietokoneet ovat halpoja ja laajalti saatavilla. Nämä ovat pääasiassa hyödyllisiä suuremman laskentatehon saavuttamiseksi pienillä kustannuksilla.
Samoin kuin henkilökohtaisessa tietokonejärjestelmässä paikallisessa tiedostojärjestelmässä olevat tiedot, Hadoopissa data sijaitsee hajautetussa tiedostojärjestelmässä, jota kutsutaan Hadoopin hajautetuksi tiedostojärjestelmäksi . Käsittelymalli perustuu 'Data Locality' -konseptiin, jossa laskennallinen logiikka lähetetään tietoa sisältäville klusterisolmuille (palvelimelle). Tämä laskennallinen logiikka ei ole mitään, mutta käännetty versio ohjelmasta, joka on kirjoitettu korkean tason kielellä, kuten Java. Tällainen ohjelma käsittelee Hadoop HDFS: ään tallennettuja tietoja.
Tiedätkö? Tietokoneryhmä koostuu joukosta useita prosessointiyksiköitä (tallennuslevy + prosessori), jotka on kytketty toisiinsa ja jotka toimivat yhtenä järjestelmänä.
Tässä opetusohjelmassa opit,
- Hadoop EcoSystem ja komponentit
- Hadoop-arkkitehtuuri
- Hadoopin ominaisuudet
- Verkon topologia Hadoopissa
Hadoop EcoSystem ja komponentit
Alla oleva kaavio näyttää Hadoopin ekosysteemin eri komponentit -
Apache Hadoop koostuu kahdesta alahankkeesta -
- 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 laskennasolmujen klustereissa.
- HDFS ( Hadoop Distributed File System ): HDFS huolehtii Hadoop-sovellusten tallennusosasta. MapReduce-sovellukset kuluttavat tietoja HDFS: stä. HDFS luo useita kopioita datalohkoista ja jakaa ne klusterin laskusolmuihin. Tämä jakelu mahdollistaa luotettavan ja erittäin nopean laskennan.
Vaikka Hadoop tunnetaan parhaiten MapReducesta ja sen hajautetusta tiedostojärjestelmästä - HDFS, termiä käytetään myös perheeseen liittyviä projekteja, jotka kuuluvat hajautetun tietojenkäsittelyn ja laajamittaisen tietojenkäsittelyn alaisuuteen. Muita Hadoopiin liittyviä projekteja Apachessa ovat Hive, HBase, Mahout, Sqoop, Flume ja ZooKeeper.
Hadoop-arkkitehtuuri
Hadoopilla on Master-Slave-arkkitehtuuri tietojen tallentamiseen ja hajautettuun tietojenkäsittelyyn MapReduce- ja HDFS-menetelmillä.
NimiSolmu:
NameNode edusti kaikkia nimitilassa käytettyjä tiedostoja ja hakemistoja
DataNode:
DataNode auttaa sinua hallitsemaan HDFS-solmun tilaa ja antaa sinun olla vuorovaikutuksessa lohkojen kanssa
Pääsolmu:
Pääsolmun avulla voit suorittaa tietojen rinnakkaiskäsittelyn Hadoop MapReduce -sovelluksella.
Orjasolmu:
Orjasolmut ovat Hadoop-klusterin lisäkoneita, joiden avulla voit tallentaa tietoja monimutkaisten laskelmien suorittamiseksi. Lisäksi kaikissa orjasolmuissa on Task Tracker ja DataNode. Tämän avulla voit synkronoida prosessit vastaavasti NameNoden ja Job Trackerin kanssa.
Hadoopissa isäntä- tai orjajärjestelmä voidaan määrittää pilvessä tai paikan päällä
Hadoopin ominaisuudet
• Soveltuu suurten tietojen analysointiin
Koska Big Data on yleensä luonteeltaan hajautettua ja rakentamatonta, HADOOP-klusterit soveltuvat parhaiten Big Data -analyysiin. Koska tietojenkäsittelysolmuihin virtaa käsittelylogiikka (ei varsinaista dataa), kulutetaan vähemmän verkon kaistanleveyttä. Tätä käsitettä kutsutaan datapaikkakonseptiksi, joka auttaa lisäämään Hadoop-pohjaisten sovellusten tehokkuutta.
• Skaalautuvuus
HADOOP-klustereita voidaan helposti skaalata missä tahansa määrin lisäämällä uusia klusterisolmuja, mikä mahdollistaa Big Datan kasvun. Skaalaus ei myöskään vaadi muutoksia sovelluslogiikkaan.
• Vikasietoisuus
HADOOP-ekosysteemillä on säännös kopioida syötetiedot muihin klusterisolmuihin. Tällä tavoin, jos klusterisolmu epäonnistuu, tietojenkäsittely voi edelleen jatkua käyttämällä toiseen klusterisolmuun tallennettuja tietoja.
Verkon topologia Hadoopissa
Verkon topologia (järjestely) vaikuttaa Hadoop-klusterin suorituskykyyn, kun Hadoop-klusterin koko kasvaa. Suorituskyvyn lisäksi on huolehdittava myös virheiden korkeasta saatavuudesta ja käsittelystä. Tämän Hadoopin saavuttamiseksi klusterien muodostaminen käyttää verkon topologiaa.
Tyypillisesti verkon kaistanleveys on tärkeä tekijä, joka on otettava huomioon verkkoa muodostettaessa. Koska kaistanleveyden mittaaminen voi olla vaikeaa, Hadoopissa verkko esitetään puuna ja tämän puun solmujen välistä etäisyyttä (humalamää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äisyys lähimpään yhteiseen esi-isäänsä.
Hadoop-klusteri koostuu palvelinkeskuksesta, telineestä ja solmusta, joka tosiasiallisesti suorittaa töitä. Tässä datakeskus koostuu telineistä ja teline koostuu solmuista. Prosessien käytettävissä oleva verkon kaistanleveys vaihtelee prosessien sijainnin mukaan. Eli käytettävissä oleva kaistanleveys pienenee, kun siirrymme
- Prosessit samassa solmussa
- Eri solmut samassa telineessä
- Solmut saman datakeskuksen eri telineissä
- Solmut eri palvelinkeskuksissa