HDFS LÀ GÌ

  -  

Trước Khi so sánh khác biệt về HDFS cùng HDFS2. Chúng ta đi kiếm hiểu về HDFS là vật gì, phong cách thiết kế cụ nào? Vì sao điều này lại đặc biệt quan trọng. Bởi do đây là điều cơ bạn dạng cần biết khi bọn họ ý muốn hiểu sâu MapReduce trong Hadoop.Chúng ta thuộc đi qua một số trong những thắc mắc về HDFS

HDFS là gì?

HDFS viết tắt tự Hadoop Distributed File System.

Lý vày làm sao ra đời HDFS

lúc form size của tập tài liệu thừa quá khả năng lưu trữ của một máy vi tính, thế tất sẽ dẫn mang lại yêu cầu phân loại tài liệu lên trên mặt nhiều máy tính. Các khối hệ thống tập tin làm chủ Việc lưu trữ tài liệu trên một mạng nhiều máy tính xách tay call là hệ thống tập tin phân tán. HDFS ra đời bên trên yêu cầu tàng trữ giữ liệu của Nutch, một dự án Search Engine mối cung cấp msinh sống, và cải cách và phát triển để thỏa mãn nhu cầu những đòi hỏi về tàng trữ với giải pháp xử lý của những khối hệ thống cách xử lý tài liệu béo với các đặc thù riêng biệt. Do kia, các bên cải cách và phát triển HDFS đã để ý lại các kiến trúc phân tán trước đây với nhận thấy các sự khác biệt vào kim chỉ nam của HDFS đối với các khối hệ thống tệp tin phân tán truyền thống.án.

Bạn đang xem: Hdfs là gì

đặc điểm của HDFS

HDFS đang điều khiển xe trên những cluster có hàng ngàn thậm chí hàng vạn node. Các phần cứng này được xây hình thành tự những Hartware thông thường, giá bèo, Xác Suất lỗi cao. Do unique Hartware như thế vẫn dẫn mang đến Tỷ Lệ lỗi nhích cao hơn cluster. Vì vắt kỹ năng phạt hiện nay lỗi, chống chịu đựng lỗi, tự phục hồi buộc phải được tích hòa hợp vào vào khối hệ thống HDFS.Kích thước file sẽ to hơn những so với chuẩn truyền thống lâu đời, những file tất cả size sản phẩm GB đang trnghỉ ngơi đề nghị thịnh hành. Khi thao tác với tài liệu tất cả kích thước các TB, thì không nhiều bao giờ bạn ta lại lựa chọn việc cai quản sản phẩm tỷ tệp tin gồm size KB. Việc chia dữ liệu thành một ít tệp tin bao gồm kích thước bự đang tối ưu rộng, vì chưng bài toán này góp giảm thời hạn truy xuất dữ liệu cùng đơn giản dễ dàng hóa bài toán quản lý tập tin.HDFS không hẳn là một trong hệ thống tệp tin giành cho những mục đích tầm thường. HDFS được thiết kế theo phong cách dành cho các ứng dụng dạng cách xử lý kân hận (batch processing). Do đó, các tệp tin trên HDFS một lúc được tạo nên, ghi tài liệu với đóng lại thì cần yếu bị chỉnh sữa được nữa. Như vậy làm dễ dàng và đơn giản hoá đảm bảo tính đồng bộ của tài liệu và có thể chấp nhận được truy vấn tài liệu với thông lượng cao.

Kiến trúc HDFS

Giống nhỏng các hệ thống file khác, HDFS duy trì một kết cấu cây phân cấp các file, tlỗi mục cơ mà những file vẫn đóng vai trò là những node lá. Trong HDFS, mỗi tệp tin sẽ tiến hành chia nhỏ ra làm cho một giỏi các bloông xã và từng bloông xã này sẽ có một blochồng ID để dấn diện. Các bloông xã của cùng một file (trừ blochồng cuối cùng) sẽ có được thuộc form size với kích thước này được Gọi là block kích thước của file kia. Mỗi block của file sẽ được lưu trữ cho nên các bản sao (replica) không giống nhau vì mục đích an ninh tài liệu.HDFS gồm một kiến trúc master/slave sầu. Trên một cluster chạy HDFS, tất cả hai loại node là Namenode và Datanode. Một cluster gồm tuyệt nhất một Namenode cùng tất cả một tuyệt nhiều Datanode. Namenode đóng vai trò là master, chịu đựng trách nát nhiệm bảo trì lên tiếng về cấu trúc cây phân cung cấp những file, tlỗi mục của khối hệ thống file và những metadata khác của khối hệ thống file. Cụ thể, những Metadata mà lại Namenode lưu trữ gồm có:

