Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

27
© ALTOROS Systems | CONFIDENTIAL Diomin Aliaksey R&D 2013, Minsk

description

Алексей Демин (Senior R&D Engineer в Altoros) «Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop»

Transcript of Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

Page 1: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL

Diomin AliakseyR&D

2013, Minsk

Page 2: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL

Page 3: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 3

OpenSource Monitoring Target Group

Apache Hadoop Yes X Developers

Cloudera Yes Good All

Hortonwork Yes Good All

MapR No Bad Enterprise

PivitalHD No Bad Enterprise

Page 4: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 4

How to find bottleneck?

Page 5: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 5

Page 6: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 6

Page 7: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL

Page 8: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 8

Page 9: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 9

Page 10: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 10

Page 11: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 11

Page 12: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 12

Page 13: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 13

1. Increase size of cluster

2. Increase input block size

3. Increase buffer size

Page 14: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 14

1. Increase size of cluster

2. Increase input block size

3. Increase buffer size

Page 15: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 15

Page 16: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 16

Page 17: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 17

Page 18: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 18

1. Increase size of cluster

2. Increase input block size

3. Increase buffer size

Page 19: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 19

Page 20: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 20

1. Increase size of cluster

2. Increase input block size

3. Increase buffer size

Page 21: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 21

1. Compression

Page 22: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 22

1. Compression

2. Combiner

Page 23: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 23

Wordcount

Reduce function as Combine

combine 1: <a, 1> <b, 1> <a, 1> => <a, 2> <b, 1>

combine 2: <a, 1> <b, 1> => <a, 1> <b, 1>

Reduce: <a, {1, 2}> <b, {1, 1}> => <a, 3> <b, 2>

Page 24: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 24

Mean

combine 1: <k,40> <k,30> <k,20> => <k, 30>

combine 2: <k,2> <k,8> => <k, 5>

Reduce: <k, {30, 5}> => <k, 17.5>

Page 25: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 25

Mean

combine 1: <k,40> <k,30> <k,20> => <k, 30>

combine 2: <k,2> <k,8> => <k, 5>

Reduce: <k, {30, 5}> => <k, 17.5>

(40 + 30 + 20 + 2 + 8)/5 = 17.5

Page 26: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 26

Mean

combine 1:

<k,<40,1>> <k,<30,1>>, <k,<20,1>> => <k, <90,3> >

combine 2:

<k,<2,1>> <k, <8,1>> => <k, <10, 2> >

Reduce: <k, {<90,3>, <10,2>} > => <k, 20>

Page 27: Обзор Hadoop-дистрибутивов. Тюнинг «узких мест» Hadoop

© ALTOROS Systems | CONFIDENTIAL 27