Hadoop là gì

     
March 28, 2020March 4, 2021cherry & kiwi777 Views 0 CommentsHadoop, Hbase, Hive, MapReduce, Pig, YARN

Big Datađang đổi mới một quan trọng đặc biệt và là gia sản to khủng của từng doanh nghiệp, trong các số ấy Hadoop là technology cốt lõi mang lại việc tàng trữ và truy vấn dữ liệu lớn.

Hệ sinh thái xanh Hadoop là gì?

Hadooplà một Apache framework mã mối cung cấp mở cho phép phát triển những ứng dụng phân tán (distributed processing) để tàng trữ và quản lý các tập tài liệu lớn.

Ưu điểm của Hadoop ngoài tài năng lưu trữ data và đảm bảo ứng dụng chuyển động 24/7 là tài năng tích hợp với rất nhiều các kiến trúc và điều khoản dữ liệu khai quật dữ liệu mập cho doanh nghiệp.

Kiến trúc lõi của Hadoop dựa vào 02 nhân tố xử lý đó là HDFS và MapReduce. Nhị thành phần này có công dụng để tàng trữ và xử trí lượng dữ liệu lớn. Phương án tích phù hợp giữa Hadoop cùng MapReduce là sự phối hợp hoàn hảo đem về tính năng bạo dạn mẽ cho tất cả những người dùng. Trong đó quy mô MapReduce là mô hình mà ứng dụng sẽ được chia nhỏ tuổi ra thành những phân đoạn khác nhau được chạy song song trên nhiều node khác nhau.

Hadoop được viết bởi Java mặc dù vẫn cung cấp C++, Python, Perl bằng cơ chế streaming.

Bài viết này sẽ mô tả thành phần phong cách xây dựng chính của Hadoop đến phép chúng ta hiểu sâu rộng về căn nguyên này.

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

Các thành phần thiết yếu của Hadoop

Apache Hadoop có bắt đầu là để quản lý và truy cập dữ liệu, và chỉ bao gồm 2 nhân tố là: Hadoop Distributed tệp tin System (HDFS) và MapReduce, một khuôn khổ xử lý cho dữ liệu lưu trữ trong HDFS. Theo thời gian, căn cơ Hadoop không ngừng mở rộng kết phù hợp với một loạt những dự án khác nhằm thành một căn nguyên hoàn chỉnh. Gốc rễ này chia thành 5 một số loại sau: data access, data management, security, operations và governance.

*
Core Hadoop

Hadoop có 4 module:

Hadoop Common: Đây là những thư viện cùng tiện ích cần thiết của Java để những module khác sử dụng. đông đảo thư viện này cung ứng hệ thống file và lớp OS trừu tượng, bên cạnh đó chứa các mã lệnh Java nhằm khởi hễ Hadoop.Hadoop YARN: Đây là framework để quản lý lập lịch những job cùng tài nguyên những node.Hadoop Distributed tệp tin System (HDFS): Đây là khối hệ thống lưu trữ và quản lý file phân tán, đồng thời hỗ trợ truy cập thông lượng cao mang đến ứng dụng khai thác dữ liệu.Hadoop MapReduce: Đây là hệ thống dựa trên YARN dùng làm xử lý tuy vậy song những tập tài liệu lớn.

Hiện nay Hadoop đang càng ngày càng được mở rộng tương tự như được nhiều framework khác cung ứng như Hive, Hbase, Pig. Tùy vào mục tiêu sử dụng mà ta sẽ áp dụng framework phù hợp để nâng cấp hiệu quả xử lý tài liệu của Hadoop.

Hadoop Distributed file System (HDFS)
*

HDFS là hệ thống quản lý dữ liệu phân tán dựa trên căn cơ Java cung cấp phương án lưu trữ tin cậy, ổn định định, truy cập nhanh chóng. Với mục tiêu này thì phương pháp “wrice once, read many” được sử dụng, cho phép dữ liệu thường xuyên được ghi một lần từng HDFS, tiếp nối sẽ được đọc các lần. Do vậy việc sửa thay đổi dữ liệu sau khi ghi thường vô cùng hạn chế.

Ngoài ra, để tàng trữ dữ liệu phân tán, tài liệu sẽ được tạo thành các block (64/128 MB) và được bày bán tới các node xử lý. Mỗi block đồn thời vẫn được xào luộc đến những server khác trong các cluster để đảm bảo an toàn tính toàn diện của dữ liệu.

Xem thêm: Làm Cách Nào Để Tìm Video Trực Tiếp Trên Facebook? ? Cách Xem Livestream Trên Facebook Không Bị Delay

Chức năng của những thành phần:

Namenode: Là thành phần cách xử lý trung trọng điểm của master node và quản lý toàn cỗ meta data của các data node. Với tác dụng như vậy thì Namenode sẽ làm chủ vị trí của các block với file như là những journal file để đánh giá request thông tin file bất kỳ thời điểm nào.Data node: là slave node đảm nhậm trọng trách lưu trữ Data.The Secondary Name Node: theo tên thường gọi là để backup mang lại Name node nhưng thực tiễn không bắt buộc vậy. Nó chỉ cần thành phần trợ giúp tá vụ phối kết hợp block bản đồ và journal log của Name Node.YARN

