what is hadoop apache hadoop tutorial
Deze Apache Hadoop-zelfstudie voor beginners legt alles uit over Big Data Hadoop, de functies, het framework en de architectuur in detail:
lijst met te gebruiken valse e-mailadressen
In de vorige tutorial hebben we Big Data uitgebreid besproken. Nu is de vraag hoe we zo'n grote hoeveelheid gegevens kunnen verwerken en verwerken met betrouwbare en nauwkeurige resultaten.
Er is inderdaad een geweldige oplossing geboden door Apache en aangedreven door Java, d.w.z. Hadoop Framework
Lees de Easy BigData Training Series door.
Wat je leert:
Wat is Hadoop?
Apache Hadoop is een open-source framework om alle soorten gegevens (gestructureerd, ongestructureerd en semi-gestructureerd) te beheren.
Zoals we allemaal weten, is RDBMS de beste oplossing als we onze gegevens willen verwerken, opslaan en beheren. Maar gegevens moeten in een gestructureerd formaat zijn om deze met RDBMS te kunnen verwerken. Als de omvang van de gegevens toeneemt, kan RDBMS deze niet verwerken en moeten we de database regelmatig opschonen.
Dit kan verlies van historische gegevens veroorzaken en kan geen nauwkeurige en betrouwbare resultaten opleveren in sommige van de industrieën zoals weersvoorspelling, bankwezen, verzekeringen, verkoop, enz. Een ander probleem met RDBMS is dat als de hoofdserver uitvalt, we onze belangrijke gegevens en lijden veel.
In deze tutorial zullen we zien hoe we deze problemen kunnen oplossen met Apache Hadoop.
Hadoop is een gedistribueerd bestandssysteem en kan grote hoeveelheden gegevens opslaan (gegevens in petabyte en terabyte). De gegevensverwerkingssnelheid is ook erg snel en biedt betrouwbare resultaten omdat het een zeer hoge fouttolerantiesysteem heeft.
Hadoop is een op Java gebaseerd open-source programmeerraamwerk dat het opslaan en verwerken van grote gegevenssets in een gedistribueerde computeromgeving ondersteunt.
Hadoop is gebaseerd op een clusterconcept dat gebruikmaakt van commodity-hardware. Het vereist geen complexe configuratie en we kunnen de Hadoop-omgeving opzetten met goedkopere, eenvoudige en lichtgewicht configuratiehardware.
Clusterconcept is in eenvoudige bewoordingen de gegevens die in replicatie-indeling op meerdere machines worden opgeslagen, zodat wanneer een probleem of ramp zich voordoet op een van de locaties waar de gegevens zich bevinden, er een kopie van die gegevens veilig beschikbaar moet zijn op een andere locatie .
Hadoop versus RDMBS
Hieronder vindt u enkele punten die de voordelen van Hadoop ten opzichte van RDBMS beschrijven.
Kenmerken | Hadoop | RDBMS |
---|---|---|
Opslag | Zeer hoge opslagcapaciteit. | Kan Bigdata niet opslaan. |
Architectuur | Hadoop is gebaseerd op HDFS, MapReduce en YARN. | RDBMS is gebaseerd op ACID-eigenschappen. |
Volume | Kan grote hoeveelheden gegevens aan. | RDBMS kan geen grote hoeveelheden gegevens aan. |
Verscheidenheid / soorten gegevens | Kan gestructureerde, semi-gestructureerde en ongestructureerde gegevens verwerken zoals video, afbeeldingen, CSV-bestanden, xml enz. | Behandel alleen gestructureerde gegevens. |
Snelheid | Snelle verwerking van grote hoeveelheden gegevens. | Zeer traag tijdens het verwerken van grote hoeveelheden gegevens. |
Doorvoer | Hoge doorvoer. | Lage doorvoer. |
Fouttolerantie | Zeer goed | Kan verloren gegevens niet herstellen als de hoofdserver uitvalt. |
Betrouwbaar | Zeer betrouwbaar en genereer nauwkeurige historische en actuele rapporten. | Niet betrouwbaar in termen van Bigdata. |
Hadoop-functies
We kennen nu de exacte definitie van Hadoop. Laten we een stap vooruit gaan en vertrouwd raken met de terminologieën die we in Hadoop gebruiken, de architectuur leren kennen en kijken hoe het precies werkt op Bigdata.
Hadoop-framework is gebaseerd op de volgende concepten of modules:
- Hadoop YARN
- Hadoop Common
- Hadoop HDFS ( H. adoop D wordt verspreid F. met S ystem)
- Hadoop MapReduce
# 1) Hadoop-GAREN: YARN staat voor ' Y en NAAR niet R esource N egotiator ”die wordt gebruikt om de clustertechnologie van de cloud te beheren. Het wordt gebruikt voor het plannen van taken.
# 2) Hadoop Common: Dit zijn de gedetailleerde bibliotheken of hulpprogramma's die worden gebruikt om te communiceren met de andere functies van Hadoop, zoals YARN, MapReduce en HDFS.
# 3) Hadoop HDFS: Distributed File-systeem wordt in Hadoop gebruikt om een grote hoeveelheid gegevens op te slaan en te verwerken. Het wordt ook gebruikt om toegang te krijgen tot de gegevens uit het cluster.
# 4) Hadoop MapReduce: MapReduce is het belangrijkste kenmerk van Hadoop dat verantwoordelijk is voor de verwerking van gegevens in het cluster. Het wordt gebruikt voor het plannen van taken en het bewaken van gegevensverwerking.
Hier hebben we zojuist de definitie van deze functies opgenomen, maar we zullen een gedetailleerde beschrijving van al deze functies zien in onze komende tutorials.
Hadoop-architectuur
Laten we eens kijken naar de architectuur van het framework en kijken welke componenten erin worden gebruikt. Dit framework volgt een master-slave-architectuur in het cluster.
Hieronder volgen de Hadoop-componenten:
- HDFS
- MapReduce
- GAREN
Dit zijn de drie belangrijke componenten van Hadoop-architectuur. We moeten ook enkele van de terminologieën of concepten van de architectuur begrijpen en zien hoe ze werken.
- Naam Node
- Gegevensknooppunt
- Secundair naamknooppunt
- Blokken
# 1) Naam knooppunt
Naamknooppunt is het hoofdknooppunt in HDFS. Het bevat metadata van HDFS zoals bestandsinformatie, directory-structuur, blokinformatie en alle informatie van Data Node, etc. Name Node is alleen verantwoordelijk voor de toegang tot de data of bestanden vanaf de client. Het houdt alle transacties of wijzigingen in bestanden bij.
Het werkt voornamelijk op twee bestanden, d.w.z. FsImage en EditLogs Name Node heeft een JobTracker die alle details van Data Node bevat, zoals welke Data Node welke taak heeft, hoeveel blokken er zijn met elk Data Node, de hartslag van elk Data Node, taakplanningsdetails in het cluster, etc.
Kort gezegd kunnen we zeggen dat een JobTracker TaskTracker van elke Data Node bevat.
# 2) Gegevensknooppunt
Data Node is het Slave Node in HDFS. Data Node is verantwoordelijk voor de daadwerkelijke opslag en verwerking van gegevens. Zijn belangrijkste taak is om de taak in drie blokken te verdelen en die in verschillende dataknooppunten op te slaan. Daarna begint het met het verwerken van de gegevens.
Het heeft ook TaskTracker die volledige informatie van elk blok heeft en welk blok verantwoordelijk is voor welke taak, welke blokken de taak hebben voltooid, enz. En na het verwerken van de gegevens stuurt het de informatie naar Name Node. Elke keer dat de Data Node start, wordt alle informatie opnieuw naar de Name Node gestuurd.
# 3) Secundair naamknooppunt
Secundaire naamknooppunt wordt gebruikt in het geval van fouttolerantie. Er zijn twee scenario's waarin het naamknooppunt niet beschikbaar is en de volledige Hadoop-structuur mislukt omdat het naamknooppunt het enige foutpunt is.
(i) Als Name Node opnieuw opstart vanwege een probleem, dan duurt het voordat het weer verschijnt omdat het een enorme hoeveelheid gegevens heeft, en het kost tijd om dat te herstellen.
(ii) In het geval van een Name Node-crash, gaan alle HDFS-gegevens verloren en kunnen deze niet meer worden hersteld, aangezien Name Node het enige foutpunt is. Om deze problemen op te lossen, is er dus het secundaire naamknooppunt. Het bevat ook een naamruimte-afbeelding en bewerkingslogboeken hetzelfde als het naamknooppunt.
Na een bepaalde periode zal het de naamruimte-afbeelding kopiëren en de bewerkingslogboeken bijwerken vanuit het naamknooppunt. Dus in het geval van een fout in het naamknooppunt, komt het secundaire naamknooppunt in beeld en gedraagt het zich als het primaire naamknooppunt. Door dit proces wordt totale mislukking voorkomen.
# 4) Blokken
Blokken zijn de kleinste eenheid in de HDFS. Hadoop kan een enorme hoeveelheid bestanden verwerken omdat het deze in kleine blokken verdeelt. We kunnen zeggen dat blokken niets anders zijn dan de gegevens van een enorm bestand. De grootte van elk blok is 128 MB. Deze blokken worden opgeslagen in Data Nodes en verwerken de gegevens.
Laten we nu de architectuur van de Hadoop leren kennen om de werking ervan te begrijpen.
Hadoop gedistribueerd bestandssysteem (HDFS) is het bestandssysteem dat wordt gebruikt in het Hadoop-cluster. Hoofdzakelijk wordt HDFS gebruikt om Hadoop-gegevens in het cluster op te slaan. HDFS werkt over het algemeen aan sequentiële gegevensverwerking. Zoals we al weten, is het gebaseerd op de Master-Slave-architectuur.
Alle metagegevens van het cluster worden opgeslagen op de Name Node in de JobTracker en de feitelijke gegevens worden opgeslagen in de Data Node van de HDFS in de TaskTracker.
MapReduce is verantwoordelijk voor de gegevensverwerking. Telkens wanneer een bestand in het cluster komt om te worden verwerkt, verdeelt het eerste gegevensknooppunt het in blokken en elk blok bevat 64 MB aan gegevens en kan 128 MB opslaan. Vervolgens wordt elk blok tweemaal gerepliceerd en opgeslagen in verschillende gegevensknooppunten overal in het cluster.
Al deze informatie wordt naar het naamknooppunt gestuurd en het naamknooppunt slaat deze informatie op in de vorm van metadata. Vervolgens start de feitelijke verwerking van de gegevens het dataknooppunt en stuurt elke drie seconden een hartslag naar het naamknooppunt, zodat het naamknooppunt de informatie heeft waar dit gegevensknooppunt aan werkt.
Als een van de Data Node geen hartslag kan verzenden, maakt de Name Node opnieuw de replica van dat blok op een andere Data Node en begint de verwerking.
Al deze informatie of momentopnamen worden opgeslagen in FsImage en als er een transactie wordt uitgevoerd, voegt u het logboek samen met de nieuwe informatie en houdt u altijd een nieuwe kopie van de logboeken bij.
Het blok dat de taak als eerste voltooit, wordt overgenomen en het dataknooppunt stuurt informatie naar het naamknooppunt en het naamknooppunt zal de actie dienovereenkomstig uitvoeren.
In dit hele proces ondersteunt YARN het systeem en levert het de benodigde bronnen, zodat het de gegevensverwerking en de snelheid niet beïnvloedt. Na het verwerken van de gegevens worden de resultaten opgeslagen in HDFS voor verdere analyse.
Gevolgtrekking
In deze tutorial hebben we geleerd wat Hadoop is, verschillen tussen RDBMS versus Hadoop, Voordelen, Componenten en Architectuur van Hadoop.
Dit raamwerk is verantwoordelijk voor het verwerken en analyseren van big data. We zagen dat MapReduce, YARN en HDFS in het cluster werken.
Notitie: Hieronder volgen de configuratiedetails van Name Node en Data Node. Het secundaire naamknooppunt heeft dezelfde configuratie als het naamknooppunt.
Naam knooppunt configuratie:
Processors: 2 quad-core CPU's op 2 GHz
RAM: 128 GB
Schijf: 6 x 1 TB SATA
Netwerk: 10 Gigabit Ethernet
Configuratie gegevensknooppunt:
Processors: 2 quad-core CPU's op 2 GHz
RAM: 64 GB
Schijf: 12-24 x 1 TB SATA
Netwerk: 10 Gigabit Ethernet
Bekijk hier de Big Data-beginnershandleiding.
Aanbevolen literatuur
- Big data-zelfstudie voor beginners | Wat zijn big data?
- 20+ MongoDB-zelfstudie voor beginners: gratis MongoDB-cursus
- Het Node.js-testraamwerk instellen: Node.js-zelfstudie
- Data Mart-zelfstudie - Typen, voorbeelden en implementatie van datamart
- Diepgaande Eclipse-zelfstudies voor beginners
- Python-zelfstudie voor beginners (hands-on GRATIS Python-training)
- Data Driven Framework in Selenium WebDriver met Apache POI
- LoadRunner-zelfstudie voor beginners (gratis 8-daagse diepgaande cursus)