A nagy adatfeldolgozás világában a MapReduce erőteljes programozási modellvé vált az elosztott számítástechnika számára. Ez lehetővé teszi a nagy adatkészletek feldolgozását a számítógépek klasztereiben, így az adatok - intenzív alkalmazások sarokkövévé válnak. A MapReduce feladat egyik kritikus eleme a kombinátor. Kombináló beszállítójaként első kézből tanúi voltam a kombinátorok különféle hatásainak az adatok konzisztenciájára a MapReduce Jobs -ban.
A MapReduce megértése és a kombinátorok szerepe
Mielőtt belemerülne az adatok konzisztenciájára gyakorolt hatásba, elengedhetetlen megérteni, hogy mi a MapReduce és a kombinátorok. A MapReduce két fő fázisból áll: a MAP fázis és a csökkentési fázis. A MAP fázisban a bemeneti adatokat kisebb darabokra osztják, és minden darabot a Mapper feladatok függetlenül dolgoznak fel. Ezek a térképezők köztes kulcsot generálnak - értékpárokat. A csökkentési fázis ezután összesíti ezeket a közbenső párokat, hogy előállítsa a végső kimenetet.
A kombinátor egy opcionális optimalizálási lépés a MapReduce keretrendszerben. Ez egy helyi aggregátor, amely a Mapper csomópontokon fut. Elsődleges funkciója az, hogy részleges aggregációkat hajtson végre a köztes kulcs -értékpárokon, amelyeket a térképek generálnak, mielőtt a hálózaton keresztül a reduktorokba küldték őket. Ezzel csökkenti a hálózaton keresztül továbbított adatok mennyiségét, ami jelentősen javíthatja a MapReduce munka teljesítményét.
Az adatok konzisztenciájára gyakorolt pozitív hatások
A hálózat csökkentése - kapcsolódó következetlenségek
Az egyik jelentős módja annak, hogy a kombinátor javíthatja az adatok konzisztenciáját, a hálózati - kapcsolódó problémák csökkentése. Amikor az adatok átkerülnek a hálózaton, akkor fennáll a csomagvesztés, a hálózati torlódás vagy az adatok korrupciójának kockázata. Ha a Mapper csomópontokon helyben részleges aggregációkat hajt végre, a kombinátor csökkenti az áthelyezni kívánt adatok mennyiségét. Ez azt jelenti, hogy a hálózatátvitel során kevesebb esély van arra, hogy az adatok elveszjenek vagy megsérüljenek, ami a reduktorok következetesebb adataihoz vezet.
Például egy szóban - a MapReduce Job megszámlálása, a térképek közbenső kulcsot generálnak - értékpárosokat generálnak, ahol a kulcs egy szó, és az érték az adott szó száma egy adott bemeneti darabban. Kombinátor nélkül ezeket a közbenső párokat a hálózaton keresztül továbbítják a reduktorokba. Egy kombinálóval azonban összefoglalhatja a Mapper csomópontok minden egyes szavának számát. Ez csökkenti az áthelyezni kívánt kulcs -érték párok számát, minimalizálva a hálózathoz kapcsolódó adatok következetlenségeit.
Következetes aggregációs logika
A kombinátor következetes aggregációs logikát hajt végre az összes Mapper csomóponton. Mivel a kombinátor ugyanazt az aggregációs funkciót használja, mint a reduktor, biztosítja, hogy a Mapper csomópontokon elvégzett részleges aggregációk összhangban álljanak a reduktorok által elvégzett végső aggregációkkal. Az aggregációs logika e konzisztenciája elősegíti az adatok konzisztenciájának fenntartását a MapReduce munka során.
Például, ha az aggregációs függvény az egyes kulcsok értékeinek összegének kiszámítása, akkor a kombinátor összegzi a térképes csomópontokon helyben az értékeket, és a reduker a Mappers -től kapott összesített értékek végső összegét elvégzi. Ez biztosítja, hogy az összeg teljes kiszámítása a kezdeti részleges aggregációktól a végső eredményig konzisztens legyen.
Negatív hatások az adatok konzisztenciájára
Helytelen aggregáció nem asszociatív vagy nem kommutációs műveleteknél
Nem minden aggregációs művelet alkalmas kombinálóban történő használatra. A nem asszociatív vagy nem kommutívumok aggregációs funkciói adatok következetlenségeihez vezethetnek, ha kombinátorban használják. Az asszociatív művelet az, amikor az operandusok csoportosítása nem befolyásolja az eredményt (pl. Bevezetés: (A + B) + C = A + (B + C)), és a kommutációs művelet az, ahol az operandus sorrendje nem befolyásolja az eredményt (pl. Összefoglalás: A + B = B + A).
Például vegye figyelembe egy olyan aggregációs függvényt, amely kiszámítja az értékek átlagát. Az átlagot úgy számítják, hogy az értékek összege elosztja az értékek számát. Ha kombinitort használ az átlag kiszámításához, akkor helytelen eredményekhez vezethet, mivel az átlagos művelet nem asszociatív. Ha a kombinátor kiszámítja az értékek egy részhalmazának átlagait, majd a reduktor megpróbálja kombinálni ezeket a részleges átlagokat, akkor a végső eredmény nem lesz az összes érték megfelelő átlaga.
Túl - Az információk összesítése és elvesztése
A kombinálókkal kapcsolatos másik lehetséges probléma az összesítés, amely fontos információk elvesztését eredményezheti. Mivel a kombinátor részleges aggregációkat végez a Mapper csomópontokon, összesítheti az adatokat oly módon, hogy elveszítsen bizonyos összefüggéseket vagy részleteket, amelyek a végső elemzéshez szükségesek.
Például egy MapReduce munkában, amely elemzi az idő -sorozat adatait, ha a kombináló adatokat nagy időintervallumon keresztül összesíti, akkor elveszítheti az egyes adatpontokkal kapcsolatos információkat az adott intervallumon belül. Ez következetlen eredményekhez vezethet, amikor a reduktorok az összesített adatok alapján megpróbálják részletesebb elemzést elvégezni.


