Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Conf. Univ. Dr. Habil. Marc FRÎNCU

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Conf. Univ. Dr. Habil. Marc FRÎNCU"— Μεταγράφημα παρουσίασης:

1 Conf. Univ. Dr. Habil. Marc FRÎNCU marc.frincu@e-uvt.ro
Prelucrarea volumelor mari de date Curs 4: Scalabilitate: Algoritm + Date + hardware Conf. Univ. Dr. Habil. Marc FRÎNCU

2 Scalabilitate Abilitatea unui sistem de a gestiona un volum tot mai mare de muncă Capacitatea unui sistem de a crește pentru a procesa volume mari Ideal dublând resursele unui sistem se dublează volumul de lucru procesat per unitatea de timp λ - panta

3 Scalabilitate Orizontală (in/out) Verticală (up/down)
Adăugarea mai multor noduri de procesare în paralel cu cele existente Commonity clusters Set de calculatoare interconectate prin tehnologii gen Gigabit, Infiniband, Myrinet Necesită replicarea datelor și software adecvat pentru sincronizare, comunicare Verticală (up/down) Adăugarea mai multor resurse pe noduri existente Virtualizare Alocarea de mai multe core-uri, RAM, disc, etc. unei mașini virtuale Calculul pe cloud (resurse la cerere) Limitată de capacitatea fizică a unui nod

4 Virtualizarea Crearea unei versiuni virtuale (nu fizice) a unui SO, server, dispozitiv de stocare, rețea Permite partajarea aceleiași resurse fizice între mai mulți utilizatori (multi-tenancy) Permite instalarea de software independent de hardware Permite configurarea de imagini de mașini virtuale, instalabile pe o gamă largă de servicii (dispozitive) Mașinile virtuale sunt gestionate de un hypervisor (VMM) Abstracție hardware SO-ul preia controlul întregului hardware prin intermediul VMM-ului

5 Virtualizarea Stivă software clasică Stivă software virtualizată

6 Containere Mașini virtuale lightweight
Emulează interfața SO-ului prin interfața nativă Nu există VMM SO-ul oferă suportul necesar Exemple: Linux containers, Solaris containers, BSD jails Avantaje Alocare rapidă Performanța asemănătoare cu rularea direct pe OS Lightweight

7 Containere

8 Docker Extensie Linux containers (LXC) Numit anterior dotCloud
namespace Restricționează ce poate un container să vadă cgroups Restricționează cât poate un container să folosească dintr-o resursă

9 Scalabilitate Scalabilitate tare
Fluctuația timpului de execuție când menținem același volum de date dar creștem numărul de procesoare Scalabilitate slabă Fluctuația timpului de execuție când creștem numărul de procesoare dar păstrăm volumul de muncă per procesor constant

10 Scalabilitate Mit Cu cât paralelizăm mai mult un cod cu atât el va rula mai repede Ideal 2x resurse = 2x mai repede În realitate Codul nu este 100% paralelizabil Există comunicare și I/O Resursele sunt limitate Adăugând resurse există o îmbunătățire dar este limitată σ – procentul de cod neparalelizabil

11 Legea scalabilității universale
Pe măsură ce un sistem primește mai mult de lucru (load) el va procesa un volum de muncă mai mic (work) k – coeficientul de penalizare a comunicării Punctul critic Dincolo de el nu are rost să mai adăugăm resurse pentru că impactul comunicării este prea mare

12 Exemple Determinarea comunităților în rețele sociale
Predicții meteorologice pe cloud

13 Prețul comunicării Comunicare  speedup redus Prețul comunicării:
mai multe procesoare  speedup-ul scade Avantajul procesării hibride Prețul comunicării

14 Avantajul comunicării
Exemplu: înmulțirea matricilor OpenMP Pentru dimensiuni reduse: memoria partajată are avantaje Pentru dimensiuni mari: aplicația nu mai scalează MPI Pentru dimensiuni reduse: prețul comunicării Pentru dimensiuni mari: scalabilitate (throughput, speedup)

15 Impactul datelor și algoritmului
Pentru aceeași problemă date diferite pot influența scalabilitatea algoritmului Exemplu: procesarea grafurilor Platformă Amazon EC2 m3.large (2 Intel Xeon E cores, 7.5 RAM,100GB SSD, 1 GB Ethernet) 2 seturi de date: CARN, WIKI Numpăr noduri: 3, 6, 9 3 algoritmi: Hashtag Aggregation La fiecare pas calculează o statistică a apariției unui hashtag in graf Meme Tracking Analiza răspândirii ideilor sau meme-lor într-o rețea socială TDPS (Time Dependent Shortest Path) Folosit în routing La fiecare pas calculează drumul cel mai scurt dintr-un nod la restul considerând ca ponderea unei muchii variază (cu pașii)

16 Impactul datelor și algoritmului
CARN Diametru mare Gradul nodurile: uniform WIKI Gradul nodurilor: power law Idee Partiționează graful pe mai multe procesoare Numărul de muchii interprocesor determină impactul comunicării Cu cât numărul de partiții crește cu atât speedup-ul scade dacă algoritmul necesită cumunicare intensă (TPDS, MEME)

17 Impactul datelor și algoritmului
Inițializare I/O Procesare (% paralel) Oprire Exemplu: detecția răspândirii influenței în paralel în rețele sociale

18 Impactul API-ului paralel
Diverse implementări MPI

19 Impactul Platformei hardware
Exemplu: predicții meteorologice (WRF) Bluegene scalează bine Raportul nr. procesoare/speedup

20 Surse curs g-scalability-with-the-usl pers/mergesort-pdpta11.pdf -ipdps-2015.pdf C&pg=PA485&lpg=PA485 6/lectures/Lec06.pdf dive-lxc-vs-docker-comparison/

21 Cursul viitor Analiza datelor Platforme de procesare Independente
Grafuri Fluxurilor de date Platforme de procesare MapReduce Spark Streaming Spark GraphX


Κατέβασμα ppt "Conf. Univ. Dr. Habil. Marc FRÎNCU"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google