File System Namespace: là hình hình họa cây tlỗi mục của hệ thống file tại 1 thời điểm nào kia. File System Namespace bộc lộ vớ những các tệp tin, thỏng mục có trên hệ hống file cùng dục tình thân chúng. Thông tin nhằm ánh xạ từ bỏ tên tệp tin ra thành danh sách những block: cùng với từng file, ta tất cả một list có vật dụng tự các bloông chồng của tệp tin đó, từng Bloông xã đại diện vị Bloông chồng ID. Nơi lưu trữ những block: những bloông chồng được đại diện một Bloông chồng ID. Với mỗi bloông xã ta tất cả một list các DataNode tàng trữ những bạn dạng sao của bloông xã kia.

Các DataNode sẽ chịu trách nhiệm tàng trữ các blochồng thật sự của từng tệp tin của hệ thống file phân tán lên hệ thống tệp tin toàn cục của nó. Mỗi một bloông chồng sẽ tiến hành lưu trữ nlỗi là 1 tệp tin riêng biệt bên trên hệ thống tệp tin cục bộ của DataNode.

Sơ đồ kiến trúc HDFS

*

Namenode sẽ Chịu trách nát nhiệm điều phối hận các thao tác làm việc truy cập (đọc/ghi dữ liệu) của client lên hệ thống HDFS. Và tất yếu, bởi vì các DataNode là địa điểm thật sự tàng trữ những bloông chồng của các tệp tin bên trên HDFS, bắt buộc chúng vẫn là nơi trực tiếp thỏa mãn nhu cầu những thao tác làm việc truy cập này. Chẳng hạn như lúc client của khối hệ thống mong đọc một file trên khối hệ thống HDFS, client này vẫn thực hiện một request (thông qua RPC) cho Namenode để mang những metadata của tệp tin nên hiểu. Từ metadata này nó sẽ biết được list các bloông xã của file với vị trí của những DataNode cất những phiên bản sao của từng blochồng. Client đang truy vấn vào những DataNode nhằm triển khai các request phát âm các bloông xã. Namenode tiến hành trách nhiệm của nó thông sang 1 daetháng tên namenode chạy trên port 8021. Mỗi DataNode VPS đang chạy một daetháng datanode trên port 8022. Định kỳ, từng DataNode vẫn report mang lại NameNode biết về danh sách tất cả những bloông chồng nhưng nó đã tàng trữ, NameNode đã dựa vào đầy đủ công bố này để update lại các metadata trong nó. Cđọng sau các lần cập nhật lại những điều đó, metadata trên NameNode đang có được tình trạng thống tuyệt nhất với tài liệu trên các DataNode. Toàn bộ tinh thần của metadata khi đang ở triệu chứng thống tốt nhất này được gọi là 1 trong checkpoint. Metadata sống tâm trạng checkpoint sẽ tiến hành dùng để làm nhân bản metadata sử dụng cho mục tiêu phục hồi lại NameNode nếu như NameNode bị lỗi.

Xem thêm:

Đọc file trên HDFS

