MapReduce on oluline programmeerimiskontseptsioon, mida peate professionaalseks andmeinseneriks saamiseks valdama. See pakub lahendusi hajutatud suurandmete failihaldussüsteemidele. Seega muudab MapReduce'i teoreetilise tausta mõistmine teie jaoks tehnika õppimise lihtsaks.

Aga mis on MapReduce ja kuidas see hajutatud failisüsteemides töötab? Sellest postitusest saate teada.

Mis on MapReduce?

MapReduce on andmetöötlusmudel, mida rakendatakse programmidele või rakendustele, mis töötlevad suurandmeloogikat serverite või sõlmede paralleelsetes klastrites. See jaotab töötlemisloogika mitme andmesõlme vahel ja koondab tulemused klientserverisse.

MapReduce tagab, et töötlemine on kiire, mälusäästlik ja töökindel, olenemata andmete suurusest.

Hadoopi failisüsteem (HDFS), Google'i failisüsteem (GFS), Apache Kafka, GlusterFS ja palju muud on näited hajutatud suurandmete failisüsteemidest, mis kasutavad MapReduce'i algoritmi.

Mis on hajutatud failisüsteem?

Hajutatud failisüsteem (DFS) on andmetöötluse salvestusmeetod, mis hõlmab suurte andmefailide jagamist väiksemateks tükkideks ja nende levitamist süsteemi mitmesse serverisse. See võimaldab erinevatest allikatest pärit klientidel kirjutada ja lugeda andmeid, jagada ja käivitada andmetel programmeeritavat loogikat – otse kõikjal.

instagram viewer

