- Tổng đài 24/7: 1800 646 881
- Đăng nhập
- 3
Apache Hadoop được thiết kế với cấu trúc có khả năng lưu trữ dữ liệu lớn. Điều này giúp cho quá trình xử lý dữ liệu diễn ra nhanh chóng và hiệu quả hơn. Hãy cùng BKHOST tìm hiểu chi tiết về các thành phần chính và quy trình hoạt động của phần mềm này trong bài viết dưới đây.
Apache Hadoop là một Framework phần mềm mã nguồn mở có khả năng xử lý dữ liệu được thực thi trong môi trường Distributed Computing. Hầu hết các ứng dụng được triển khai dựa vào Hadoop đều có thể chạy trên các tập dữ liệu lớn trên Commodity Computer.
Tương tự như các dữ liệu được lưu trữ trong Local File System trên máy tính cá nhân. Trong phần mềm, các dữ liệu được lưu trữ trong Local File System được gọi là Hadoop Distributed File System.
Mô hình xử lý hoạt động dựa trên Data Locality cho phép các Computational Logic được chạy trên các cụm Node Container Data. Computational này chỉ đơn giản là một phiên bản được biên dịch của chương trình viết bằng ngôn ngữ Java.
Sơ đồ dưới đây hiển thị các phần giống và khác nhau có trong phần mềm Hadoop:
Apache Hadoop bao gồm hai thành phần chính đó là:
Đây là mô hình framework cho phép tính toán với khả năng hỗ trợ viết các ứng dụng chạy trên Hadoop. Các chương trình MapReduce này giúp xử lý lượng lớn dữ liệu một cách đồng thời trên các cụm Node Computation lớn.
HDFS quản lý dữ liệu lưu trữ của hai phần mềm, bao gồm Hadoop và MapReduce. Thành phần này có thể tạo nhiều bản sao khác nhau của các khối dữ liệu và phân phối chúng trên các Compute Node trong một cụm một cách linh hoạt và hiệu quả.
Thông thường, ứng dụng MapReduce và hệ thống tệp phân tán của nó là ví dụ phổ biến nhất về Hadoop. Tuy nhiên, thuật ngữ ngày cũng được sử dụng cho một nhóm đối tượng khác có liên quan và nằm trong vùng máy tính phân tán và xử lý dữ liệu quy mô lớn. Một số dự án trong số đó có thể kể đến như Hive, HBase, Mahout, Sqoop, Flume và ZooKeeper.
Hadoop được thiết kế với kiến trúc Master-Slave có khả năng lưu trữ dữ liệu. Đồng thời, nó còn giúp hệ thống xử lý các dữ liệu phân tán bằng cách sử dụng phương pháp hỗ trợ như MapReduce và HDFS. Kiến trúc của Hadoop bao gồm các thành phần như sau:
Đặc biệt, trong Apache Hadoop hai hệ thống Master và Slave có thể được triển khai trên Cloud hoặc On-premise.
Dưới đây là một số tính năng của Apache Hadoop:
Hầu hết các dữ liệu đều được phân phối và chúng không có cấu trúc cụ thể. Do đó, các nhà cung cấp ưu tiên sử dụng cụm Hadoop để phân tích dữ liệu lớn trong đại đa số trường hợp. Bởi vì hầu hết các dữ liệu ảo được xử lý trên Node nên quá trình này tiêu thụ ít băng thông mạng hơn.
Các nhà triển khai có thể thu nhỏ cụm Hadoop với kích thước theo mong muốn bằng cách thêm các cụm Node bổ sung. Điều này cho phép họ có thể mở rộng được nhiều dữ liệu lớn hơn. Đặc biệt, cả quá trình mở rộng này không yêu cầu bất kỳ thao tác sửa đổi logic nào trên ứng dụng.
Hệ sinh thái Hadoop với tính năng cho phép người dùng có thể sao chép dữ liệu đầu vào sang các cụm Node khác một cách dễ dàng. Với phương pháp này ngay cả các trường hợp có cụm Node bị lỗi thì quá trình xử lý dữ liệu vẫn hoạt động bình thường. Điều này là do nó sử dụng các dữ liệu được lưu trữ trên một cụm Node khác trước đó.
Cấu trúc liên kết đóng vai trò quan trọng trong mạng. Nó quyết định đến hiệu suất hoạt động khi cụm Hadoop ở trong trường hợp tăng tích thước. Một số vấn đề khác cũng được quan tâm đến đó là khả năng sẵn sàng cao và xử lý lỗi tốt. Để đạt được đến tính năng nâng cao này, Hadoop cần được triển khai các cụm hoạt động dựa trên cấu trúc liên kết mạng.
Băng thông mạng là một trong những thành phần chính cần được theo dõi và kiểm tra trước khi một mạng được chạy trong thực tế. Tuy nhiên, trong Hadoop rất khó khăn để có thể đo được băng thông. Điều này là do mạng được triển khai dưới dạng Tree.
Hop là khoảng cách giữa các Node của Tree cũng được xem là một trong những yếu tố quan trọng trong quá trình hình thành cụm Hadoop. Trong đó, mỗi Hop chính là tổng khoảng cách của Node đến vị trí đầu tiên của chúng.
Mỗi cụm Hadoop bao gồm một trung tâm dữ liệu, Rack và Node có nhiệm vụ quản lý và thực thi các công việc. Trong đó, trung tâm dữ liệu bao gồm các Rack và các Rack này lại bao gồm các Node.
Băng thông mạng có sẵn được sử dụng làm tài nguyên thực thi quy trình khác nhau. Điều này phụ thuộc vào từng vị trí của quy trình đó. Chẳng hạn như vị trí càng xa thì càng ít băng thông:
Apache Hadoop là phần mềm mã nguồn mở được sử dụng để xử lý dữ liệu lớn. Hy vọng thông qua bài chia sẻ trên đây đã giúp bạn đọc hiểu thêm về quy trình hoạt động của Hadoop cũng như cấu trúc của nó. Nếu thấy bài viết hữu ích hãy theo dõi BKHOST để nhận thêm nhiều bài chia sẻ hay ho khác về CNTT nhé!
Mua tên miền .VN tại BKHOST
Giá chỉ từ 750k/năm. Kiểm tra tên miền .VN đẹp và đăng ký ngay hôm nay!