Ngày 8 học HDFS là viết tắt của Hadoop Distributed File System

Ngày 8 học HDFS là viết tắt của Hadoop Distributed File System

HDFS là gì?

HDFS là viết tắt của Hadoop Distributed File System và nó là 1 hệ thống lưu trữ chính được dùng bởi Hadoop. Nó cung cấp truy cập hiệu suất cao đến dữ liệu trên các cụm Hadoop. Nó thường ợc triển khai trên các phần cứng chi phí thấp. Các máy chủ chi phí thấp này rất dễ xảy ra lỗi phần cứng. Vì lý do này mà HDFS được xây dựng để có khả năng chịu lỗi cao. Tốc độ truyền dữ liệu giữa các nodes trong HDFS là rất cao, dẫn đến giảm thiểu nguy cơ lỗi.

>> Ngày 7 giới thiệu Big Data – MapReduce là gì?

>> Ngày 6 nền tảng mềm mã nguồn mở Apache Hadoop

>> Ngày 5 - Học về Big Data – NoSQL là gì?

HDFS tạo các mảnh nhỏ hơn của dữ liệu lớn và phân tán nó trên các nodes khác nhau. Nó cũng sao chép mỗi miếng dữ liệu nhỏ hơn nhiều lần trên nhiều nodes khác nhau. Do đó khi bất kỳ node nào có dữ liệu lỗi, hệ thống tự động dùng dữ liệu từ 1 node khác và tiếp tục xử lý. Đây là tính năng quan trọng của HDFS.

Kiến trúc của HDFS

Kiến trúc của HDFS là master / slave. Một HDFS cluster luôn gồm 1 NameNode. NameNode này là 1 master server và nó quản lý hệ thống tập tin cũng như điều chỉnh truy cập đến các tập tin khác nhau. Bổ sung cho NameNode có nhiều DataNodes. Luôn có 1 DataNode cho mỗi máy chủ dữ liệu. Trong HDFS, 1 tập tin lớn được chia thành 1 hoặc nhiều khối và các khối này được lưu trong 1 tập các DataNodes.

Tác vụ chính của NameNode là mở, đóng và đổi tên các tập tin, và thư mục và điều chỉnh truy cập đến hệ thống tập tin, trong khi tác vụ chính của DataNode là đọc và ghi vào hệ thống tập tin. DataNode cũng làm nhiệm vụ tạo, xóa, hoặc nhân rộng dữ liệu dựa trên chỉ dẫn từ NameNode.

Trong thực tế, NameNode và DataNode là phần mềm được thiết kế để chạy trên máy chủ, được viết bằng Java.

Kiến trúc HDF

HDFS_Architecture

Chúng ta đã hiểu hoạt động của HDFS dựa trên sơ đồ. Ứng dụng client hoặc HDFS client kết nối đến NameSpace cũng như DataNode.  Client app truy xuất đến DataNode được quy định bởi NameSpace Node. NameSpace Node cho phép Client app kết nối đến DataNode bằng cách cho phép kết nối đến DataNode trực tiếp. Một tập tin dữ liệu lớn được chia thành nhiều khối dữ liệu (giả sử các đoạn dữ liệu là A, B, C, và D). Client app sau đó sẽ ghi các khối dữ liệu trực tiếp lên DataNode. Client app không ghi trực tiếp lên tất cả các node. Nó chỉ ghi lên bất kỳ 1 trong những node và NameNode sẽ quyết định các DataNode nào khác nó sẽ nhân rộng dữ liệu. Trong ví dụ, Client app ghi trực tiếp lên DataNode 1 và 3. Tuy nhiên, các khối dữ liệu được tự động nhân rộng đến các nodes khác. Tất cả thông tin như trong DataNode mà khối dữ liệu được đặt được ghi trở về NameNode.

Tính sẵn sàng cao khi có thảm họa

Nhiều DataNode chứa cùng các khối dữ liệu trong trường hợp bất kỳ DataNode nào gặp thảm họa, toàn bộ xử lý sẽ vẫn tiếp tục, DataNode khác sẽ thay thế vai trò để xử lý khối dữ liệu cụ thể của node bị lỗi. Hệ thống này cung cấp tính chịu lỗi rất cao để đối phó với thảm họa và cung cấp tính sẵn sàng cao.

Nếu bạn chú ý thì chỉ có 1 NameNode duy nhất trong kiến trúc. Nếu node này gặp lỗi thì toàn bộ ứng dụng Hadoop sẽ ngừng vì node này là nơi lưu tất cả siêu dữ liệu. Node này cực kỳ quan trọng, nó thường được nhân rộng  sang các cụm khác. Mặc dù node được nhân rộng này không hoạt động trong kiến trúc, nó chứa tất cả những dữ liệu cần thiết để thực hiện tác vụ của NameNode trong trường hợp NameNode bị lỗi.

Toàn bộ kiến trúc Hadoop được xây dựng để hoạt động thông suốt ngay cả có lỗi node hoặc sự cố phần cứng. Nó được xây dựng trên khái niệm đơn giản rằng dữ liệu là quá lớn và không thể xử lý trên 1 phần cứng duy nhất. Chúng ta cần nhiều phần cứng (giá rẽ) để quản lý dữ liệu lớn và phần cứng gặp lỗi là việc hoàn toàn dễ xảy ra. Để giảm tác động của lỗi phần cứng, kiến trúc Hadoop được xây dựng để khắc phục những hạn chế của lỗi phần cứng.

Bạn thấy bài viết này như thế nào?: 
Average: 4 (4 votes)
Ảnh của Tommy Tran

Tommy Tran owner Express Magazine

Drupal Developer having 9+ year experience, implementation and having strong knowledge of technical specifications, workflow development. Ability to perform effectively and efficiently in team and individually. Always enthusiastic and interseted to study new technologies

  • Skype ID: tthanhthuy
  • Phone/Zalo: (+84) 944 225 212
  • WhatsApp: (+84) 944 225 212
  • Line Messenger: (+84) 944 225 212
  • Email: [email protected]
  • Telegram Messenger: https:/t.me/tommytran0401

Bình luận (0)

 

Add Comment

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
1 + 10 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.

Tìm kiếm bất động sản

 

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
CMS WordPress

Thủ thuật tối ưu hóa WordPress – nâng cao

Liệu blog của bạn đã đạt tốc độ cao nhất chưa? Tốc độ load trang có nhanh hay không? Tốc độ khi truy cập là một trong những nhân tố chính tạo sự thiện cảm cho khách viếng thăm. Do vậy Misao nghĩ bạn nên dành thời gian để tu bổ/ tối ưu hóa trang web của mình. Trong bài viết này, tôi sẽ liệt kê một vài thủ thuật khác nhau giúp bạn tăng tốc cho blog WordPress của mình.

Apple khởi động năm 2012 với 52% thị phần trình duyệt web di động

Apple khởi động năm 2012 với 52% thị phần trình duyệt web di động

iPhone và iPad của Apple kết thúc năm 2011 với vị trí 1 và 2 trên thị trường trình duyệt web di động.

Tự sửa các lỗi đơn giản trên máy in canon

Tự sửa các lỗi đơn giản trên máy in canon

Trong lúc in, bạn thường gặp một số lỗi đơn giản như tài liệu bị đốm mực, thứ tự trang in bị ngược, lề bản in không đúng với bản trên máy tính... Những thủ thuật sau sẽ giúp bạn vận hành máy in bình thường.

Wordpress Freelancer

 

Wordpress Freelancer