Давным давно задался себе вопросом «На сколько эфективно работает MapReduce ?»
Появилась такая возможность и на кластере состоящим из 4 нодов в такой вот конфигурации я решил потестить:
— 3 ноды: Intel® Xeon® CPU W3530 @ 2.80GHz 12GB RAM
— 1 нода: Intel® Xeon® CPU X5450 @ 3.00GHz. 8GB RAM
Операционка debian, hadoop 1.2 (с офф.сайта), java 7 (От ORACLE).
Исходные данные:
— ХМЛ файл: dumps.wikimedia.org/enwiki/20130904/enwiki-20130904-stub-meta-current.xml.gz
— в распакованом состоянии файл занимает 18ГБ места.
— 31М записей о страничках в вики.
— Bzip2 сжимает этот файл в 2ГБ
— 593.045.627 строк в файле
Пример одной записи:
<page>
<title>AfghanistanHistory</title>
<ns>0</ns>
<id>13</id>
<redirect title="History of Afghanistan" />
<revision>
<id>74466652</id>
<parentid>15898948</parentid>
<timestamp>2006-09-08T04:15:52Z</timestamp>
<contributor>
<username>Rory096</username>
<id>750223</id>
</contributor>
<comment>cat rd</comment>
<text id="74089594" bytes="57" />
<sha1>d4tdz2eojqzamnuockahzcbrgd1t9oi</sha1>
<model>wikitext</model>
<format>text/x-wiki</format>
</revision>
</page>
В качестве теста взял простую задачку которую можно решить как в консоле традиционным средством так и с помощу MapReduce. И задачка в двух словах выражается в таком вот виде:
time bunzip2 -c /mnt/hadoop/data_hadoop/test.xml.bz2 | grep "<title>" |wc
31127663 84114856 1382659030
real 9m32.953s
user 10m16.779s
sys 0m12.737s
Подобная задача решена на всём hadoop кластере за 3 минуты и 40 секунд. (да с паралельной распаковкой, распаковка делалась джавой, а не нативно).
В случае если файл был в распакованом состоянии (18ГБ) то обработка заканчивалась на hadoop кластере за 2м и 30с. (быстрее всего за 2мин и 12 секунд). и в данном случае диски нагружены под 100%
ну и на подумать )) файл был предварительно пережат pbzip2… на Intel® Xeon® CPU W3530 @ 2.80GHz
time pbzip2 -d -c -p8 /mnt/hadoop/data_hadoop/testpbzip.xml.bz2 | grep "<title>" |wc
31127663 84114856 1382659030
real 2m44.507s
user 21m28.493s
sys 0m19.833s
Я не собираюсь делать какой либо вывод ..., но где то в интернете встречал что hadoop кластер начинает себя показывать от 4 нодов… наверное у них были на то основания.
Автор: KRED