Video: GCP-How to Install Cloudera Manager on Google Cloud Cluster 2025
Khi bạn lưu trữ một tệp trong HDFS, hệ thống sẽ chia nhỏ nó thành một tập hợp các khối riêng biệt và chứa các khối này trong các nút nô lệ khác trong cụm Hadoop. Đây là một điều hoàn toàn bình thường để làm, vì tất cả các hệ thống tập tin chia các tệp xuống thành các khối trước khi lưu trữ chúng vào đĩa.
HDFS không có ý tưởng (và không quan tâm) những gì được lưu trữ bên trong tệp tin, do đó tệp thô không được chia tách theo quy tắc mà con người chúng ta sẽ hiểu. Con người, ví dụ, sẽ muốn biên giới kỷ lục - các dòng hiển thị nơi mà một bản ghi bắt đầu và kết thúc - được tôn trọng.
HDFS thường không hay biết rằng bản ghi cuối cùng trong một khối có thể chỉ là một phần hồ sơ, với phần còn lại của nội dung đã được tách ra khỏi khối sau. HDFS chỉ muốn đảm bảo rằng các tệp được chia thành các khối có kích thước đều phù hợp với kích thước khối được xác định trước cho trường hợp Hadoop (trừ khi đã nhập giá trị tùy chỉnh cho tệp đang được lưu trữ). Trong hình trên, kích thước khối đó là 128MB.
Khái niệm lưu trữ một tập tin như một tập hợp các khối là hoàn toàn phù hợp với cách thức các hệ thống tập tin bình thường làm việc. Nhưng những gì khác nhau về HDFS là quy mô. Kích thước khối điển hình mà bạn thấy trong một hệ thống tập tin trong Linux là 4KB, trong khi kích thước khối điển hình trong Hadoop là 128MB. Giá trị này có thể được cấu hình, và nó có thể được tùy chỉnh, như cả một mặc định hệ thống mới và một giá trị tùy chỉnh cho các tập tin cá nhân.
Trước hết, mọi khối dữ liệu được lưu trữ trong HDFS đều có siêu dữ liệu riêng và cần được theo dõi bởi một máy chủ trung tâm để các ứng dụng cần truy cập vào một tệp tin cụ thể có thể được chuyển tới bất cứ nơi nào lưu trữ tất cả các khối của tệp tin. Nếu kích thước khối nằm trong phạm vi kilobyte, thậm chí khối lượng dữ liệu khiêm tốn ở quy mô terabyte sẽ áp đảo máy chủ siêu dữ liệu có quá nhiều khối để theo dõi.
Thứ hai, HDFS được thiết kế để cho phép có dung lượng cao để quá trình xử lý song song của các bộ dữ liệu lớn xảy ra càng nhanh càng tốt. Chìa khóa cho khả năng mở rộng của Hadoop ở phía xử lý dữ liệu là và luôn luôn là
song song - khả năng xử lý các khối riêng lẻ của các tệp lớn song song. Để cho phép chế biến hiệu quả, sự cân bằng cần được thực hiện. Một mặt, kích thước khối cần phải đủ lớn để đảm bảo các nguồn lực dành riêng cho một đơn vị xử lý dữ liệu (ví dụ như bản đồ hoặc giảm nhiệm vụ). Mặt khác, kích thước khối không thể quá lớn mà hệ thống đang chờ đợi một thời gian rất dài cho một đơn vị xử lý dữ liệu cuối cùng để hoàn thành công việc của nó.
Hai sự cân nhắc này rõ ràng phụ thuộc vào các loại công việc đang được thực hiện trên các khối dữ liệu.