Saya harus menyalin 400G file dari volume blok toko elastis ke ember s3 ... Itu adalah sekitar 300k file ~ 1Mb
Saya sudah mencoba s3cmd dan s3fuse , keduanya benar-benar lambat .. s3cmd berlari selama satu hari penuh, mengatakan sudah selesai menyalin, dan ketika saya memeriksa ember, tidak ada yang terjadi (saya kira ada yang salah, tapi setidaknya ada yang salah, tapi setidaknya s3cmd tidak pernah mengeluh tentang apa pun)
S3Fuse bekerja untuk satu hari penuh lainnya, dan menyalin kurang dari 10% file ...
Apakah ada solusi yang lebih baik untuk ini?
Saya menjalankan Linux (ubuntu 12.04) tentu saja
Jawaban:
Ada beberapa faktor kunci yang menentukan throughput dari EC2 ke S3:
Dalam kasus transfer data dalam jumlah besar, mungkin secara ekonomis praktis untuk menggunakan instance komputasi cluster, karena keuntungan efektif dalam throughput (> 10x) lebih dari perbedaan dalam biaya (2-3x).
Meskipun ide-ide di atas cukup logis (meskipun, per-thread cap mungkin tidak), cukup mudah untuk menemukan tolok ukur yang mendukungnya. Satu yang sangat rinci dapat ditemukan di sini .
Menggunakan antara 64 dan 128 paralel (simultan) mengunggah objek 1MB harus menjenuhkan uplink 1Gbps bahwa m1.xlarge memiliki dan bahkan harus menjenuhkan uplink 10Gbps dari sebuah cluster compute (cc1.4xlarge) instance.
Meskipun cukup mudah untuk mengubah ukuran instance, dua faktor lainnya mungkin lebih sulit untuk dikelola.
sumber
Jadi, setelah banyak pengujian s3-parallel-put melakukan triknya dengan takjub. Jelas solusinya jika Anda perlu mengunggah banyak file ke S3. Terima kasih kepada cyberx86 untuk komentarnya.
sumber
Tune AWS CLI S3 Nilai konfigurasi sesuai dengan http://docs.aws.amazon.com/cli/latest/topic/s3-config.html .
Di bawah ini meningkatkan kecepatan sinkronisasi S3 setidaknya 8x!
Contoh:
sumber
Saya menulis aplikasi konsol yang dioptimalkan dalam C # ( CopyFasterToS3 ) untuk melakukan ini. Saya menggunakan EBS vol, saya punya 5 folder dengan lebih dari 2 juta file dalam jumlah 20GB. Script dieksekusi dalam waktu kurang dari 30 menit.
Pada artikel ini saya menunjukkan cara menggunakan fungsi rekursif dengan paralel. Anda dapat menyalinnya ke bahasa lain.
Semoga berhasil!
sumber
Ada juga: s3funnel , yang tampaknya sangat tua (2008) dan beberapa bug terbuka, tetapi masih terdaftar dari Amazon sendiri: amzn-lnk
sumber
Coba s4cmd sebagai gantinya, ini benar-benar lebih cepat dari s3cmd. Alamatnya: https://github.com/bloomreach/s4cmd
sumber
Coba gunakan s3-cli bukan s3cmd. Saya menggunakannya sebagai ganti s3cmd untuk mengunggah file ke ember s3 saya dan itu membuat penyebaran saya lebih cepat hampir 17 menit (dari 21 hingga 4 menit)!
Inilah tautannya: https://github.com/andrewrk/node-s3-cli
sumber