Chuyển một lượng lớn dữ liệu giữa các châu lục [trùng lặp]


12

Có thể trùng lặp:
Cách miễn phí để chia sẻ các tệp lớn qua Internet?
Một số tùy chọn để chuyển các tệp lớn mà không cần sử dụng Internet là gì?

Phòng thí nghiệm của vợ tôi đang thực hiện một dự án ở Mỹ với các cộng tác viên ở Singapore. Thỉnh thoảng họ cần chuyển một lượng lớn dữ liệu hình ảnh chiều cao (~ 10GB nén) trên khắp các châu lục. Với các công nghệ hiện tại, điều gì sẽ là một giải pháp tốt cho kịch bản sử dụng này?

Tôi có thể nghĩ về một vài nhưng không ai trong số họ có vẻ lý tưởng:

  • Kết nối trực tiếp qua Internet: tốc độ truyền tải khoảng 500KB / giây, cũng thiếu công cụ xử lý lỗi / truyền lại.
  • Tải lên một máy chủ hoặc dịch vụ phổ biến như Dropbox: đau đớn khi tải lên cho cộng tác viên không ở Hoa Kỳ.
  • Ghi đĩa hoặc sao chép vào HD và vận chuyển qua Chuyển phát nhanh: độ trễ là rất đáng kể, cộng với công việc làm thêm để tạo bản sao cục bộ.

Bất kỳ đề xuất?

Cập nhật: không bên nào của sự hợp tác là người dùng am hiểu công nghệ.


Hình ảnh như trong hình ảnh, hoặc hình ảnh như trong một tập tin đại diện cho DVD?
Daniel Beck

Hình ảnh chiều cao, như được tạo ra bởi kính hiển vi.
Frank

1
Vì vậy, đó là một số tập tin rất lớn? Bạn có thể cung cấp cho chúng tôi thêm thông tin về số lượng tệp, kích thước tệp riêng lẻ và số lượng thay đổi giữa các lần chuyển không? Có phải tất cả trong số họ, một số trong số họ, vv?
Daniel Beck


Âm thanh như một công việc cho Sneakernet hoặc IPoAC .
Naftuli Kay

Câu trả lời:


20

Tôi đề nghị bạn sử dụng rsync . Rsync hỗ trợ thuật toán chuyển delta, vì vậy nếu các tệp của bạn chỉ bị thay đổi một phần hoặc nếu lần chuyển trước đó bị chấm dứt một cách bất thường, thì Rupync đủ thông minh để chỉ đồng bộ hóa những gì mới / đã thay đổi.

Có một số cổng của Rsync gốc cho Windows và các hệ thống không tương thích khác, cả miễn phí và không miễn phí. Vui lòng xem bài viết của Wikipedia Sync để biết chi tiết.

Rsync trên SSH được sử dụng rất rộng rãi và hoạt động tốt. 10GB là lượng dữ liệu tương đối nhỏ hiện nay và bạn không chỉ định "thỉnh thoảng" nghĩa là gì. Hàng tuần? Hằng ngày? Hàng giờ? Với tốc độ truyền 500KB / giây, sẽ mất khoảng 6 giờ, không thực sự lâu. Nếu bạn cần chuyển dữ liệu thường xuyên, có lẽ tốt hơn là tạo một tác vụ cron để bắt đầu rsync tự động.


Không rsyncyêu cầu giao thức riêng cho deltas, yêu cầu hệ thống đối tác có khả năng ở đầu bên kia?
Daniel Beck

@DanielBeck: Không có gì trong các tài liệu nói rằng rsync trên SSH không thể sử dụng deltacopy ... Về cơ bản, ứng dụng khách rsync thực thi một bản sao rsync khác trên máy chủ thông qua ssh, vì vậy tôi không hiểu tại sao nó không hoạt động.
haimg

+1 Bạn có một điểm ở đó. Điều đó khiến cho yêu cầu Linux trên máy chủ mặc dù?
Daniel Beck

Liệu rsync's làm việc delta-thuật toán khi chuyển dữ liệu nén nhị phân ( .ziphoặc .jpg)?
Aditya

@DanielBeck: Tôi đã thêm một liên kết đến bài viết Wikipedia với một số cổng rsync của Windows. Rõ ràng ít nhất một số trong số họ làm việc như một máy chủ, bao gồm cả ssh. Tôi chưa bao giờ sử dụng bất kỳ trong số họ mặc dù.
haimg

