Cuprins:
Video: The incredible inventions of intuitive AI | Maurice Conti 2024
În afară de optimizarea codului aplicației cu MapReduce pentru proiecte mari de date, tehnici de optimizare pentru a îmbunătăți fiabilitatea și performanța. Acestea se încadrează în trei categorii: topologie hardware / rețea, sincronizare și sistem de fișiere.
Hardware de top / topologie de rețea
Independent de aplicație, cele mai rapide echipamente și rețele vor genera cel mai rapid timp de execuție pentru software-ul dvs. Un avantaj distinct al MapReduce este capacitatea de a rula pe clusterele ieftine ale hardware-ului de marfă și ale rețelelor standard. Dacă nu acordați atenție seriei fizice a serverelor dvs., nu veți obține cea mai bună performanță și un grad ridicat de toleranță la defecțiuni necesare pentru a sprijini sarcini mari de date.
Hardware-ul mărfurilor este adesea stocat în rack-uri din centrul de date. Apropierea hardware-ului în rack oferă un avantaj de performanță spre deosebire de mutarea datelor și / sau codul de la rack la rack. În timpul implementării, puteți configura motorul MapReduce pentru a fi conștient și pentru a profita de această apropiere.
Menținerea datelor și a codului împreună este una dintre cele mai bune optimizări pentru performanța MapReduce. În esență, cu cât sunt mai strânse elementele de procesare hardware, cu atât va fi mai puțină latență.
Sincronizarea mare de date
Deoarece nu este eficient să mențineți toate rezultatele cartografierii în cadrul nodului, mecanismele de sincronizare copiază rezultatele de cartografiere la nodurile de reducere imediat după finalizare, astfel încât procesarea poate începe imediat. Toate valorile din aceeași cheie sunt trimise la același reductor, asigurând din nou o performanță mai mare și o eficiență mai bună.
Rezultatele de reducere sunt scrise direct în sistemul de fișiere, deci trebuie proiectate și reglate pentru rezultate optime.
Sistem de fișiere cu date mari
Implementarea MapReduce este susținută de un sistem de fișiere distribuit. Diferența majoră între sistemele de fișiere locale și distribuite este capacitatea. Pentru a gestiona cantitățile mari de informații dintr-o lume a datelor, sistemele de fișiere trebuie să fie distribuite pe mai multe mașini sau noduri dintr-o rețea.
Aplicațiile MapReduce se bazează pe un stil de distribuție master-slave, în care nodul principal stochează toate metadatele, drepturile de acces, maparea și locația fișierelor și blocurilor și așa mai departe. Sclavii sunt nodurile unde sunt stocate datele reale. Toate cererile se adresează comandantului și apoi sunt tratate de către un nod adecvat.Pe măsură ce vă gândiți la proiectarea sistemului de fișiere, trebuie să luați în considerare următoarele:
-
Mențineți-l cald: Așa cum vă puteți aștepta, nodul master ar putea fi suprasolicitat deoarece totul începe acolo. În plus, dacă nodul principal nu reușește, întregul sistem de fișiere este inaccesibil până când masterul este restabilit. O optimizare foarte importantă este crearea unui nod master "în așteptare caldă", care poate să intre în funcțiune dacă apare o problemă cu comandantul online.
-
Cu cât este mai mare, cu atât mai bine: Dimensiunea fișierului este, de asemenea, un aspect important. O mulțime de fișiere mici (mai puțin de 100 MB) trebuie evitate. Sistemele de fișiere distribuite care susțin motoarele MapReduce funcționează cel mai bine atunci când sunt populate cu un număr modest de fișiere mari.
-
Vederea lungă: Deoarece încărcările de lucru sunt gestionate în loturi, o lățime de bandă de rețea foarte susținută este mai importantă decât timpul de execuție rapid al cartografierelor sau al reductorilor. Abordarea optimă este ca codul să deruleze o mulțime de date când este citit și din nou când este timpul să scrie în sistemul de fișiere.
-
Păstrați-l în siguranță: Dar nu prea. Adăugarea de straturi de securitate pe sistemul de fișiere distribuit va degrada performanța acestuia. Permisiunile de fișiere sunt acolo pentru a preveni consecințele neintenționate, nu comportamentul răuvoitor. Cea mai bună abordare este să se asigure că numai utilizatorii autorizați au acces la mediul de date centru și să păstreze sistemul de fișiere distribuit protejat din exterior.