Điểm:0

Làm cách nào để tải xuống hàng triệu tệp s3 và nén chúng nhanh chóng?

lá cờ eg

Tôi có một bộ chứa S3 với hàng triệu tệp và tôi muốn tải xuống tất cả chúng. Vì tôi không có đủ dung lượng lưu trữ nên tôi muốn tải chúng xuống, nén chúng nhanh chóng và chỉ sau đó lưu chúng. Làm thế nào để tôi làm điều này?

Để minh họa những gì tôi muốn nói: aws s3 cp --recursive s3://bucket | gzip > tập tin

Hennes avatar
lá cờ za
Thay vì> tệp, bạn có thể sử dụng netcat (đường ống mặc dù nc).
Tim avatar
lá cờ gp
Tim
Một vài ý tưởng 1) Gắn S3 dưới dạng ổ đĩa (google nó) và nén nó từ đó 2) Nhận phiên bản tại chỗ, tải xuống và nén. Đảm bảo rằng bạn đang sử dụng điểm cuối cổng S3 trong VPC của mình để giảm chi phí.
lá cờ cn
Bạn cũng có thể viết lambda lấy đường dẫn từ S3 và gzip nội dung sau đó trả về tệp được nén. Sau đó, bạn có thể sử dụng `aws` CLI để liệt kê các tệp và gửi yêu cầu tới lambda.
John Rotenstein avatar
lá cờ in
"Tải" về đâu? Đối với phiên bản Amazon EC2 hoặc máy tính của riêng bạn?
Điểm:0
lá cờ af

Không rõ liệu bạn muốn giữ các đối tượng không nén trong S3 hay nội dung của bộ chứa vẫn đang thay đổi.

Một tùy chọn bạn có là sử dụng khoảng không quảng cáo S3. Nó không phải là ngay lập tức, nhưng nó sẽ tự động tạo danh sách các đối tượng trong bộ chứa và ghi danh sách đó vào bộ chứa S3 (cùng một bộ chứa hoặc bộ chứa khác). Bạn có thể đọc danh sách này thành một tập lệnh nhỏ (bất cứ thứ gì bạn cảm thấy thoải mái) và để nó hoạt động với một đối tượng tại một thời điểm. Sử dụng S3 CLI để kéo đối tượng xuống, sau đó nén nó bằng các công cụ OS/script.

Tôi thực sự khuyên bạn nên xây dựng thứ gì đó kiểm tra xem đối tượng nén đã tồn tại chưa để bạn có thể khởi động lại quy trình nếu nó không thành công hoặc đối tượng mới được thêm vào mà không phải xử lý lại mọi thứ.

Nếu bạn đang ghi đối tượng nén trở lại S3, hãy cân nhắc sử dụng phiên bản EC2 hoặc Lambda. Với Lambda, bạn có thể cần sử dụng một luồng tệp để nén tệp một cách nhanh chóng thay vì kéo tệp xuống. Bạn sẽ có thể tìm thấy các ví dụ về điều này cho ít nhất là Python, nếu không phải là các ngôn ngữ được hỗ trợ khác.

-- Một lời cảnh báo, hãy tính toán sơ bộ về chi phí này. Nhận yêu cầu khá rẻ, nhưng truyền dữ liệu ngoài có thể tốn kém. Ngoài ra, nếu bạn đang sử dụng bất kỳ loại lưu trữ nào ngoài Tiêu chuẩn, thì có thể sẽ có chi phí truy xuất đi kèm với nó.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.