12

Kết nối qua internet có thể là một lựa chọn khả thi và một chương trình như bittorrent hoàn toàn phù hợp với mục đích này vì nó sẽ chia các tệp thành các phần logic được gửi qua internet để được xây dựng lại ở đầu kia.

Bittorrent cũng cung cấp cho bạn sửa lỗi tự động, sửa chữa các phần bị hỏng và nếu nhiều người cần các tệp hơn thì họ sẽ nhận được lợi ích khi có thể được cung cấp tệp từ nhiều nguồn như đã có (một phần) tệp được tải xuống.

Cấp cho mọi người xem nó là một cách tốt đẹp để tải phim và như vậy, nhưng nó có nhiều sử dụng hợp pháp hơn.

Rất nhiều ứng dụng khách bittorrent cũng được tích hợp trình theo dõi để bạn không cần phải có máy chủ chuyên dụng để lưu trữ các tệp.


2
Cảm ơn các đầu vào. Việc sử dụng BitTorrent trong các mạng học thuật có thể khiến quản trị viên của họ lo lắng. Ngoài ra, việc thiết lập và bảo trì máy chủ theo dõi có thể không dễ dàng đối với người dùng máy tính trung bình.
Frank

2
Đó là một điểm tốt, bittorrent bị cấm tích cực trong nhiều mạng lưới công ty và học tập. Với quản trị phù hợp mặc dù bạn có thể thiết lập một danh sách trắng trong các mạng của người dùng hoặc máy được phép sử dụng bittorrent, mặc dù điều này có nghĩa là mối quan hệ rất chặt chẽ với các bộ phận CNTT tương ứng để hoạt động chính xác. Như tôi đã đề cập, bạn không nhất thiết phải có một máy chủ chuyên dụng vì nó có thể được tích hợp vào nhiều chương trình máy khách. Nếu nó không phù hợp với hoàn cảnh của bạn mặc dù sau đó không phải lo lắng, thì dường như tôi thấy hợp lý khi xem xét yêu cầu của bạn.
Mokubai

Nếu bạn đang sử dụng bitorrent, cũng sử dụng âm thanh webseed như một ý tưởng thông minh
Journeyman Geek

(Như một ví dụ về một trong những 'sử dụng hợp pháp nhiều hơn' được đề cập trong câu trả lời, Facebook sử dụng bittorrent để triển khai trang web của họ, 1GB nhị phân, đến hàng ngàn máy chủ sản xuất. Làm thế nào không may là một công nghệ được loại bỏ hầu hết là vì một trong những cách sử dụng.)
Anton Strogonoff

6

Chia tệp thành nhiều phần, ví dụ 50MB (sử dụng ví dụ split). Tính toán tổng kiểm tra cho tất cả chúng (ví dụ md5sum). Tải lên trực tiếp bằng FTP và ứng dụng khách FTP chịu lỗi, chẳng hạn như lftptrên Linux. Chuyển tất cả các khối và một tập tin có chứa tất cả các tổng.

Trên trang web từ xa, xác minh rằng tất cả các khối có tổng kiểm tra mong muốn, tải lại những lỗi không thành công và lắp lại chúng vào tệp gốc (ví dụ: sử dụng cat).

Hoàn nguyên vị trí của máy chủ (tôi đã đăng theo giả định rằng trang đích đã cung cấp máy chủ và bạn bắt đầu chuyển cục bộ khi các tệp đã sẵn sàng) khi cần. Máy khách FTP của bạn không nên quan tâm.


Tôi đã có vấn đề tương tự trong quá khứ và sử dụng máy khách FTP chịu lỗi đã hoạt động. Không có bit nào được lật, chỉ cần hủy bỏ kết nối thông thường, vì vậy tôi có thể bỏ qua việc tạo khối và chỉ tải lên tệp. Chúng tôi vẫn cung cấp một tổng kiểm tra cho tập tin hoàn chỉnh, chỉ trong trường hợp.


3
Bạn cần lưu ý mặc dù điều lftpđó không hủy bỏ việc chuyển tiền đang diễn ra vì bất kỳ lý do gì. Đảm bảo rằng bạn luôn có đủ dung lượng đĩa trống trên trang đích.
Daniel Beck