Thứ nhất, client sẽ mnghỉ ngơi file phải gọi bằng cách gửi từng trải hiểu file mang lại NameNode. Sau đó NameNode vẫn thực hiện một vài chất vấn coi file được trải nghiệm hiểu gồm tồn tại ko, hoặc file buộc phải phát âm tất cả đã ở tâm lý “khoẻ mạnh” hay là không. Nếu những vật dụng phần lớn ổn, NameNode đã gửi list những bloông chồng (đại diện thay mặt vì chưng Blochồng ID) của file cùng rất liên hệ các DataNode đựng những bạn dạng sao của bloông xã này. Tiếp theo, client vẫn mnghỉ ngơi các liên kết cho tới DataNode, tiến hành một RPC để kinh nghiệm dìm bloông chồng đề nghị hiểu cùng đóng liên kết cùng với DataNode. Lưu ý là với mỗi blochồng ta rất có thể có không ít DataNode lưu trữ các bạn dạng sao của bloông xã đó. Client đã chỉ gọi phiên bản sao của blochồng tự DataNode “gần” độc nhất. Client sẽ thực hiện vấn đề gọi các blochồng lặp đi lăp lại cho đến khi bloông chồng cuối cùng của file được đọc xong xuôi. Quá trình client phát âm tài liệu trường đoản cú HDFS vẫn transparent với người tiêu dùng hoặc lịch trình áp dụng client, người dùng vẫn sử dụng một tập API của Hadoop nhằm can dự cùng với HDFS, những API này bịt giấu đi quy trình liên lạc với NameNode và liên kết những DataNode để thừa nhận tài liệu.

Xem thêm: Hecarim Mùa 11: Bảng Ngọc, Cách Lên Đồ Hecarim Tank, Cách Chơi, Lên Đồ & Bảng Ngọc Hecarim Rừng

Ghi file trên HDFS

trước hết, client đang gửi kinh nghiệm đến NameNode sản xuất một file entry lên File System Namespace. File new được chế tạo ra sẽ rỗng, tức chưa xuất hiện một bloông chồng nào. Sau đó, NameNode vẫn ra quyết định list những DataNode vẫn chứa các phiên bản sao của file phải gì với gửi lại cho client Client vẫn chia file cần gì ra thành những block, với cùng với mỗi bloông xã client vẫn đóng gói thành một packet. Lưu ý là từng blochồng sẽ được lưu ra thành những phiên bản sao trên những DataNode khác nhau (tuỳ vào chỉ số độ nhân bạn dạng của file).Client gửi packet mang lại DataNode đầu tiên, DataNode đầu tiên sau thời điểm nhận thấy packet sẽ tiến hành lưu lại bạn dạng sao trước tiên của bloông chồng. Tiếp theo DataNode đầu tiên sẽ gửi packet này cho DataNode vật dụng nhì để lưu lại ra bản sao sản phẩm nhì của bloông xã. Tương tự DataNode thứ nhì đã gửi packet mang đến DataNode sản phẩm công nghệ cha. Cđọng như thế, các DataNode cũng lưu các phiên bản sao của một bloông chồng đã xuất hiện một ống dẫn tài liệu data pipe. Sau lúc DataNode ở đầu cuối nhận thành được packet, nó đã gửi lại mang lại DataNode thứ nhị một gói xác nhận rằng đã lưu lại thành công . Và gói đồ vật nhì lại gửi gói xác nhận tình trạng thành công của hai DataNode về DataNode trước tiên.Client vẫn nhận được những báo cáo xác thực tự DataNode thứ nhất mang đến chứng trạng thành công của toàn bộ DataNode bên trên data pipe. Nếu gồm bất kỳ một DataNode làm sao bị lỗi trong quá trình ghi tài liệu, client vẫn thực hiện xác nhận lại các DataNode sẽ lưu thành công bạn dạng sao của block cùng triển khai một hành động đánh dấu bloông chồng lên trên DataNode bị lỗi. Sau khi tất cả những blochồng của file những vẫn đươc ghi lên những DataNode, client đang thực hiên một thông điệp viên mang lại NameNode nhằm mục tiêu cập nhật lại danh sách những bloông xã của file vừa chế tạo. tin tức Mapping từ bỏ Bloông xã ID lịch sự danh sách các DataNode lưu trữ sẽ được NameNode auto update bằng những chu trình các DataNode đang gửi báo cáo mang lại NameNode danh sách những block mà lại nó làm chủ.

Từ HDFS cho tới HDFS2 ( tự Hadoop 1.0 đến Hadoop 2.0) gồm gì khác biệt

Thiết kế cội của HDFS

Gỉai quyết bài xích tân oán cùng với : 1 Name Node cùng n DataNodes

HDFS2

Bài tân oán vẫn mở rộng ra cùng với n NameNodes và n DataNodesThay thay đổi lớn số 1 là HDFS federationLợi ích :