2010-10-11 5 views
10

Tôi đã thấy những lời khuyên để 'ấm lên' EC2 để vượt qua một ghi đầu tiên phạt: -Làm cách nào để 'làm ấm' bộ nhớ EC2/EBS?

Ấm lên phân vùng dữ liệu - Có một Hạn chế việc sử dụng đĩa IO trong EC2: một “đầu tiên viết” hiệu suất nhấn khi ban đầu ghi vào phân vùng mới. Để tránh hình phạt này, bạn có thể “làm ấm lên” phân vùng bằng cách thực hiện một loại lệnh ném đi truy cập lệnh đó. Ví dụ, bạn có thể sử dụng lệnh Linux dd để ghi vào đĩa. Trong khi hình phạt vẫn xảy ra và không thể được tránh, ít nhất chữ viết đầu tiên là cơ sở dữ liệu của bạn sẽ không bị ảnh hưởng .

Nguồn: http://answers.oreilly.com/topic/1345-getting-the-most-out-of-mysql-in-the-amazon-cloud/

... nhưng tôi đã không tìm thấy bất kỳ tư vấn thêm về thực hành tốt nhất! Điều này có đúng với lưu trữ EBS không? Bất cứ ai có thể giới thiệu cú pháp 'dd' sẽ thực hiện sự hâm nóng này và làm thế nào để đảm bảo rằng tất cả các khối được 'làm ấm'?

+0

Bạn đã đặt câu hỏi này trên [diễn đàn AWS] (http://aws.amazon.com/forums)? Tôi chắc rằng các đội EC2/EBS có khả năng sẽ giúp bạn ở ngoài đó. –

Trả lời

14

Cảm ơn con trỏ tới diễn đàn AWS. Tôi đã đăng câu hỏi ở đó sau khi đăng ở đây và nhận được phản hồi từ Jason @ AWS. Các chủ đề đang ở đây: -

http://developer.amazonwebservices.com/connect/message.jspa?messageID=198413#198413

... và câu trả lời của ông là: -

Có một hình phạt đọc thứ nhất cho lượng EBS tạo từ ảnh chụp nhanh, như khối lượng là được cung cấp trước tất cả các khối đã được tải thành công . Bạn có thể phủ nhận phạt này bằng cách buộc tất cả các khối trên khối lượng để được đọc:

$ dd if=/dev/<device> of=/dev/null

+1

Điều đó chỉ áp dụng cho các tập được tạo từ ảnh chụp nhanh. Tôi nghi ngờ khối lượng có thể được tạo ra dưới dạng tệp thưa thớt có nghĩa là bạn sẽ muốn buộc phân bổ bằng cách viết một số dữ liệu ngẫu nhiên (hoặc có thể là số không). – Matt

+0

dd nếu =/dev/zero =/dev/ BS = 1M (đối với khối lượng không chụp) – Matt

+0

Trong trường hợp ổ đĩa chụp nhanh Windows hoạt động như ổ đĩa khởi động, hãy dd lỗi ngay lập tức với "Lỗi mở tệp đầu vào: 32 Quy trình không thể truy cập tệp vì tệp đang được sử dụng bởi một quy trình khác "Bất kỳ cách giải quyết nào? –

3

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-prewarm.html chỉ ra rằng khối lượng ảnh chụp có thể được prewarmed bằng cách đọc toàn bộ đĩa; điều này tăng tốc độ đọc. Ảnh chụp nhanh và không chụp nhanh có thể tạo trước bằng cách ghi toàn bộ đĩa.

Khi bạn tạo một khối lượng EBS mới hoặc khôi phục âm lượng từ ảnh chụp nhanh, các khối lưu trữ back-end được cấp cho bạn ngay lập tức. Tuy nhiên, lần đầu tiên bạn truy cập vào một khối lưu trữ, nó phải được xóa sạch (đối với các ổ đĩa mới) hoặc được hiển thị từ ảnh chụp nhanh của nó (đối với các khối được khôi phục) trước khi bạn có thể truy cập khối. Hành động sơ bộ này cần có thời gian và có thể gây ra mất từ ​​5 đến 50 phần trăm IOPS cho khối lượng của bạn trong lần đầu tiên mỗi khối được truy cập.

+0

Câu trả lời này đã bị gắn cờ là chất lượng thấp. Có thể bạn có thể đặt một số trích dẫn từ liên kết đó vào câu trả lời của bạn để cải thiện nó? –