Eduard Shishkin
Trong số những đổi mới được phát triển gần đây, việc cung cấp
cơ hội cho người dùng thêm một tính năng nhỏ hiệu suất cao
chặn thiết bị (ví dụ NVRAM) được gọi
khối lượng logic tương đối lớn bao gồm chậm
động lực ngân sách. Điều này sẽ tạo ấn tượng rằng tất cả
khối lượng bao gồm cùng hiệu suất cao đắt tiền
các thiết bị, giống như một "đĩa proxy".
Phương pháp được triển khai dựa trên quan sát đơn giản rằng trong thực tế, đĩa không được ghi liên tục và đường cong tải I/O có dạng đỉnh. Trong khoảng thời gian giữa các “đỉnh” như vậy, luôn có thể đặt lại dữ liệu từ đĩa proxy, ghi lại tất cả dữ liệu (hoặc chỉ một phần) ở chế độ nền vào bộ lưu trữ chính, “chậm”. Do đó, đĩa proxy luôn sẵn sàng nhận phần dữ liệu mới.
Kỹ thuật này (được gọi là Bộ đệm Burst) ban đầu có nguồn gốc từ
lĩnh vực tính toán hiệu năng cao (HPC). Nhưng hóa ra nó cũng có nhu cầu về các ứng dụng thông thường, đặc biệt đối với những ứng dụng đặt ra yêu cầu ngày càng cao về tính toàn vẹn dữ liệu (thường là các loại cơ sở dữ liệu khác nhau). Các ứng dụng như vậy thực hiện bất kỳ thay đổi nào trong bất kỳ tệp nào theo cách nguyên tử, cụ thể là:
Giải phóng các khối bị chiếm giữ bởi dữ liệu cũ.
Tất cả các bước này, ở mức độ này hay mức độ khác, gây ra
suy giảm hiệu suất trên bất kỳ hệ thống tập tin nào. Tình huống
cải thiện nếu tệp mới được ghi lần đầu vào tệp được phân bổ
thiết bị hiệu suất cao, đó chính xác là những gì xảy ra trong
hệ thống tập tin có hỗ trợ Burst Buffers.
Trong Reiser5, nó được lên kế hoạch gửi tùy chọn không chỉ
các khối logic mới của tệp cũng như tất cả các trang bẩn nói chung. Hơn thế nữa,
không chỉ các trang có dữ liệu mà còn có siêu dữ liệu
được viết ở bước (2) và (3).
Hỗ trợ cho các đĩa proxy được thực hiện trong bối cảnh làm việc thường xuyên với
Khối lượng logic Reiser5,
hệ thống tổng hợp "đĩa proxy - bộ lưu trữ chính" là bình thường
khối lượng hợp lý với sự khác biệt duy nhất là đĩa proxy có mức độ ưu tiên
trong số các thành phần ổ đĩa khác trong chính sách phân bổ địa chỉ đĩa.
Việc thêm đĩa proxy vào ổ đĩa logic không đi kèm với bất kỳ
tái cân bằng dữ liệu và việc loại bỏ nó diễn ra theo cách giống hệt như
loại bỏ một đĩa thông thường. Tất cả các hoạt động của đĩa proxy là nguyên tử.
Việc xử lý lỗi và triển khai hệ thống (kể cả sau khi hệ thống gặp sự cố) xảy ra theo cách giống hệt như khi đĩa proxy là một thành phần thông thường
khối lượng logic.
Sau khi thêm đĩa proxy, tổng dung lượng của ổ đĩa logic
tăng theo dung lượng của đĩa này. Giám sát không gian miễn phí
đĩa proxy được thực hiện theo cách tương tự như đối với các thành phần ổ đĩa khác, tức là. sử dụng tiện ích Volume.reiser4(8).
Đĩa proxy phải được làm sạch định kỳ, tức là. đặt lại dữ liệu từ
nó vào bộ lưu trữ chính. Sau khi đạt được độ ổn định beta Reiser5
việc dọn dẹp được lên kế hoạch tự động (nó sẽ được quản lý bởi
luồng hạt nhân đặc biệt). Ở giai đoạn này, trách nhiệm dọn dẹp
thuộc về người dùng. Đặt lại dữ liệu từ đĩa proxy về đĩa chính
lưu trữ được tạo ra bằng cách gọi tiện ích Volume.reiser4 với tùy chọn
"-b". Là một đối số, bạn cần chỉ định điểm gắn kết của logic
tập Tất nhiên, bạn phải nhớ tiến hành vệ sinh định kỳ. Vì
Bạn có thể viết một tập lệnh shell đơn giản để thực hiện việc này.
Nếu không còn chỗ trống trên đĩa proxy, tất cả dữ liệu
được tự động ghi vào bộ lưu trữ chính. Đồng thời, theo mặc định
hiệu suất tổng thể của FS bị giảm (do các cuộc gọi liên tục
thủ tục thực hiện tất cả các giao dịch hiện có). Tùy chọn bạn có thể thiết lập
chế độ mà không làm giảm hiệu suất. Tuy nhiên, trong trường hợp này đĩa
Không gian thiết bị proxy sẽ được sử dụng kém hiệu quả hơn.
Thật thuận tiện khi sử dụng tiểu mục siêu dữ liệu (cục gạch) làm đĩa proxy, miễn là nó được tạo trên một thiết bị khối hiệu suất đủ cao.
Nguồn: opennet.ru