banner-news

Trong bài này

    HDFS là gì? Tổng quan về hệ thống Hadoop Distributed File System

    01/10/2023

    Công nghệ Hadoop là một công nghệ chính phục vụ việc lưu trữ, xử lý dữ liệu Big Data. Hadoop sử dụng HDFS để tạo ra không gian lưu trữ. Vậy HDFS là gì? Kiến trúc và cách hoạt động của chúng ra sao? Bằng cách nào mà HDFS có thể xử lý một lượng lớn dữ liệu trong Big Data một cách nhanh chóng và hiệu quả đến vậy? Hãy cùng tìm hiểu tất cả các khái niệm này thông qua bài viết bên dưới.

    HDFS là gì

    HDFS (Hadoop Distributed File System) là một hệ thống lưu trữ dữ liệu được Hadoop sử dụng. HDFS hoạt động như một hệ thống tệp phân tán được thiết kế để chạy trên các thiết bị phần cứng thông thường. 

    HDFS có khả năng chịu lỗi cao, nhằm giảm rủi ro cho doanh nghiệp. Chúng được thiết kế cho việc triển khai trên phần cứng hàng hóa với chi phí rẻ. Doanh nghiệp có thể truy cập dữ liệu thông lượng cao vào các dữ liệu ứng dụng hoặc truy cập trực tuyến vào các dữ liệu hệ thống tệp của Apache Hadoop.

    HDFS là gì? 

    Ban đầu, HDFS được thiết kế dựa trên hệ thống tập tin của Google, với mục đích chính là trở thành cơ sở hạ tầng cho công cụ tìm kiếm Apache Nutch. Sau đó, HDFS đã trở thành một phần trong hệ sinh thái Hadoop. Ngày nay, cấu trúc của Hadoop được quản lý bởi nền tảng Apache, với cộng đồng các nhà phát triển và cộng tác viên trên toàn cầu.

    Trong thời đại công nghệ, dữ liệu được tạo ra càng ngày càng nhiều, trong đó có các dữ liệu khó lưu trữ, phân tích và xử lý. Tất cả các dữ liệu này được gọi chung với thuật ngữ là Big Data (dữ liệu lớn). HDFS là phần mềm phổ biến nhất để xử lý dữ liệu lớn này, được nhiều công ty lớn như Netflix, British Airways, Expedia,... sử dụng. Có 5 yếu tố chính của các Big Data được HDFS tổ chức là: 

    • Vận tốc: Tốc độ khởi tạo, so sánh và phân tích dữ liệu.
    • Khối lượng: Tổng khối lượng dữ liệu được tạo ra.
    • Đa dạng các loại dữ liệu (có cấu trúc, không có cấu trúc…).
    • Chất lượng cũng như tính chính xác của dữ liệu.
    • Giá trị dữ liệu: Cách doanh nghiệp sử dụng dữ liệu để hiểu hơn về quy trình kinh doanh, đưa ra quyết định chính xác hơn.

    Tại sao nên sử dụng hệ thống HDFS

    Hiện nay, HDFS đang là một trong những giải pháp được nhiều lập trình viên sử dụng nhất, nhờ vào các ưu điểm nổi bật như:

    Ưu điểm của HDFS

    • Khả năng chịu lỗi cao: HDFS được thiết kế nhằm mục đích tự phát hiện lỗi và tự động phục hồi, đảm bảo độ tin cậy và khả năng hoạt động liên tục.
    • Tốc độ nhanh chóng: Nhờ vào kiến trúc cụm, HDFS cung cấp tốc độ lên đến 2GB / giây
    • Hỗ trợ truy cập và truyền nhiều định dạng dữ liệu khác nhau
    • Khả năng tương thích cao, tính năng này đặc biệt quan trọng để xử lý dữ liệu trong Big Data
    • Có khả năng mở rộng theo chiều dọc và chiều ngang
    • Tiết kiệm chi phí: Doanh nghiệp không cần đầu tư quá nhiều ngân sách vào các phần cứng đắt tiền. Với HDFS, các dữ liệu lưu trữ là dữ liệu ảo, giúp giảm đáng kể không gian lưu trữ dữ liệu. Ngoài ra, đây là giải pháp mã nguồn mở nên doanh nghiệp không cần mất chi phí vào giấy phép, bản quyền sử dụng
    • Linh hoạt: Doanh nghiệp có thể lưu trữ bao nhiêu dữ liệu lên HDFS tùy thích, quyết định cách xử lý dữ liệu cũng như cách dùng dữ liệu đó sau này.

    Tính năng của HDFS

    • Cho phép phân tán dữ liệu: Bạn có thể hiểu đơn giản như sau: Khi có một cụm Hadoop bao gồm 20 máy tính, bạn chỉ cần đưa dữ liệu vào HDFS một lần. Lúc này, dữ liệu sẽ được tự động phân tán thành nhiều phần nhỏ và lưu trữ trên 20 máy tính đó.
    • Cho phép tính toán song song: Thay vì sử dụng duy nhất một máy để xử lý, với giải pháp HDFS, doanh nghiệp có thể để nhiều máy cùng xử lý một công việc song song để tăng hiệu suất và tiết kiệm thời gian.
    • Nhân bản các tập tin: Tính năng này giúp tránh rủi ro bị mất dữ liệu khi một máy tính xảy ra sự cố. HDFS hỗ trợ backup lại dữ liệu dễ dàng.
    • Hỗ trợ mở rộng theo chiều dọc: Doanh nghiệp có thể nâng cấp các hệ thống bằng cách nâng cấp cấu hình máy.

    Tính năng của HDFS là gì?

    Kiến trúc của HDFS

    Tiếp theo, hãy cùng tìm hiểu về kiến trúc của HDFS để hiểu rõ hơn về hệ thống này. HDFS hoạt động theo kiến trúc Master & Slave, mỗi một HDFS Cluster đều gồm 1 NameNode. Namenode có nhiệm vụ quản lý hệ thống tập tin và điều chỉnh truy cập vào các tập tin khác.

    Trong HDFS sẽ luôn có một Namenode được cấu hình riêng cho các máy chủ, mỗi Namenode sẽ tạo ra nhiều Datanodes. Các tập tin dữ liệu lớn trong HDFS được chia nhỏ thành nhiều phần khác nhau và lưu trữ trong các Datanodes.

    Datanodes có nhiệm vụ đọc, ghi vào hệ thống tập tin hoặc khởi tạo, nhân bản, xóa các dữ liệu dựa theo hướng dẫn của Namenode. Cả Namenode và Datanode đều là phần mềm được viết bằng Java, và chúng được xây dựng để chạy trên máy chủ.

    Cách hoạt động của HDFS 

    HDFS hoạt động theo 3 giai đoạn:

    Giai đoạn 1:

    Một người dùng hoặc một ứng dụng submit một job lên Hadoop với các yêu cầu cơ bản, cụ thể:

    • Truyền dữ liệu lên máy chủ và bắt đầu phân tán dữ liệu, trả về kết quả.
    • Các dữ liệu sẽ được chạy dựa trên hàm Map và Reduce. Hàm Map sẽ quét tất cả dữ liệu và phân tán chúng thành các dữ liệu nhỏ hơn, hàm Reduce sẽ thu thập các dữ liệu nhỏ này và sắp xếp lại.
    • Các thiết lập sẽ phụ thuộc vào job thông qua những thông số truyền vào.

    Giai đoạn 2:

    Hadoop submit job và lên lịch làm việc, đưa job vào danh sách hàng đợi. Sau khi nhận yêu cầu của JobTracker, các Server Master (Server cha) sẽ chia công việc cho các Server Slave (Server con). Lúc này, Server Slave sẽ thực hiện những job được giao và trả về kết quả cho Server Master.

    Giai đoạn 3

    TaskTrackers thực hiện nhiệm vụ kiểm tra, đảm bảo tất cả các MapReduce hoạt động bình thường và kết quả trả về là đúng.

    Cách hoạt động của HDFS là gì

    Các trường hợp và ví dụ sử dụng HDFS 

    Hệ thống tệp phân tán Hadoop (Hadoop Distributed File System) được dùng trong Yahoo, với vai trò hỗ trợ vị trí đặt quảng cáo online và công cụ tìm kiếm. Giống như những công ty hoạt động trên nền tảng Web khác, Yahoo cung cấp nhiều ứng dụng đa dạng cho người dùng, và càng ngày họ càng tạo ra nhiều dữ liệu.

    Một số công ty khác như eBay, Facebook, LinkedIn và Twitter cũng đã sử dụng HDFS để xử lý, phân tích dữ liệu lớn nhằm giải quyết các yêu cầu tương tự như của Yahoo.

    Ngoài việc đáp ứng các yêu cầu về đặt vị trí quảng cáo và công cụ tìm kiếm, HDFS còn phục vụ nhiều nhu cầu khác. New York Times đã sử dụng nó để hỗ trợ quá trình chuyển đổi hình ảnh quy mô lớn, Media6Degrees sử dụng để xử lý nhật ký và học máy, LiveBet sử dụng để lưu trữ nhật ký và phân tích tỷ lệ cá cược, Joost dùng cho phân tích phiên và Fox Audience Network sử dụng để phân tích nhật ký và khai thác dữ liệu. HDFS cũng là yếu tố cốt lõi của nhiều hồ dữ liệu nguồn mở.

    Các trường hợp sử dụng HDFS 

    Nhìn rộng hơn, các doanh nghiệp trong nhiều lĩnh vực khác nhau sử dụng HDFS để quản lý các nhóm dữ liệu lớn, bao gồm:

    • Doanh nghiệp điện lực: Ngành điện triển khai các đơn vị đo pha (PMU) trên toàn bộ mạng truyền tải của họ để theo dõi tình trạng của lưới điện thông minh. Trong đó, các cảm biến đo dòng điện và điện áp theo biên độ và pha tại các trạm truyền tải đã chọn. Các doanh nghiệp phân tích dữ liệu PMU này để phát hiện các lỗi và điều chỉnh lưới điện cho phù hợp. Ví dụ, doanh nghiệp có thể chuyển sang nguồn điện dự phòng hoặc thực hiện điều chỉnh tải. Mạng PMU cần phải xử lý hàng nghìn bản ghi mỗi giây, do đó, các doanh nghiệp điện lực có thể hưởng lợi từ các hệ thống có chi phí rẻ, tính khả dụng cao như HDFS.
    • Doanh nghiệp Marketing: Các chiến dịch tiếp thị có hiệu quả hay không phụ thuộc rất lớn vào việc nhắm đúng đối tượng mục tiêu, việc doanh nghiệp hiểu về khách hàng của mình như thế nào. Các nhà tiếp thị có thể lấy các thông tin này từ nhiều nguồn, bao gồm từ hệ thống CRM, hệ thống email, hệ thống thông tin tại điểm bán hàng, Facebook và Twitter. Do phần lớn dữ liệu này không có cấu trúc nên cụm HDFS là giải pháp tiết kiệm chi phí nhất để tổng hợp dữ liệu trước khi phân tích.
    • Nhà cung cấp dầu khí: Các doanh nghiệp dầu khí cần phải xử lý nhiều định dạng dữ liệu khác nhau với khối lượng rất lớn, bao gồm video, mô hình trái đất 3D và dữ liệu từ các cảm biến. Giải pháp HDFS có thể cung cấp nền tảng phù hợp cho việc phân tích dữ liệu lớn này.
    • Doanh nghiệp nghiên cứu: Phân tích dữ liệu là một phần quan trọng của các doanh nghiệp nghiên cứu. Do đó, HDFS là lựa chọn lý tưởng để xử lý và phân tích một lượng lớn dữ liệu một cách tối ưu chi phí nhất.

    Trên đây là toàn bộ các kiến thức chi tiết về HDFS là gì, cấu trúc và cách hoạt động của nó. Hy vọng bài viết trên đã giúp doanh nghiệp có cái nhìn tổng quan hơn về vai trò của HDFS cũng như công nghệ Hadoop trong Big Data. Hãy truy cập vào blog của CMC Cloud để theo dõi những bài viết công nghệ mới và hữu ích nhất.
    CMC Cloud - Giải pháp Điện toán đám mây Toàn diện & Linh hoạt nhất. Cho phép tùy biến sử dụng và quản trị 25+ dịch vụ


      content-banner
      News Detail - Footer Email MKT

      Đăng ký nhận thông tin

      Bạn muốn cập nhật thông tin mới nhất từ CMC Cloud?! Hãy để lại địa chỉ email của bạn ngay để nhận những bản tin bổ ích

      back to top

      logo

      © 2023, CMC Cloud. All rights reserved.

      Business Registration Certificate

      Giấy ĐKKD: 0102900049. Nơi cấp: Sở Kế hoạch & Đầu tư Thành phố Hà Nội

      Chịu trách nhiệm nội dung: Đặng Tùng Sơn