Kemungkinan Gandakan:
Cara gratis untuk berbagi file besar melalui Internet?
Apa sajakah pilihan untuk mentransfer file besar tanpa menggunakan Internet?
Laboratorium istri saya sedang melakukan proyek di sini di AS dengan kolaborator di Singapura. Mereka kadang-kadang perlu mentransfer sejumlah besar data gambar dimensi tinggi (~ 10GB terkompresi) di seluruh benua. Dengan teknologi saat ini, apa solusi yang baik untuk skenario penggunaan ini?
Saya dapat memikirkan beberapa tetapi tidak satupun dari mereka yang tampak ideal:
- Koneksi langsung melalui Internet: kecepatan transfer sekitar 500KB / dtk, juga tidak memiliki alat untuk menangani kesalahan / transmisi ulang.
- Unggah ke server atau layanan umum seperti Dropbox: menyakitkan untuk diunggah untuk kolaborator non-AS.
- Membakar disk atau menyalin ke HD dan mengirim melalui Kurir: latensi sangat penting, ditambah pekerjaan tambahan untuk membuat salinan lokal.
Ada saran?
Pembaruan: tidak satu pun pihak kolaborasi yang pengguna teknologi cerdas.
data-transfer
jujur
sumber
sumber
Jawaban:
Saya sarankan Anda menggunakan rsync . Rsync mendukung algoritma delta-transfer, jadi jika file Anda hanya diubah sebagian, atau jika transfer sebelumnya dihentikan secara tidak normal, Rsync cukup pintar untuk menyinkronkan hanya apa yang baru / diubah.
Ada beberapa port Rsync asli ke Windows dan sistem non-unix-kompatibel lainnya, baik yang gratis maupun yang tidak bebas. Silakan lihat artikel Wikipedia Rsync untuk detailnya.
Rsync over SSH sangat banyak digunakan, dan bekerja dengan baik. 10GB adalah jumlah data yang relatif kecil saat ini, dan Anda tidak menentukan apa artinya "sesekali". Mingguan? Harian? Per jam? Dengan transfer rate 500KB / detik akan memakan waktu sekitar 6 jam, tidak terlalu lama. Jika Anda perlu sering mentransfer data, mungkin lebih baik membuat tugas cron untuk memulai rsync secara otomatis.
sumber
rsync
memerlukan protokol sendiri untuk delta, membutuhkan sistem rekanan yang mampu di ujung yang lain?rsync
algoritma delta berfungsi saat mentransfer data terkompresi biner (.zip
atau.jpg
)?Koneksi di internet dapat menjadi opsi yang layak dan program seperti bittorrent sangat cocok untuk tujuan ini karena akan memecah file menjadi potongan-potongan logis untuk dikirim melalui internet untuk direkonstruksi di ujung lainnya.
Bittorrent juga memberi Anda koreksi kesalahan otomatis, perbaikan potongan-potongan yang rusak dan jika lebih banyak orang membutuhkan file maka mereka akan mendapat manfaat karena dapat dipasok file dari banyak sumber yang sudah memiliki (bagian) file yang diunduh.
Orang yang melihatnya melihatnya sebagai cara yang bagus untuk mengunduh film dan semacamnya, tetapi ia memang memiliki lebih banyak kegunaan hukum.
Banyak klien bittorrent juga memiliki pelacak bawaan sehingga Anda tidak perlu memiliki server khusus untuk menyimpan file.
sumber
Bagi file dalam potongan misalnya 50MB (menggunakan misalnya
split
). Hitung checksum untuk semuanya (mismd5sum
.). Unggah secara langsung menggunakan FTP dan klien FTP yang toleran terhadap kesalahan, sepertilftp
di Linux. Transfer semua potongan dan file yang berisi semua checksum.Di situs jarak jauh, pastikan semua potongan memiliki checksum yang diinginkan, muat ulang yang gagal, dan pasang kembali ke file asli (misalnya menggunakan
cat
).Kembalikan lokasi server (saya memposting dengan asumsi bahwa situs tujuan menyediakan server dan Anda memulai transfer secara lokal ketika file siap) sesuai kebutuhan. Klien FTP Anda seharusnya tidak peduli.
Saya pernah mengalami masalah serupa di masa lalu dan menggunakan klien FTP yang toleran terhadap kesalahan berhasil. Tidak ada bit yang dibalik, hanya koneksi gagal, jadi saya bisa melewatkan membuat potongan dan hanya mengunggah file. Kami masih menyediakan checksum untuk file lengkap, untuk berjaga-jaga.
sumber
lftp
itu tidak membatalkan transfer yang sedang berlangsung karena alasan apa pun. Pastikan Anda selalu memiliki cukup ruang disk kosong di situs tujuan.Variasi jawaban Daniel Beck adalah membagi file dalam potongan-potongan dalam urutan 50MB hingga 200MB dan membuat file paritas untuk seluruh rangkaian.
Sekarang Anda dapat mentransfer file (termasuk file paritas) dengan FTP, SCP atau yang lainnya ke situs jarak jauh dan melakukan pemeriksaan setelah kedatangan seluruh rangkaian. Sekarang jika ada bagian yang rusak mereka dapat diperbaiki oleh file paritas jika ada cukup banyak blok. Ini tergantung kurang lebih pada berapa banyak file yang rusak dan berapa banyak file paritas yang Anda buat.
File paritas banyak digunakan di Usenet untuk mengirim file besar. Sebagian besar waktu mereka dipecah sebagai arsip RAR. Tidak jarang mengirim data hingga 50 hingga 60GB dengan cara ini.
Anda pasti harus memeriksa tautan pertama dan Anda juga bisa melihat QuickPar , alat yang dapat digunakan untuk membuat file paritas, memverifikasi file yang Anda unduh dan bahkan dapat mengembalikan file yang rusak dengan file paritas yang disediakan.
sumber
Apakah ini file 10GB yang besar? Mungkinkah itu mudah pecah?
Saya belum banyak bermain dengan ini, tetapi menurut saya itu konsep yang menarik dan relatif sederhana yang mungkin berhasil dalam situasi ini:
http://sendoid.com/
sumber
Jadikan data tersedia melalui ftp / http / https / sftp / ftps (memerlukan kredensial masuk) dan gunakan pengelola unduhan apa pun di sisi klien.
Pengelola unduhan dirancang khusus untuk mengambil data terlepas dari kesalahan apa pun yang mungkin terjadi sehingga mereka sesuai dengan tugas Anda.
Sedangkan untuk server, server FTP biasanya yang paling mudah untuk diatur. Anda dapat berkonsultasi daftar di Wikipedia. HTTPS, SFTP dan FTPS memungkinkan enkripsi (dalam FTP / HTTP murni, kata sandi dikirim dalam bentuk teks yang jelas) tetapi SFTP / FTPS kurang umum didukung oleh perangkat lunak klien dan pengaturan server HTTP / HTTPS rumit.
sumber