Valódi - Világtermékek és azok relevanciája
Az adatfeldolgozási infrastruktúra összefüggésében az olyan termékek, mint aIt 4ge 4ge conde condiP wfi6 ax3000,4 Way MOCA erősítő, és14 Port Gigabit Ethernet kapcsolóJátssz fontos szerepeket. Ezek a termékek a hálózati infrastruktúra részét képezhetik, amely támogatja a MapReduce Jobs -t.
Az XPON ONU 4GE VOIP WIFI6 AX3000 nagy sebességű csatlakoztathatóságot biztosít, ami elengedhetetlen az adatok átadásához a mapReduce klaszterben lévő csomópontok között. Egy stabil és nagy sebességű hálózati kapcsolat segít a hálózathoz kapcsolódó problémák minimalizálásában, amelyek befolyásolhatják az adatok konzisztenciáját. A négyszeres MOCA erősítő javíthatja a jelszilárdságot egy koaxiális hálózatban, biztosítva a megbízható adatátvitelt. És a 14 port gigabites Ethernet kapcsoló lehetővé teszi a klaszteren belüli hatékony adatválasztást, lehetővé téve a sima kommunikációt a térképes és a reduktor csomópontok között.
Az adatok konzisztenciájának biztosítása a kombinátorokkal
Az adatok konzisztenciájának biztosítása érdekében kombinálók használatakor elengedhetetlen az aggregációs funkciók gondos kiválasztása. Csak asszociatív és kommutációs aggregálási funkciókat használjon a kombinátorban. Ezenkívül fontos, hogy a kombinált alaposan teszteljék egy tesztkörnyezetben annak biztosítása érdekében, hogy az ne okozza a fontos információk összesítését vagy elvesztését.
Következtetés és cselekvésre ösztönzés
Összegezve, a kombinátorok pozitív és negatív hatással lehetnek az adatok konzisztenciájára a MapReduce munkahelyek során. Helyes használat esetén jelentősen javíthatják az adatok konzisztenciáját a hálózati kapcsolatokkal kapcsolatos kérdések csökkentésével és a következetes aggregációs logika érvényesítésével. A kombinátorok helytelen használata azonban a helytelen aggregációs műveletek vagy az összesített aggregáció miatt adatok következetlenségeihez vezethet.
Kombinálószállítóként elkötelezettek vagyunk a magas színvonalú kombinátorok biztosításáért, amelyeket úgy terveztek, hogy zökkenőmentesen működjenek a MapReduce munkahelyekkel és biztosítsák az adatok konzisztenciáját. Ha a MapReduce munkahelyek optimalizálására és az adatok konzisztenciájának javítására törekszik, felkérjük Önt, hogy forduljon hozzánk egy részletes megbeszéléshez. Segíthetünk a megfelelő kombinátor és aggregálási funkciók kiválasztásában az Ön konkrét felhasználási esetéhez.
Referenciák
- Dean, J., és Ghemawat, S. (2008). MapReduce: Egyszerűsített adatfeldolgozás nagy klasztereken. Az ACM kommunikációja, 51 (1), 107–113.
- White, T. (2015). Hadoop: A végleges útmutató. O'Reilly Media.
