Tôi muốn chắc chắn rằng tôi hiểu chính xác khái niệm này:
Trong Hướng dẫn dứt khoát về Hadoop có nêu: "Mục tiêu trong việc thiết kế một hệ thống tệp luôn là giảm số lượng tìm kiếm so với lượng dữ liệu được truyền." Trong tuyên bố này, tác giả đang đề cập đến "tìm kiếm(". )" của khối logic Hadoop, phải không? ?
Tôi nghĩ rằng cho dù kích thước khối Hadoop lớn đến đâu (64 MB hoặc 128 MB hoặc lớn hơn), số lần tìm kiếm khối vật lý (thường là 4KB hoặc 8KB) bởi hệ thống tệp cơ bản (chẳng hạn như ext3/fat) phải là Các hoạt động được thực hiện là như nhau.
Ví dụ: Để giữ cho các con số đơn giản, giả sử kích thước khối hệ thống tệp cơ bản là 1MB. Chúng tôi muốn đọc một tệp có kích thước 128 MB. Nếu kích thước khối Hadoop là 64MB thì tệp chiếm 2 khối. Đã có 128 tìm kiếm trong khi đọc. Nếu kích thước khối Hadoop được tăng lên 128MB thì số lần tìm kiếm được thực hiện bởi hệ thống tệp vẫn là 128. Trong trường hợp thứ hai, Hadoop sẽ thực hiện 1 lần tìm kiếm thay vì 2.
Sự hiểu biết của tôi có đúng không?
Nếu tôi đúng, những cải thiện hiệu suất đáng kể bằng cách tăng kích thước khối sẽ chỉ được thấy ở những tệp rất lớn, phải không? Tôi nghĩ đối với các tệp có phạm vi kích thước 1~GB, việc giảm số lượng tìm kiếm từ ~20 tìm kiếm (kích thước khối 64 MB) xuống ~10 tìm kiếm (kích thước khối 128 MB) sẽ không tạo ra nhiều khác biệt, phải không?
Bạn đã đúng, việc tăng kích thước khối hệ thống tệp sẽ cải thiện hiệu suất. Linux yêu cầu kích thước khối phải nhỏ hơn hoặc bằng kích thước trang. Kích thước trang x86 được giới hạn ở 4K; do đó, mặc dù hệ thống tệp có thể hỗ trợ kích thước khối lớn hơn, kích thước khối tối đa bạn có thể sử dụng là 4K. Lợi ích hiệu suất của kích thước khối và kích thước trang là rất đáng kể: ít lệnh gọi hệ thống đọc/ghi hơn, giảm độ trễ xoay và tìm kiếm (thậm chí không bắt đầu nghĩ đến SSD), ít chuyển đổi ngữ cảnh hơn, vị trí bộ nhớ đệm được cải thiện, ít lỗi TLB hơn, v.v. Tất cả đều tốt.
Tôi đã lập mô hình phân tích lợi ích của các kích thước khối khác nhau dựa trên kiểu sử dụng đĩa của chúng tôi và trong một số trường hợp đã dự đoán những cải tiến về quy mô trong hệ thống con đĩa. Điều này làm thay đổi nút thắt hiệu suất ở nơi khác.
Bạn nói đúng, hiệu suất có thể được cải thiện đáng kể. Thật không may, một trong những kỹ sư kiểm soát những cải tiến đó tin rằng kích thước trang lớn hơn 4K không có giá trị. Nó chế nhạo những người dùng doanh nghiệp cần hiệu suất cao từ khối lượng công việc hầu như đồng nhất trên máy tính lớn và tập trung vào việc chạy tương tác trên hệ thống máy tính để bàn hoặc máy tính xách tay nơi khối lượng công việc không đồng nhất không quan trọng.
Tôi là một lập trình viên xuất sắc, rất giỏi!