3

Một biến thể của câu trả lời của Daniel Beck là chia các tệp thành các phần theo thứ tự từ 50MB đến 200MB và tạo các tệp chẵn lẻ cho toàn bộ.

Bây giờ bạn có thể chuyển các tệp (bao gồm các tệp chẵn lẻ) bằng FTP, SCP hoặc một cái gì đó khác đến trang web từ xa và kiểm tra sau khi đến toàn bộ. Bây giờ nếu có các phần bị hỏng, chúng có thể được sửa bởi các tệp chẵn lẻ nếu có đủ các khối. Điều này phụ thuộc ít nhiều vào số lượng tệp bị hỏng và số lượng tệp chẵn lẻ bạn đã tạo.

Các tệp chẵn lẻ được sử dụng rất nhiều trên Usenet để gửi các tệp lớn. Hầu hết thời gian họ được chia ra làm tài liệu lưu trữ RAR sau đó. Không có gì lạ khi gửi dữ liệu lên tới 50 đến 60 GB theo cách này.

Bạn chắc chắn nên kiểm tra liên kết đầu tiên và bạn cũng có thể xem QuickPar , một công cụ có thể được sử dụng để tạo các tệp chẵn lẻ, xác minh các tệp đã tải xuống của bạn và thậm chí có thể khôi phục các tệp bị hỏng với các tệp chẵn lẻ được cung cấp.


+1 - Cách tiếp cận này hoạt động tốt trên usenet và các tệp chẵn lẻ có thể sửa chữa một lượng dữ liệu bị thiếu đáng kinh ngạc. Nhược điểm là thời gian xử lý cần thiết để phân tách và tạo các tệp chẵn lẻ và kiểm tra chẵn lẻ và trích xuất các tệp sau khi lấy lại.
deizel

1

Đây có phải là một tệp 10GB lớn không? Nó có thể dễ dàng tách ra?

Tôi đã không chơi với nó nhiều, nhưng nó đánh tôi là một khái niệm thú vị và tương đối đơn giản có thể hoạt động trong tình huống này:

http://sendoid.com/


Sendoid khá tuyệt, nhưng không may tải lên vẫn sẽ gây đau đớn. Sau đó, một lần nữa, vấn đề vẫn tồn tại đối với tất cả các loại tôi tin, trừ khi bạn định gửi một ổ cứng. +1 vì nó dễ sử dụng.
DMan

0

Cung cấp dữ liệu qua ftp / http / https / sftp / ftps (yêu cầu thông tin đăng nhập) và sử dụng bất kỳ trình quản lý tải xuống nào ở phía máy khách.

Trình quản lý tải xuống được thiết kế đặc biệt để truy xuất dữ liệu bất kể lỗi nào có thể xảy ra để chúng phù hợp nhất với nhiệm vụ của bạn.

Đối với máy chủ, máy chủ FTP thường dễ cài đặt nhất. Bạn có thể tham khảo một danh sách tại Wikipedia. HTTPS, SFTP và FTPS cho phép mã hóa (trong FTP / HTTP thuần, mật khẩu được gửi bằng văn bản rõ ràng) nhưng SFTP / FTPS ít được hỗ trợ bởi phần mềm máy khách và thiết lập máy chủ HTTP / HTTPS rất khó khăn.


1
Vấn đề với việc sử dụng http hoặc ftp là có bất kỳ lỗi truyền nào, bạn phải gửi lại toàn bộ. rsync, bittorrent và các giao thức khác có thể xác minh rằng các tệp khớp với nhau và chỉ truyền lại các phần bị hỏng. Dữ liệu chẵn lẻ, như QuickPar tạo ra, cũng có thể giúp đỡ.
afrazier

Cả FTP và HTTP đều có khả năng nối lại chuyển như một phần mở rộng tùy chọn được hỗ trợ bởi phần lớn các máy chủ và hầu như tất cả các trình quản lý tải xuống.
ivan_pozdeev

Họ có thể tiếp tục và về mặt lý thuyết TCP đảm bảo rằng dữ liệu đến theo thứ tự và với tổng kiểm tra hợp lệ. Tuy nhiên, bất cứ ai có chuyển HTTP hoặc FTP lớn bị hỏng đều học được giá trị của các giao thức mạnh hơn hoặc một loại ECC nào đó.
afrazier
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.