Mục lục:
Video: Phim Hàn Quốc Hợp Đồng Nô Lệ 2025
Trong một cụm Hadoop, mỗi nút dữ liệu (còn gọi là nút slave node ) chạy một quá trình nền có tên DataNode. Quá trình nền (còn được gọi là daemon ) theo dõi các lát dữ liệu mà hệ thống lưu trữ trên máy tính. Nó thường xuyên nói chuyện với máy chủ chính cho HDFS (gọi là NameNode) để báo cáo tình trạng sức khỏe và trạng thái của dữ liệu được lưu trữ cục bộ.
Khối dữ liệu được lưu trữ dưới dạng tệp thô trong hệ thống tệp cục bộ. Từ quan điểm của người dùng Hadoop, bạn không có ý tưởng nào trong số các nút nô lệ có các phần của tệp bạn cần để xử lý. Từ bên trong Hadoop, bạn không thấy khối dữ liệu hoặc cách chúng được phân phối trên toàn bộ cụm sao - tất cả những gì bạn thấy là danh sách các tệp trong HDFS.
Sự phức tạp của cách các khối tin được phân phối trong toàn cụm được ẩn đi từ bạn - bạn không biết nó phức tạp đến mức nào, và bạn không cần đến biết. Trên thực tế, các nút nô lệ bản thân họ thậm chí không biết những gì bên trong các khối dữ liệu mà họ đang lưu trữ. Đó là máy chủ NameNode biết các ánh xạ của các khối dữ liệu tạo các tệp được lưu trữ trong HDFS.
Sống tốt hơn thông qua dự phòng
Một nguyên tắc thiết kế cốt lõi của HDFS là khái niệm giảm thiểu chi phí của các nút nô lệ cá nhân bằng cách sử dụng các thành phần phần cứng hàng hóa. Đối với các hệ thống có khả năng mở rộng ồ ạt, ý tưởng này là một điều hợp lý bởi vì chi phí leo thang nhanh chóng khi bạn cần hàng trăm hoặc hàng nghìn nút nô lệ. Sử dụng phần cứng chi phí thấp có một hệ quả là các thành phần cá nhân không đáng tin cậy như phần cứng đắt hơn.
Khi bạn lựa chọn các tùy chọn lưu trữ, hãy xem xét tác động của việc sử dụng các ổ đĩa hàng hóa hơn là các ổ đĩa chất lượng doanh nghiệp đắt tiền hơn. Hãy tưởng tượng rằng bạn có một cụm 750 nút, trong đó mỗi nút có 12 ổ đĩa cứng dành riêng cho lưu trữ HDFS.
Dựa trên tỉ lệ thất bại hàng năm (AFR) là 4% đối với các ổ đĩa hàng hóa (một ổ đĩa cứng có khả năng bị hỏng trong một năm nhất định, 4%), cụm của bạn sẽ gặp phải một ổ đĩa cứng thất bại mỗi ngày trong năm.
Bởi vì có thể có nhiều nút nô lệ, sự thất bại của chúng cũng là một sự xuất hiện phổ biến trong các cụm lớn hơn với hàng trăm hoặc nhiều nút. Với những thông tin này, HDFS đã được thiết kế dựa trên giả định rằng tất cả các thành phần phần cứng, thậm chí ở cấp nút nô lệ, không đáng tin cậy.
HDFS vượt qua sự không tin cậy của các thành phần phần cứng riêng lẻ bằng cách dự phòng: Đó là ý tưởng đằng sau ba bản sao của mỗi tệp được lưu trữ trong HDFS, phân phối trên toàn bộ hệ thống.Cụ thể hơn, mỗi khối tệp được lưu trữ trong HDFS có tổng cộng ba bản sao. Nếu một hệ thống phá vỡ với một khối tập tin cụ thể mà bạn cần, bạn có thể chuyển sang hai hệ thống khác.
Phác thảo các thiết kế máy chủ nô lệ
Để cân bằng các yếu tố quan trọng như tổng chi phí sở hữu, dung lượng lưu trữ và hiệu suất, bạn cần phải cẩn thận thiết kế các nút nô lệ của mình.
Bạn thường thấy các nút nô lệ bây giờ mà mỗi nút thường có từ 12 đến 16 ổ gắn trong 3TB cục bộ. Các nút nô lệ sử dụng CPU kép tốc độ vừa phải với sáu đến tám lõi mỗi lõi - không có tốc độ quỷ, nói cách khác. Điều này đi kèm với 48GB RAM. Trong ngắn hạn, máy chủ này được tối ưu hóa cho lưu trữ dày đặc.
Bởi vì HDFS là một hệ thống tệp cấp người dùng, điều quan trọng là tối ưu hóa hệ thống tệp tin cục bộ trên các nút nô lệ để làm việc với HDFS. Về vấn đề này, một quyết định tác động cao khi thiết lập các máy chủ của bạn là chọn một hệ thống tập tin cho việc cài đặt Linux trên các nút nô lệ.
Ext3 là hệ thống tập tin được triển khai nhiều nhất bởi vì nó đã được lựa chọn ổn định nhất trong một số năm. Hãy xem xét Ext4, tuy nhiên. Đây là phiên bản tiếp theo của Ext3, và nó đã có sẵn đủ lâu để được coi là ổn định và đáng tin cậy.
Quan trọng hơn cho mục đích của chúng tôi, nó có một số tối ưu hóa để xử lý các tệp lớn, làm cho nó trở thành sự lựa chọn lý tưởng cho các máy chủ nô lệ HDFS.
Không sử dụng Linux Logical Volume Manager (LVM) - nó đại diện cho một lớp bổ sung giữa hệ thống tập tin Linux và HDFS, ngăn cản Hadoop tối ưu hoá hiệu suất của nó. Cụ thể, LVM aggregates disks, gây cản trở việc quản lý tài nguyên mà HDFS và YARN thực hiện, dựa trên cách các tệp được phân phối trên các ổ đĩa vật lý.