Valdas Vaivaras sban.com Distributed computing  su  Hadoop
Problema Nr. 1 <ul><li>Didelės apimties informaciją. </li></ul><ul><li>Nuskaitymas ir įrašymas į kietąjį diską daug lėtesn...
Sprendimas <ul><li>Vietoj vieno HDD naudoti  100, 1000… </li></ul><ul><li>1 HDD   –   75Mb/s </li></ul><ul><li>1000 HDD   ...
Problema Nr. 2 <ul><li>Reikia parašyti ne tik pačia aplikaciją, bet ir duomenų paskirstymo aplikaciją. </li></ul><ul><li>T...
Kas yra Hadoop? <ul><li>Hadoop  yra atviro-kodo Google MapReduce implementacija, kurią sukūrė Apache. </li></ul><ul><li>Na...
<ul><li>Šiuo metu Hadoop naudoja daugybė stambių įmonių, tarp kurių tokios kaip: Facebook, Amazon,Yahoo, IBM, veoh... </li...
Hadoop failų sistema (HDFS)  Slave Node Slave Node Slave Node Slave Node Slave Node Client HDFS Slave Node Master Node
MapReduce <ul><li>MapReduce programa apdoroja duomenis esančius HDFS. </li></ul><ul><li>MapReduce užduotį atlieka per du e...
MAP map (in_key, in_value) -> (out_key, intermediate_value) list
Pavyzdys: Explode Mapper <ul><li>let  map (k, v) = </li></ul><ul><li>foreach char  c  in  v: </li></ul><ul><li>emit  ( c ,...
REDUCE reduce (out_key, intermediate_value list) -> out_value list
Pavyzdys : Sum Reducer <ul><li>let  reduce(k , vals ) = </li></ul><ul><li>sum = 0 </li></ul><ul><li>foreach int  v  in  va...
DEMO
Upcoming SlideShare
Loading in …5
×

Hadoop

1,203 views
1,121 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,203
On SlideShare
0
From Embeds
0
Number of Embeds
128
Actions
Shares
0
Downloads
17
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Hadoop

  1. 1. Valdas Vaivaras sban.com Distributed computing su Hadoop
  2. 2. Problema Nr. 1 <ul><li>Didelės apimties informaciją. </li></ul><ul><li>Nuskaitymas ir įrašymas į kietąjį diską daug lėtesnis negu duomenų apdorojimo sparta. </li></ul>
  3. 3. Sprendimas <ul><li>Vietoj vieno HDD naudoti 100, 1000… </li></ul><ul><li>1 HDD – 75Mb/s </li></ul><ul><li>1000 HDD – 75Gb/s </li></ul>Procesas prie duomenų, o ne duomenys prie proceso.
  4. 4. Problema Nr. 2 <ul><li>Reikia parašyti ne tik pačia aplikaciją, bet ir duomenų paskirstymo aplikaciją. </li></ul><ul><li>Taigi, reikia būti dviejų sričių specialstu. </li></ul>
  5. 5. Kas yra Hadoop? <ul><li>Hadoop yra atviro-kodo Google MapReduce implementacija, kurią sukūrė Apache. </li></ul><ul><li>Naudojant Hadoop, high-level programuotoju i nereikia gilitnis į paskirst ymo sistemą (distributed computing) . </li></ul>
  6. 6. <ul><li>Šiuo metu Hadoop naudoja daugybė stambių įmonių, tarp kurių tokios kaip: Facebook, Amazon,Yahoo, IBM, veoh... </li></ul><ul><li>Naudojama: </li></ul><ul><li>Log ų procesingas </li></ul><ul><li>Interneto crawlinimas ir indeksavimas </li></ul><ul><li>Data warehousingas </li></ul><ul><li>Pagrindiniai algoritmai: </li></ul><ul><li>Entity-Reduce </li></ul><ul><li>Sort </li></ul><ul><li>Join </li></ul><ul><li>Inverted Index </li></ul>
  7. 7. Hadoop failų sistema (HDFS) Slave Node Slave Node Slave Node Slave Node Slave Node Client HDFS Slave Node Master Node
  8. 8. MapReduce <ul><li>MapReduce programa apdoroja duomenis esančius HDFS. </li></ul><ul><li>MapReduce užduotį atlieka per du etapus Map ir Reduce. </li></ul><ul><li>Kiekviename etape naudojama rakto ir reikšmės (key-value) įvestis ir įšvestis. </li></ul>
  9. 9. MAP map (in_key, in_value) -> (out_key, intermediate_value) list
  10. 10. Pavyzdys: Explode Mapper <ul><li>let map (k, v) = </li></ul><ul><li>foreach char c in v: </li></ul><ul><li>emit ( c , 1 ) </li></ul><ul><li>(“A”, “bar”)  (“b” ,1 ), (“a” ,1 ), (“r” ,1 ) </li></ul><ul><li>(“B”, “camp”)  (“c” ,1 ), (“a” ,1 ), </li></ul><ul><li>  (“m” ,1 ), (“p” ,1 ) </li></ul>
  11. 11. REDUCE reduce (out_key, intermediate_value list) -> out_value list
  12. 12. Pavyzdys : Sum Reducer <ul><li>let reduce(k , vals ) = </li></ul><ul><li>sum = 0 </li></ul><ul><li>foreach int v in vals: </li></ul><ul><li>sum += v </li></ul><ul><li>emit (k, sum) </li></ul><ul><li>( “a” [1,1] )  (“ a ”, 2 ) (“ m ”, [ 1 ])  (“ m ”, 1 ) </li></ul><ul><li>(“ b ”, [ 1 ])  (“ b ”, 1 ) (“ p ”, [ 1 ])  (“ p ”, 1 ) </li></ul><ul><li>(“ c ”, [ 1 ])  (“ c ”, 1 ) (“ r ”, [ 1 ])  (“ r ”, 1 ) </li></ul>
  13. 13. DEMO

×