Video: Big Data - Tim Smith 2025
Hệ thống tệp phân phối Hadoop (HDFS) được thiết kế để lưu trữ dữ liệu về phần cứng không đắt và không đáng tin cậy. Không tốn kém có vòng tròn hấp dẫn, nhưng nó làm tăng mối quan tâm về độ tin cậy của toàn bộ hệ thống, đặc biệt là để đảm bảo tính sẵn sàng cao của dữ liệu.
Lập kế hoạch cho thiên tai, bộ não đằng sau HDFS đã quyết định thiết lập hệ thống sao cho nó có thể lưu trữ ba (ba ') ba bản sao của mỗi khối dữ liệu.
HDFS giả định rằng mọi ổ đĩa và mỗi nút nô lệ đều không đáng tin cậy, do đó, rõ ràng, phải cẩn thận khi lựa chọn nơi lưu trữ ba bản sao của các khối dữ liệu.
Hình này cho biết các khối dữ liệu từ tệp tin cũ hơn là sọc trên toàn bộ cụm Hadoop - có nghĩa là chúng được phân bố đều giữa các nút nô lệ để sao chép khối vẫn sẽ có sẵn bất kể đĩa, nút, hoặc thất bại của rack.
Tệp được hiển thị có năm khối dữ liệu, có nhãn a, b, c, d, và e. Nếu bạn quan sát kỹ hơn, bạn có thể thấy cụm đặc biệt này được tạo thành bởi hai kệ với hai nút mỗi lần và ba bản sao của mỗi khối dữ liệu đã được trải ra trên các nút nô lệ khác nhau.
Mỗi thành phần trong cụm Hadoop được coi là điểm thất bại tiềm tàng, vì vậy khi HDFS lưu bản sao của các khối ban đầu qua cụm Hadoop, nó sẽ cố gắng đảm bảo rằng bản sao khối được lưu trữ ở những điểm thất bại khác nhau.
Ví dụ, hãy xem Block A. Vào thời điểm nó cần phải được lưu trữ, Slave Node 3 đã được chọn, và bản sao đầu tiên của khối A đã được lưu trữ ở đó. Đối với nhiều hệ thống giá đỡ, HDFS xác định rằng hai bản sao còn lại của khối A cần được lưu trữ trong một giá khác nhau. Vì vậy, bản sao thứ hai của khối A được lưu trữ trên Slave Node 1.
Bản sao cuối cùng có thể được lưu trữ trên cùng một giá đỡ như bản sao thứ hai, nhưng không phải trên cùng một nút nô lệ, do đó nó được lưu trữ trên Slave Node 2.