Hướng dẫn học Hadoop: Features, Components, Cluster & Topology

Ngày đăng: 25/01/2019   -    Cập nhật: 25/01/2019

Apache HADOOP là một frameworks được sử dụng để phát triển các ứng dụng xử lý dữ liệu được thực thi trong môi trường điện toán phân tán.

Tương tự như local file trong một hệ thống tệp cục bộ của hệ thống máy tính cá nhân, trong Hadoop, dữ liệu nằm trong một hệ thống tệp phân tán được gọi là hệ thống tệp phân tán Hadoop (Hadoop Distributed File system).

Mô hình xử lý dựa trên khái niệm 'Data locality' trong đó, logic tính toán được gửi đến các node cụm (máy chủ) có chứa dữ liệu.

Logic tính toán này không là gì ngoài phiên bản được biên dịch của một chương trình được viết bằng ngôn ngữ cấp cao như Java. Như một chương trình, xử lý dữ liệu được lưu trữ trong Hadoop HDFS.

HADOOP là một frameworks mã nguồn mở. Các ứng dụng được xây dựng bằng HADOOP được chạy trên các tập Big Data được phân phối trên các cụm máy tính thông dụng.

Máy tính thông dụng là các máy tính giá rẻ và được sử dụng ở mọi nơi. Chúng được hướng đến bởi mục đich của Big Data là đạt được sức mạnh tính toán lớn hơn với chi phí thấp.
  • Cụm máy tính bao gồm một tập hợp nhiều đơn vị xử lý (đĩa lưu trữ + bộ xử lý) được kết nối với nhau và hoạt động như một hệ thống duy nhất.

Các thành phần của Hadoop (Components of Hadoop)

Dưới đây biểu đồ cho thấy các thành phần khác nhau trong hệ sinh thái Hadoop-

Hệ sinh thái Hadooop

Hệ sinh thái Hadooop

Apache Hadoop bao gồm hai dự án nhỏ:

Hadoop MapReduce

MapReduce là một mô hình tính toán và khung phần mềm để viết các ứng dụng được chạy trên Hadoop. Các chương trình MapReduce này có khả năng xử lý dữ liệu khổng lồ song song trên các cụm nút tính toán lớn.

HDFS (Hadoop Distributed File System)

HDFS đảm nhiệm phần lưu trữ của các ứng dụng Hadoop. Các ứng dụng MapReduce tiếp nhận dữ liệu từ HDFS. HDFS tạo nhiều bản sao của các khối dữ liệu và phân phối chúng trên các node tính toán trong cụm. Phân phối này cho phép tính toán đáng tin cậy và cực kỳ nhanh chóng.

Tính năng năng của Hadoop

  • Thích hợp cho phân tích dữ liệu lớn
Vì dữ liệu lớn có xu hướng được phân phối và không có cấu trúc trong tựu nhiên. Nên các cụm HADOOP phù hợp nhất để phân tích Dữ liệu lớn. Vì, nó đang xử lý logic (không phải dữ liệu thực tế) chảy đến các node tính toán, tiêu thụ ít băng thông mạng hơn.

Khái niệm này được gọi là khái niệm địa phương dữ liệu (data locality concept) giúp tăng hiệu quả của các ứng dụng dựa trên Hadoop. •
  • Khả năng mở rộng (Scalability)

Các cụm HADOOP có thể dễ dàng được thu nhỏ ở bất kỳ mức độ nào bằng cách thêm các cụm node bổ sung và do đó cho phép phát triển Big Data. Ngoài ra, khả năng mở rộng không yêu cầu sửa đổi logic ứng dụng.
  • Dung sai lỗi
Hệ sinh thái HADOOP có một điều khoản để sao chép dữ liệu đầu vào trên các cụm node khác. Theo cách đó, trong trường hợp xảy ra lỗi cụm node, việc xử lý dữ liệu vẫn có thể tiến hành bằng cách sử dụng dữ liệu được lưu trữ trên một nút cụm khác

Cấu trúc liên kết mạng trong Hadoop

Cấu trúc liên kết (Sắp xếp) của mạng, ảnh hưởng đến hiệu suất của cụm Hadoop khi kích thước của cụm hadoop phát triển.

Ngoài hiệu suất, người ta cũng cần quan tâm đến một số vấn đề là tính sẵn sàng cao và xử lý các lỗi. Để đạt được sự hình thành cụm Hadoop này, hãy sử dụng cấu trúc liên kết mạng.

Thông thường, băng thông mạng là một yếu tố quan trọng cần xem xét trong khi hình thành bất kỳ mạng nào.

Tuy nhiên, vì việc đo băng thông có thể khó khăn, trong Hadoop, mạng được biểu diễn dưới dạng cây và khoảng cách giữa các node của cây này (số bước nhảy) được coi là yếu tố quan trọng trong việc hình thành cụm Hadoop.

Ở đây, khoảng cách giữa hai node bằng tổng khoảng cách của chúng với tổ tiên chung gần nhất của chúng.

Cụm Hadoop bao gồm trung tâm dữ liệu, giá đỡ và node thực sự thực hiện các công việc.

Ở đây, trung tâm dữ liệu bao gồm các giá đỡ và giá đỡ bao gồm các node. Băng thông mạng có sẵn cho các quy trình khác nhau tùy thuộc vào vị trí của các quy trình. Chúng ta sẽ đi từ:


  • Các processes trên cùng một node
  • Các node khác nhau trên cùng một giá
  • Các node trên các giá đỡ khác nhau của cùng một trung tâm dữ liệu
  • Các node trong các trung tâm dữ liệu khác nhau

Tổng kết

Qua bài này chúng ta đã cùng tìm hiểu đối chút về Big Data, các component và tính năng của Hadooop. Bài tới tôi sẽ hướng dẫn các bạn cách để cài đặt và congfig Hadoop chi tiết nhất.



Bình luận Facebook
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!