what is hadoop apache hadoop tutorial
Denne Apache Hadoop-vejledning til begyndere forklarer alt om Big Data Hadoop, dets funktioner, ramme og arkitektur i detaljer:
jira tidssporingsrapport efter bruger
I den foregående vejledning diskuterede vi Big Data detaljeret. Nu er spørgsmålet, hvordan vi kan håndtere og behandle en så stor datamængde med pålidelige og nøjagtige resultater.
Der er virkelig en god løsning leveret af Apache og drevet af Java, dvs. Hadoop Framework .
=> Læs gennem Easy BigData Training Series.
Hvad du lærer:
Hvad er Hadoop?
Apache Hadoop er en open source-ramme til styring af alle typer data (Structured, Unstructured og Semi-structured).
Som vi alle ved, er RDBMS den bedste løsning, hvis vi vil behandle, gemme og administrere vores data. Men data skal være i et struktureret format til at håndtere det med RDBMS. Også, hvis datastørrelsen stiger, er RDBMS ikke i stand til at håndtere det, og vi er nødt til at udføre Database-oprydning regelmæssigt.
Dette kan medføre historisk datatab og kan ikke generere nøjagtige og pålidelige resultater i nogle af brancher som Vejrudsigt, Bank, Forsikring, Salg osv. Et andet problem med RDBMS er, at hvis hovedserveren går ned, kan vi miste vores vigtige data og lider meget.
I denne vejledning vil vi se, hvordan vi kan løse disse problemer med Apache Hadoop.
Hadoop er et distribueret filsystem og kan gemme store datamængder (data i petabyte og terabyte). Databehandlingshastigheden er også meget hurtig og giver pålidelige resultater, da den har et meget højt fejltolerance system.
Hadoop er en Java-baseret open source-programmeringsramme, der understøtter lagring og behandling af store datasæt i et distribueret computermiljø.
Hadoop er baseret på et klyngekoncept, der bruger råvarehardware. Det kræver ingen kompleks konfiguration, og vi kan etablere Hadoop-miljøet med billigere, enkel og let konfigurationshardware.
Klyngekoncept med enkle ord er de data, der er gemt i replikeringsformat på flere maskiner, så når der opstår et problem eller en katastrofe på et af de steder, hvor dataene opholder sig, skal der være en kopi af disse data, der er sikkert tilgængelige på et andet sted .
Hadoop mod RDMBS
Nedenfor er nogle punkter, der beskriver fordelene ved Hadoop i forhold til RDBMS.
Funktioner | Hadoop | RDBMS |
---|---|---|
Opbevaring | Meget høj lagringskapacitet. | Kan ikke gemme Bigdata. |
Arkitektur | Hadoop er baseret på HDFS, MapReduce og YARN. | RDBMS er baseret på ACID-egenskaber. |
Bind | Kan håndtere store datamængder. | RDBMS kan ikke håndtere store datamængder. |
Variation / datatyper | Kan håndtere strukturerede, semistrukturerede og ustrukturerede data som video, billeder, CSV-filer, xml osv. | Håndter kun strukturerede data. |
Hastighed | Hurtig behandling af store mængder data. | Meget langsom under behandling af store mængder data. |
Gennemstrømning | Høj gennemstrømning. | Lav kapacitet. |
Fejltolerance | Meget godt | Kan ikke gendanne mistede data, hvis hovedserveren går ned. |
Pålidelig | Meget pålidelig og genererer nøjagtige historiske og aktuelle rapporter. | Ikke pålidelig med hensyn til Bigdata. |
Hadoop-funktioner
Vi kender nu den nøjagtige definition af Hadoop. Lad os gå et skridt fremad og blive fortrolige med de terminologier, vi bruger i Hadoop, lære dets arkitektur og se, hvordan det fungerer nøjagtigt på Bigdata.
Hadoop framework er baseret på følgende koncepter eller moduler:
- Hadoop GARN
- Hadoop fælles
- Hadoop HDFS ( H adoop D istribueres F med S ystem)
- Hadoop MapReduce
# 1) Hadoop GARN: GAR står for “ Y og TIL ikke andet R esource N egotiator ”, der bruges til at styre clusterteknologien i skyen. Det bruges til jobplanlægning.
# 2) Hadoop fælles: Dette er de detaljerede biblioteker eller hjælpeprogrammer, der bruges til at kommunikere med de andre funktioner i Hadoop som YARN, MapReduce og HDFS.
# 3) Hadoop HDFS: Distribueret filsystem bruges i Hadoop til at gemme og behandle en stor datamængde. Det bruges også til at få adgang til dataene fra klyngen.
# 4) Hadoop MapReduce: MapReduce er hovedfunktionen i Hadoop, der er ansvarlig for behandlingen af data i klyngen. Det bruger til jobplanlægning og overvågning af databehandling.
Her har vi lige inkluderet definitionen af disse funktioner, men vi vil se en detaljeret beskrivelse af alle disse funktioner i vores kommende tutorials.
Hadoop Arkitektur
Lad os lære rammens arkitektur og se, hvilke komponenter der bruges i den. Denne ramme følger en master-slave-arkitektur i klyngen.
Følgende er Hadoop-komponenterne:
- HDFS
- MapReduce
- GARN
Dette er de tre vigtige komponenter i Hadoop-arkitekturen. Vi bør også forstå nogle af terminologierne eller begreberne i arkitekturen og se, hvordan de fungerer.
- Navneknude
- Dataknude
- Sekundær navneknude
- Blokke
# 1) Navneknude
Name Node er masternoden i HDFS. Den indeholder metadata for HDFS som filoplysninger, Directory-struktur, blokoplysninger og al information fra Data Node osv. Navnode er kun ansvarlig for data eller filadgang fra klienten. Det sporer alle transaktioner eller ændringer foretaget i filer.
Det fungerer hovedsageligt på to filer, dvs. FsImage og EditLogs . Navneknude har en JobTracker, der indeholder alle detaljerne i dataknudepunktet, som hvilken dataknude har hvilken opgave, hvor mange blokke der er med hver dataknude, hjerterytmen for hver dataknude, jobplanlægningsoplysninger i klyngen osv.
Kort sagt kan vi sige, at en JobTracker indeholder TaskTracker for hver datanode.
# 2) Dataknude
Data Node er Slave Node i HDFS. Data Node er ansvarlig for den faktiske lagring og behandling af data. Dets hovedopgave er at opdele jobbet i tre blokke og gemme det i forskellige datanoder. Derefter begynder behandlingen af dataene.
Det har også TaskTracker, som har fuld information om hver blok, og hvilken blok er ansvarlig for hvilken opgave, hvilke blokke har afsluttet opgaven osv., Og efter behandling af data sender den informationen til Navneknude. Hver gang datanoden starter, sender den al information igen til navneknuden.
# 3) Sekundær navneknude
Sekundær navneknude bruges i tilfælde af fejltolerance. Der er to scenarier, hvor navneknudepunktet er nede, og den fulde Hadoop-struktur mislykkes, fordi navneknudepunktet er det eneste fejlpunkt.
(i) Hvis Name Node genstarter på grund af et problem, end det tog at komme op igen, da det har en enorm mængde data, så for at gendanne, at det tager tid.
(ii) I tilfælde af nedbrud på navneknude mister alle HDFS-data og kan ikke gendanne dem igen, da navneknudepunkt er det eneste fejlpunkt. For at overvinde disse problemer er Secondary Name Node således der. Det indeholder også et Navneområde-billede og Rediger logfiler det samme som Navnoden.
Efter en bestemt periode kopierer det Namespace-billedet og opdaterer Rediger logfiler fra navneknudepunktet. I tilfælde af en fejl på navneknudepunktet kommer den sekundære navneknude således ind i billedet og opfører sig som den primære navneknude. På grund af denne proces forhindrer den total fiasko.
# 4) Blokke
Blokke er den mindste enhed i HDFS. Hadoop kan behandle en enorm mængde fil, da den deler den i små blokke. Vi kan sige, at blokke ikke er andet end dataene i en enorm fil. Størrelsen på hver blok er 128 MB. Disse blokke gemmes i datanoder og behandler dataene.
Lad os nu lære Hadoop-arkitekturen at forstå dens funktion.
Hadoop distribueret filsystem (HDFS) er det filsystem, der bruges i Hadoop-klyngen. Hovedsageligt bruges HDFS til at gemme Hadoop-data i klyngen. HDFS arbejder generelt med sekventiel databehandling. Som vi allerede ved, er det baseret på Master-Slave-arkitektur.
Alle klyngens metadata gemmes på navneknudepunktet i JobTracker, og de faktiske data lagres i HDFS-dataknudepunktet i TaskTracker.
MapReduce er ansvarlig for behandlingen af data. Hver gang en fil kommer ind i klyngen til behandling, så deler den første dataknude den i blokke, og hver blok indeholder 64 MB data, og den kan gemme 128 MB. Derefter replikeres hver blok to gange og gemmes i forskellige datanoder hvor som helst i klyngen.
Alle disse oplysninger sendes til Navneknudepunktet, og Navneknudepunktet gemmer disse oplysninger i form af metadata. Derefter starter den faktiske behandling af dataene Data Node og sender et hjerteslag til Navneknudepunktet hvert tredje sekund, så Navneknuden har de oplysninger, som denne Dataknude arbejder på.
Hvis nogen af datanoden ikke sender hjerterytme, opretter navneknuden igen kopien af den blok på en anden datanode og begynder behandlingen.
Al denne information eller snapshots vil blive gemt i FsImage, og hvis der foretages en transaktion, flettes redigeringsloggen de nye oplysninger og opbevarer altid en ny kopi af logfiler.
Blokken, der afslutter opgaven først, tages, og datanoden sender information til navneknudepunktet, og navneknudepunktet udfører handlingen i overensstemmelse hermed.
I hele denne proces vil YARN understøtte og levere nødvendige ressourcer til systemet, så det ikke påvirker databehandling og hastighed. Efter behandling af dataene gemmes resultaterne i HDFS til yderligere analyse.
Konklusion
I denne vejledning lærte vi, hvad der er Hadoop, forskelle mellem RDBMS vs Hadoop, Fordele, komponenter og arkitektur af Hadoop.
Denne ramme er ansvarlig for at behandle big data og analysere dem. Vi så MapReduce, YARN og HDFS arbejder i klyngen.
Bemærk: Følgende er konfigurationsoplysningerne for navneknude og dataknude. Sekundær navneknude har samme konfiguration som navneknudepunktet.
Navnode konfiguration:
Processorer: 2 Quad Core-CPU'er, der kører @ 2 GHz
RAM: 128 GB
Disk: 6 x 1 TB SATA
Netværk: 10 Gigabit Ethernet
Dataknudekonfiguration:
Processorer: 2 Quad Core-CPU'er, der kører @ 2 GHz
RAM: 64 GB
Disk: 12-24 x 1 TB SATA
Netværk: 10 Gigabit Ethernet
=> Se på Big Data Beginners Guide her.
Anbefalet læsning
- Big Data Tutorial for begyndere | Hvad er Big Data?
- 20+ MongoDB-vejledning til begyndere: Gratis MongoDB-kursus
- Sådan konfigureres Node.js Testing Framework: Node.js Tutorial
- Data Mart Tutorial - Typer, eksempler og implementering af Data Mart
- Dybdegående formørkelsesvejledninger til begyndere
- Python-vejledning til begyndere (GRATIS Python-træning)
- Datadrevet ramme i Selenium WebDriver ved hjælp af Apache POI
- LoadRunner-selvstudie til begyndere (gratis 8-dages dybdegående kursus)