YARN là viết tắt của các từ “Yet-Another-Resource-Negotiator” là một trong những framework cung ứng phát triển áp dụng phân tán. YARN cung ứng daemons và APIs quan trọng cho việc trở nên tân tiến ứng dụng phân tán, đồng thời cách xử trí và lập lịch sử dân tộc dụng tài nguyên đo lường và thống kê (CPU tốt memory) cũng giống như giám sát quá trình thực thi những ứng dụng đó. YARN tổng quát hơn MapReduce ráng hệ đầu tiên (gồm mô hình JobTracker / TaskTracker).

MapReduce

Google là công typhát minhra MapReduce nhưng phổ cập framework này cho business và bắt đầu buzzword BigData là Hadoop. Vì thế việc hiểu phong cách thiết kế của Hadoop với YARN là điều không thể thiếu với những người dân làm BigData.

Ta còn rất có thể gọi phương pháp này làPhân tán dữ liệuvì nó bóc hết tập hợp các dữ liệu ban sơ thành những dữ liệu bé dại và thu xếp lại chúng để dễ ợt tìm kiếm cùng truy xuất hơn, đặc biệt là việc tróc nã xuất những dữ liệu tương đồng.

Hiện tại có tương đối nhiều ứng dụng BigData được port điều khiển xe trên YARN, trong các số đó có một trong những ứng dụng danh tiếng như Spark.

Các phiên bạn dạng Hadoop với MapReduce

MapReduce 1 (Hadoop đời đầu)

Hadoop đời trước tiên rất có thể chia ra làm cho 2 modules:

JobTracker / TaskTracker (Map Reduce 1)

MapReduce2 (NextGen, tốt là YARN Yet-Another-Resource-Negotiator)

Kiến trúc bắt đầu chia 2 tác dụng chính của JobTracker – làm chủ tài nguyên và thống trị job thành 2 components riêng biệt:

Resource Manager (RM): thống trị toàn bộ tài nguyên đo lường và thống kê của cluster.Application Master (AM): đơn vị chức năng là trên 1 áp dụng và làm chủ vòng đời của Job.

Do vậy so với YARN, MapReduce sẽ là một ứng dụng chạy xe trên YARN, sử dụng tài nguyên do RM cấp cho phát. Những node đo lường và tính toán trong cluster hiện nay sẽ chạy NodeManager làm chủ các quy trình chạy trên lắp thêm đó. Resource Manager với Node Manager vươn lên là xương sinh sống của giám sát và đo lường phân tán trong YARN. Bài toán mỗi áp dụng được tách ra riêng cho phép các process chạy lâu (long running process) cũng rất có thể được khởi đụng trên YARN.

ApplicationMaster trên 1 ứng dụng là 1 trong những thư viện được cho phép yêu càu tài nguyên từ Resource Manager và tiếp xúc với Node Manager nhằm chạy và thực thi những tasks. Trong YARN, MapReduce2 là thay bởi vì là linh hồn của hadoop như làm việc hadoop 1 thì chỉ là một trong ứng dụng. Application Master có thể chấp nhận được xây dựng những ứng dụng khác MR chạy xe trên YARN.

Xem thêm: Thiết Bị Định Vị Toàn Cầu Là Gì? Tính Năng Và Tác Dụng Ra Sao?

Kiến trúc maps Reduce

MapReduce bao hàm 02 trộn là bản đồ và reduce.

Hàm map: đã quét qua toàn thể dữ liệu cùng phân tán bọn chúng ra thành các dữ liệu con. Những xử lý một cặp (key, value) để hình thành một cặp (key, value) – key cùng value trung gian. Tài liệu này input vào hàm Reduce. Hàm Reduce: sẽ thu thập các dữ liệu con lại và sắp xếp lại chúng. Tiếp nhận các (key, value) và trộn những cặp (key, value) trung gian , lấy ra các valueI gồm cùng key.
*

Hiện tại có tương đối nhiều ứng dụng BigData được port điều khiển xe trên YARN, trong số ấy có một trong những ứng dụng khét tiếng như Spark. Nạm thể chúng ta có thể tham khảo hình dưới đây:

*
Thành phần áp dụng trong YARNZookeeper (vườn thú): là dịch vụ tập trung để duy trì thông tin cấu hình, để tên, nhất quán hóa cùng phân tán cho các nhóm. Hbase: một CSDL cấu tạo phi quan hệ (NoSQL) dạng cột Hive: Data Warehouse hỗ trợ khả năng truy vấn dữ liệu lưu trữ bằng Hadoop dạng SQL Pig: Pig là ngôn ngữ kịch bản cấp cao được thực hiện với Apache Hadoop. Pig cho phép các bên phân tích dữ liệu viết những phép thay đổi dữ liệu phức hợp mà không cần phải biết Java.

Tham khảo

https://mapr.com/why-hadoop/why-mapr/architecture-matters/