Cara untuk mengompres output EMR cluster Amazon Anda - Amazon EMR

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Cara untuk mengompres output EMR cluster Amazon Anda

Ada berbagai cara untuk mengompres output yang dihasilkan dari pemrosesan data. Alat kompresi yang Anda gunakan bergantung pada properti data Anda. Kompresi dapat meningkatkan kinerja saat Anda mentransfer data dalam jumlah besar.

Kompresi data output

Ini mengompres output dari pekerjaan Hadoop Anda. Jika Anda menggunakan TextOutputFormat hasilnya adalah file teks gzip'ed. Jika Anda menulis untuk SequenceFiles maka hasilnya adalah SequenceFile yang dikompresi secara internal. Hal ini dapat diaktifkan dengan menetapkan pengaturan konfigurasi mapred.output.compress ke betul.

Jika Anda menjalankan tugas streaming, Anda dapat mengaktifkan ini dengan memasukkan tugas streaming argumen ini.

-jobconf mapred.output.compress=true

Anda juga dapat menggunakan tindakan bootstrap untuk secara otomatis mengompresi semua output tugas. Berikut adalah cara melakukannya dengan klien Ruby.

--bootstrap-actions s3://elasticmapreduce/bootstrap-actions/configure-hadoop \ --args "-s,mapred.output.compress=true"

Terakhir, jika sedang menulis Jar Kustom, Anda dapat mengaktifkan kompresi output dengan baris berikut saat membuat tugas Anda.

FileOutputFormat.setCompressOutput(conf, true);

Kompresi data menengah

Jika tugas Anda mengacak sejumlah besar data dari pemeta hingga peredam, Anda dapat melihat peningkatan kinerja dengan mengaktifkan kompresi menengah. Kompres output peta dan dekompresi ketika tiba di simpul inti. Pengaturan konfigurasinya adalah mapred.compress.map.output. Anda dapat mengaktifkan ini yang mana serupa dengan kompresi output.

Saat menulis Jar Kustom, gunakan perintah berikut:

conf.setCompressMapOutput(true);

Menggunakan perpustakaan Snappy dengan Amazon EMR

Snappy adalah pustaka kompresi dan dekompresi yang dioptimalkan untuk kecepatan. Ini tersedia di Amazon EMR AMIs versi 2.0 dan yang lebih baru dan digunakan sebagai default untuk kompresi menengah. Untuk informasi selengkapnya tentang Snappy, kunjungi http://code.google.com/p/snappy/.