2013-01-24 27 views
13

S3 üzerinde 17.7GB dosyam var. Bir Kovan sorgusunun çıktısı olarak üretildi ve sıkıştırılmadı.S3 üzerinde dosya sıkıştır

Sıkıştırarak bunu yaklaşık 2.2 GB (gzip) olacağını biliyorum. Aktarım darboğazı olduğunda (250kB/s) bu dosyayı olabildiğince hızlı bir şekilde nasıl yükleyebilirim.

S3 üzerinde dosyayı sıkıştırmak veya s3cmd, boto veya ilgili araçlarda aktarımda sıkıştırmayı etkinleştirmek için herhangi bir doğrudan yöntem bulamadım.

+1

Bu dosyayı Yenile sorgunuzu yeniden çalıştırarak yeniden oluşturabilir misiniz? Evet ise, Hive sorgunuz için çıkış sıkıştırmasını etkinleştirmenizi tavsiye ederim. –

+0

@CharlesMenguy: Bunu ilk kez yaptım (bence). Ancak ifadede bir “sipariş” vardı ve bu çıktıyı etkiledi. Normalde her harita işi için bir dosya alırdım, fakat bunun yerine, siparişin yapıldığı yer olduğunu düşündüğüm küçültmeden tek bir dosya aldım. –

+0

Sorgunuzda çıktı sıkıştırmayı nasıl etkinleştirdiniz? Sanırım bir "siparişin" olup olmadığına bakılmaksızın, hemen hemen tüm Hive sorgusunun çıktılarını sıkıştırmanız gerekir. S3 'e' s3n: // ... ''üzerine bir' ekleme üzerine yazarak 'yazarak yazdığınızı sanıyorum. –

cevap

1

Geç cevap gerek ama ben bu mükemmel çalışma bulduysanız.

aws s3 sync s3://your-pics . 

for i in `find | grep -E "\.jpg$|\.jpg$"`; do gzip "$i" ; echo $i; done 

aws s3 sync . s3://your-pics --content-encoding gzip --dryrun 

Bu makinenin (veya EC2 örneği) için s3 kovada tüm dosyaları, görüntü dosyaları sıkıştırır indirip geri s3 kova onları yükler. Dryrun bayrağını çıkarmadan önce verileri doğrulayın.

İlgili konular