Küçük dosyalar sorununu, hadoop'ta yer alan Bölüm üzerine yazma komutuyla kovan bölümleri altındaki dosyaları sıkıştırarak gidermeyi deneyin.Eklenti üzerine yazma ekleme bölümünü kullanma
Sorgu:
SET hive.exec.compress.output=true;
SET mapred.max.split.size=256000000;
SET mapred.output.compression.type=BLOCK;
SET mapred.output.compression.codec=org.apache.hadoop.io.compress.SnappyCodec;
set hive.merge.mapredfiles=true;
set hive.merge.size.per.task=256000000;
set hive.merge.smallfiles.avgsize=256000000;
INSERT OVERWRITE TABLE tbl1 PARTITION (year=2016, month=03, day=11)
SELECT col1,col2,col3 from tbl1
WHERE year=2016 and month=03 and day=11;
Girdi Dosyalar: test amaçla
Ben 40 MB büyüklüğünde HDF'ler içinde kovan bölümü (2016/03/11) altında üç dosya var her./11/file1.csv
2016/03/11/file2.csv
2016/03/11/file3.csv
Örnek benim bloğu
2016/03 boyut 128, bu yüzden sadece bir çıktı dosyası oluşturmak istiyorum. Ama 3 farklı sıkıştırılmış dosya alıyorum.
Lütfen çıktı dosya boyutunu kısıtlamak için kovan yapılandırmasını almama yardım edin. Sıkıştırma kullanmıyorsam, tek dosyayı alıyorum.
Hive Versiyon: 1.1
#Salmonerd, onun harita tek işi, temelde kovan bölümünde üzerine ekleme kullanarak daha büyük dosyalar halinde birleştirerek küçük dosyalar sorunu gidermek için çalışıyorum çünkü hiçbir redüktör çalışan bulunmadığını söyledi gibi. Sizin tarafınızdan önerilen konfigürasyonu deneyeyim ve geri döneceğim. –
Beklendiği gibi çalışır. Birden fazla küçük dosyadan sadece tek bir dosya oluşturuldu. –
Harika, hangi ayarları uyguladınız? – Jared