Hajutatud failisüsteem koosneb tavaliselt esmasest serverist (Hadoopis nimetatakse seda ka NameNode'iks), paralleelsed klastrid ja mitmed sõlmed või serverid, mis sisaldavad kopeeritud andmetükke, kõik andmetes Keskus. Kuid iga hajutatud failisüsteemi klaster sisaldab sadu kuni tuhandeid neid sõlme.

Esmane server tuvastab automaatselt muudatused klastrites. Seega saab see määrata igale sõlmele rollid.

Kui esmane server võtab vastu andmefaili, saadab see selle DFS-i klastritesse. Need klastrid tükeldavad ja jaotavad andmed igasse sõlmedesse. Seejärel kordab iga sõlm andmed nn andmeplokkideks, et moodustada kett. Sel hetkel muutub iga sõlm tükiserveriks.

Seotud:Mis on andmekeskused ja miks need on olulised?

Lisaks andmetele juurdepääsu haldamisele hoiab esmane server iga faili juures metaandmete annotatsiooni. Nii teab ta, milline sõlm igas klastris millist faili haldab.

Kuidas MapReduce hajutatud failisüsteemides töötab?

Nagu varem mainitud, on suurandmed saadaval mitmes DFS-i osaserveris. Üks võimalus nendes andmefailides programmeeritava loogika teostamiseks on koondada need üheks. Seejärel saate need koondada ühte serverisse, mis nüüd loogikaga tegeleb.

Kuigi see on tavapärane andmete pärimise viis, on probleem selles, et andmed muutuvad ühes serveris uuesti tervikuks. Seega peab üks server ikkagi haldama loogikat mitme petabaidi andmetega korraga. Kahjuks oli see probleem, mille süsteem esialgu lahendada kavatses. Nii et lõppude lõpuks pole see parim tava.

Seotud:Kuidas teha päringuid mitmele andmebaasitabelile korraga SQL-ühenduste abil

Lisaks põhjustab selline koondamine üheks serveriks mitmeid jõudlusriske. Need võivad ulatuda serveri krahhist, halvast arvutusefektiivsusest, suurest latentsusest, suurest mälutarbimisest ja haavatavustest kuni muudeni.

Kuid teine ​​viis programmeeritava loogika käitamiseks on jätta andmed igasse hajutatud serverisse tükkidena. Ja seejärel sisestage igasse serverisse loogikafunktsioon. See tähendab, et iga klastri osaserver tegeleb nüüd oma arvutustega. Selle lähenemisviisi kasutamine tähendab, et pole vaja andmeid koondada ega ühte serverisse tõmmata.

Et hajutatud andmefailisüsteemis on MapReduce'i kontseptsioon. See tagab, et üks server ei pea allikast andmeid tõmbama. Selle asemel hajutab see töötlemisfunktsiooni (MapReduce) mitmeks eraldiseisvaks tükisõlmeks klastreid, nii et iga sõlm igas klastris käsitleb loogikat eraldi, ilma ühtki ülekoormata server.

Järelikult töötlevad mitu serverit samaaegselt andmebittide loogikat. Selline tööjõu jaotus serverite vahel toob muuhulgas kaasa optimaalse jõudluse ja suurema turvalisuse.

Kuidas töödeldakse MapReduce'i tulemust DFS-is?

Kogu MapReduce'i töötlemine DFS-is toimib järgmiselt.

  • Esmane server võtab kliendilt vastu suurandmete päringu (funktsioon MapReduce).
  • Seejärel saadab see selle igale klastrile, et see levitada selle iga sõlme vahel.
  • Iga sõlm töötleb funktsiooni MapReduce ja kumuleerib selle tulemuse.
  • Teine server kogub iga sõlme tulemused kokku ja saadab need tagasi esmasesse serverisse.
  • Seejärel saadab esmane server tulemuse vastusena kliendile.

Seega on primaarse serveri ainus ülesanne saata kliendile lihtsalt arvutatav tulemus, kuulata muudatusi ja hallata juurdepääsu andmetele. See ei tee mingeid arvutusi. Seetõttu on enamik pilvandmetöötlusrakendusi vaatamata töödeldavatele andmetele muljetavaldavalt kiired.

Mis täpselt on MapReduce'i kaart ja vähendamine?

MapReduce kasutab hajutatud failihaldussüsteemis (DFS) suurandmete töötlemiseks kahte programmeerimisloogikat. Need on kaardi ja vähendamise funktsioon.

The kaart funktsioon töötleb hajutatud failisüsteemi iga klastri iga andmesõlme. The vähendada Seejärel koondab funktsioon iga tükiserveri tagastatud tulemused ja edastab need DFS-is teisele serverile tulemuste koondamiseks. Vastuvõttev server saadab selle arvutuse esmasele serverile, mis postitab tagastatud väärtuse kliendipoolsesse serverisse.

Mis juhtub, kui tükiserver kaob?

Hajutatud failisüsteemi (DFS) serverites võib mõnikord esineda seisakuid. Võib arvata, et see lõhub kogu süsteemi, kuid see pole nii.

Arvutustehnikas on süsteem, mis hoiab ära sellise eelseisva rikke. Seda nimetatakse veataluvuseks.

Seotud:Mis on pilvandmetöötlus? Kuidas pilvtehnoloogia töötab?

Seega, isegi kui server andmete töötlemise ajal välja lülitub, tagab tõrketaluvus, et esmane server tuvastab selle kohe. Ja kuna sõlmede vahel on andmetükkide koopia, edastab esmane server töötlemistöö koheselt teise serverisse. Nii ei mõjuta serveri seisak DFS-is andmetöötlust.

MapReduce hõlbustab suurandmete töötlemist

MapReduce on oluline mudel, mis muudab hajutatud failisüsteemides arvutamise lihtsaks. Kuna see võimaldab mitmel sõlmel samaaegselt arvutusi teha, on see kiire meetod, mida erinevad tehnoloogiahiiglased kasutavad paljude suurte andmete analüüsiga kaasnevate probleemide lahendamiseks.

Google, Amazon, IBM ja teised on näited ettevõtetest, kes seda kontseptsiooni kasutavad. Näiteks Google rakendab MapReduce'i kontseptsiooni, et tuua Google'i otsingu ajal päringutulemusi.

Mis on suurandmed, miks see on oluline ja kui ohtlik see on?

Suurandmed annavad jõudu paljudele tööstusharudele ja avaldavad mõju meie kõigi eludele. Kuid kas see on ohtlikum või kasulikum?

Loe edasi

JagaSäutsMeil
Seotud teemad
  • Programmeerimine
  • Programmeerimine
  • Suured andmed
  • Andmete analüüs
Autori kohta
Idowu Omisola (133 avaldatud artiklit)

Idowu on kirglik kõige nutika tehnoloogia ja tootlikkuse vastu. Vabal ajal mängib ta ringi kodeerimisega ja lülitub igavlemisel malelauale, kuid armastab ka aeg-ajalt rutiinist lahti murda. Tema kirg näidata inimestele teed kaasaegses tehnikas motiveerib teda rohkem kirjutama.

Veel Idowu Omisolalt

Liituge meie uudiskirjaga

Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!

Tellimiseks klõpsake siin