Hdfs Là Gì

Trước khi đối chiếu khác nhau về HDFS cùng HDFS2. Chúng ta đi tìm kiếm đọc về HDFS là cái gì, bản vẽ xây dựng ráng nào? Vì sao điều này lại đặc biệt quan trọng. Bởi do đây là điều cơ phiên bản nên biết lúc chúng ta ước ao đọc sâu MapReduce trong Hadoop.Chúng ta thuộc trả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ì làm sao Ra đời HDFS

lúc kích cỡ của tập tài liệu thừa quá kỹ năng lưu trữ của một máy tính xách tay, tất yếu sẽ dẫn đến yêu cầu phân chia dữ liệu lên ở trên những máy tính xách tay. Các hệ thống tập tin thống trị việc tàng trữ tài liệu trên một mạng nhiều máy vi tính call là khối hệ thống tập tin phân tán. HDFS thành lập và hoạt động bên trên yêu cầu lưu trữ giữ lại liệu của Nutch, một dự án Search Engine nguồn msinh hoạt, với trở nên tân tiến nhằm đáp ứng các yên cầu về tàng trữ cùng cách xử trí của các khối hệ thống giải pháp xử lý tài liệu Khủng cùng với những đặc thù riêng rẽ. Do đó, các công ty trở nên tân tiến HDFS sẽ chăm chú lại những bản vẽ xây dựng phân tán trước đây với phân biệt các sự khác biệt vào kim chỉ nam của HDFS so với những hệ thống tệp tin phân tán truyền thống.án.

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

Điểm lưu ý của HDFS

HDFS vẫn chạy xe trên các cluster có hàng trăm ngàn thậm chí còn hàng ngàn node. Các Hartware này được xây hình thành trường đoản cú các Hartware thường thì, giá rẻ, phần trăm lỗi cao. Do unique phần cứng như thế đang dẫn mang lại phần trăm lỗi cao hơn cluster. Vì cố gắng kỹ năng phát hiện tại lỗi, kháng Chịu lỗi, tự phục sinh phải được tích thích hợp vào vào khối hệ thống HDFS.Kích thước file đã lớn hơn những đối với chuẩn chỉnh truyền thống cuội nguồn, những file có size sản phẩm GB đang trsinh hoạt nên phổ cập. khi thao tác làm việc với dữ liệu tất cả size những TB, thì ít lúc nào fan ta lại chọn câu hỏi làm chủ mặt hàng tỷ file bao gồm kích thước KB. Việc phân tách dữ liệu thành một ít file có size to vẫn về tối ưu rộng, vị câu hỏi này góp sút thời gian tầm nã xuất dữ liệu và dễ dàng hóa Việc quản lý tập tin.HDFS không hẳn là 1 trong những hệ thống file dành cho các mục tiêu tầm thường. HDFS có phong cách thiết kế giành riêng cho những áp dụng dạng cách xử lý kân hận (batch processing). Do kia, các tệp tin trên HDFS một lúc được tạo thành, ghi tài liệu cùng đóng lại thì thiết 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 an toàn tính đồng điệu của dữ liệu với chất nhận được truy vấn dữ liệu cùng với thông lượng cao.

Kiến trúc HDFS

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

File System Namespace: là hình hình ảnh cây thỏng mục của khối hệ thống file tại một thời điểm như thế nào đó. File System Namespace diễn tả vớ những các file, thư mục gồm bên trên hệ hống file cùng quan hệ thân bọn chúng. tin tức nhằm ánh xạ từ tên tệp tin ra thành list những block: cùng với mỗi tệp tin, ta có một list tất cả thứ từ bỏ những bloông xã của tệp tin đó, mỗi Blochồng đại diện bởi Blochồng ID. Nơi lưu trữ những block: các blochồng được đại diện một Bloông chồng ID. Với mỗi blochồng ta bao gồm một list các DataNode lưu trữ các phiên bản sao của blochồng đó.

Các DataNode đang Chịu đựng trách nhiệm tàng trữ các bloông chồng thật sự của từng tệp tin của hệ thống file phân tán lên khối hệ thống file tổng thể của chính nó. Mỗi một blochồng sẽ được lưu trữ như là 1 trong những file lẻ tẻ bên trên khối hệ thống file toàn bộ của DataNode.

Sơ đồ vật phong cách thiết kế HDFS

*

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

Xem thêm: Thủ Tục Sang Tên Xe Máy Cùng Tỉnh, Khác Tỉnh, Thủ Tục Sang Tên Xe Máy Cùng Tỉnh

Đọc tệp tin trên HDFS

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

Ghi tệp tin bên trên HDFS

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

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

Thiết kế nơi bắt đầu của HDFS

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

HDFS2

Bài toán sẽ không ngừng mở rộng ra với n NameNodes cùng n DataNodesTtuyệt thay đổi lớn số 1 là HDFS federationLợi ích :