2016-03-19 13 views
0

Yerel makinede yeni testler yapmak ve bazı testler yapmak için yeni oluyorum.Hadoop: Küçük dosyalar için CombineFileInputFormat, performans iyileştirme sağlıyor mu?

çok sayıda küçük dosyayla ilgilenmek için birçok çözüm var.. CombineFileInputFormat'u genişleten CombinedInputFormat kullanıyorum.

Bu eşlemenin CombinedInputFormat ile 100'den 25'e değiştirildiğini görüyorum. Haritacı sayısının azalması nedeniyle herhangi bir performans artışı beklemeli miyim?

Ben CombinedInputFormat olmadan birçok küçük dosyaya harita-azaltmak işi gerçekleştirdikten

: 100 haritacılar 10 dakika

Ama aldı harita azaltmak işCombinedInputFormat ile idam edildiğinde: 25 haritacı 33 dakikalar önce numaralı telefonu aldı.

Herhangi bir yardım için teşekkür ederiz.

+0

Bu örneği, üç düğüm kümesiyle birlikte aws üzerinde çalıştırmayı denedim, ancak hiçbir şekilde performansta hiçbir iyileşme bulunmadı. Toplam 1000 küçük dosya ile ... haritacı sayısı 1000'den 67'ye düşürüldü. – Astro

cevap

0

Hadoop, çok sayıda küçük dosyanın aksine, az sayıda büyük dosyada daha iyi performans gösterir. (Burada "Küçük", bir Hadoop Dağıtılmış Dosya Sistemi (HDFS) bloğundan önemli ölçüde daha küçük demektir. "Sayı", 1000'lere kadar değişmektedir).

Bu, 1000 1Mb boyutunda dosyanız varsa, normal TextInputFormat tabanlı Harita azaltma işinin 1000 Harita görevi oluşturacağı anlamına gelir, bu harita görevlerinin her biri, başlangıç ​​ve bitiş için belirli bir süre gerektirir. Görev oluşturmadaki bu gecikme, işin performansını azaltabilir

Kaynak sınırlaması olan çok sayıda kiracı kümesinde, çok sayıda Harita yuvası da zor olacaktır.

Lütfen daha fazla ayrıntı ve Karşılaştırma sonuçları için bu link'a bakın.

İlgili konular