10 điều khoản Hadoop quan trọng nhất bạn cần biết và hiểu

Tác Giả: Eugene Taylor
Ngày Sáng TạO: 10 Tháng Tám 2021
CậP NhậT Ngày Tháng: 1 Tháng BảY 2024
Anonim
10 điều khoản Hadoop quan trọng nhất bạn cần biết và hiểu - Công Nghệ
10 điều khoản Hadoop quan trọng nhất bạn cần biết và hiểu - Công Nghệ

NộI Dung



Nguồn: Trueffelpix / Dreamstime.com

Lấy đi:

Để thực sự hiểu dữ liệu lớn, bạn cần hiểu một chút về Hadoop và ngôn ngữ xung quanh nó.

Dữ liệu lớn, tên hấp dẫn cho khối lượng lớn dữ liệu có cấu trúc, không cấu trúc hoặc bán cấu trúc, rất khó nắm bắt, lưu trữ, quản lý, chia sẻ, phân tích và trực quan hóa, ít nhất là sử dụng các ứng dụng cơ sở dữ liệu và phần mềm truyền thống. Đó là lý do tại sao các công nghệ dữ liệu lớn có tiềm năng để quản lý và xử lý khối lượng dữ liệu khổng lồ một cách hiệu quả và hiệu quả. Và Apache Hadoop của nó cung cấp khung và các công nghệ liên quan để xử lý các tập dữ liệu lớn trên các cụm máy tính theo cách phân tán. Vì vậy, để thực sự hiểu dữ liệu lớn, bạn cần hiểu một chút về Hadoop. Ở đây cũng hãy xem các thuật ngữ hàng đầu bạn sẽ nghe liên quan đến Hadoop - và ý nghĩa của chúng.


Nhưng trước tiên, hãy nhìn cách Hadoop hoạt động

Trước khi đi vào hệ sinh thái Hadoop, bạn cần hiểu rõ hai điều cơ bản. Đầu tiên là cách một tệp được lưu trữ trong Hadoop; thứ hai là cách xử lý dữ liệu được lưu trữ. Tất cả các công nghệ liên quan đến Hadoop chủ yếu hoạt động trên hai lĩnh vực này và làm cho nó thân thiện hơn với người dùng. (Nhận những điều cơ bản về cách Hadoop hoạt động trong cách Hadoop giúp giải quyết vấn đề dữ liệu lớn.)

Bây giờ, về các điều khoản.

Hadoop thường gặp

Khung Hadoop có các mô-đun khác nhau cho các chức năng khác nhau và các mô-đun này có thể tương tác với nhau vì nhiều lý do. Hadoop Common có thể được định nghĩa là một thư viện tiện ích chung để hỗ trợ các mô-đun này trong hệ sinh thái Hadoop. Các tiện ích này về cơ bản là các tệp lưu trữ (JAR) dựa trên Java. Các tiện ích này chủ yếu được sử dụng bởi các lập trình viên và nhà phát triển trong thời gian phát triển.


Hệ thống tệp phân tán Hadoop (HDFS)

Hệ thống tệp phân tán Hadoop (HDFS) là một dự án con của Apache Hadoop thuộc Quỹ phần mềm Apache. Đây là xương sống của lưu trữ trong khung Hadoop. Nó là một hệ thống tệp phân tán, có thể mở rộng và chịu lỗi, trải rộng trên nhiều phần cứng hàng hóa được gọi là cụm Hadoop. Mục tiêu của HDFS là lưu trữ một khối lượng dữ liệu khổng lồ đáng tin cậy với khả năng truy cập thông lượng cao vào dữ liệu ứng dụng. HDFS theo kiến ​​trúc chủ / nô lệ, trong đó bản gốc được gọi là NameNode và các nô lệ được gọi là DataNodes.

MapReduce

Hadoop MapReduce cũng là một dự án con của Quỹ phần mềm Apache. MapReduce thực sự là một khung phần mềm được viết hoàn toàn bằng Java. Mục tiêu chính của nó là xử lý các bộ dữ liệu lớn trên môi trường phân tán (bao gồm phần cứng hàng hóa) theo cách hoàn toàn song song. Khung quản lý tất cả các hoạt động như lập kế hoạch công việc, giám sát, thực hiện và thực hiện lại (trong trường hợp nhiệm vụ thất bại).

HBase

Apache HBase được gọi là cơ sở dữ liệu Hadoop. Nó là một kho lưu trữ dữ liệu lớn, phân tán và có thể mở rộng. Nó cũng được biết đến như một loại cơ sở dữ liệu NoQuery không phải là một hệ thống quản lý cơ sở dữ liệu quan hệ. Các ứng dụng HBase cũng được viết bằng Java, được xây dựng trên Hadoop và chạy trên HDFS. HBase được sử dụng khi bạn cần đọc / ghi thời gian thực và truy cập ngẫu nhiên vào dữ liệu lớn. HBase được mô hình hóa dựa trên các khái niệm Googles BigTable.

Tổ ong

Apache Hive là một hệ thống phần mềm kho dữ liệu nguồn mở. Hive ban đầu được phát triển trước khi nó thuộc Quỹ Phần mềm Apache và trở thành nguồn mở. Nó tạo điều kiện cho việc quản lý và truy vấn các tập dữ liệu lớn trên bộ lưu trữ tương thích Hadoop phân tán. Hive thực hiện tất cả các hoạt động của nó bằng cách sử dụng ngôn ngữ giống như SQL được gọi là HiveQL. (Tìm hiểu thêm trong phần giới thiệu ngắn gọn về Apache Hive và Pig.)

Không lỗi, không căng thẳng - Hướng dẫn từng bước của bạn để tạo ra phần mềm thay đổi cuộc sống mà không phá hủy cuộc sống của bạn

Bạn không thể cải thiện kỹ năng lập trình của mình khi không ai quan tâm đến chất lượng phần mềm.

Lợn Apache

Pig ban đầu được Yahoo khởi xướng để phát triển và thực hiện các công việc MapReduce trên một khối lượng lớn dữ liệu phân tán. Bây giờ nó đã trở thành một dự án nguồn mở thuộc Quỹ phần mềm Apache. Apache Pig có thể được định nghĩa là một nền tảng để phân tích các tập dữ liệu rất lớn một cách hiệu quả. Lớp cơ sở hạ tầng Lợn tạo ra các chuỗi công việc MapReduce để thực hiện xử lý thực tế. Lớp ngôn ngữ Lợn được gọi là Pig Latin và nó cung cấp các tính năng giống như SQL để thực hiện các truy vấn trên các tập dữ liệu phân tán.

Spark Spark

Spark ban đầu được phát triển bởi AMPLab tại UC Berkeley. Nó đã trở thành một dự án cấp cao nhất của Apache vào tháng 2 năm 2014. Apache Spark có thể được định nghĩa là một khung công tác điện toán cụm, mục đích chung, mã nguồn mở giúp cho việc phân tích dữ liệu nhanh hơn nhiều. Nó được xây dựng trên đỉnh của Hệ thống tệp phân tán Hadoop nhưng nó không được liên kết với khung MapReduce. Hiệu suất của Sparks nhanh hơn nhiều so với MapReduce. Nó cung cấp các API cấp cao trong Scala, Python và Java.

Cassandra Apache

Apache Cassandra là một cơ sở dữ liệu NoQuery mã nguồn mở khác. Cassandra được sử dụng rộng rãi để quản lý khối lượng lớn dữ liệu có cấu trúc, bán cấu trúc và không cấu trúc trên nhiều trung tâm dữ liệu và lưu trữ đám mây. Cassandra được thiết kế dựa trên kiến ​​trúc "không chủ", có nghĩa là nó không hỗ trợ mô hình chủ / nô lệ. Trong kiến ​​trúc này, tất cả các nút đều giống nhau và dữ liệu được phân phối tự động và đồng đều trên tất cả các nút. Các tính năng quan trọng nhất của Cassandras là tính khả dụng liên tục, khả năng mở rộng tuyến tính, sao chép tích hợp / tùy chỉnh, không có điểm đơn lẻ và hoạt động đơn giản.

Một nhà đàm phán tài nguyên khác (YARN)

Tuy nhiên, một nhà đàm phán tài nguyên khác (YARN) còn được gọi là MapReduce 2.0, nhưng nó thực sự nằm trong Hadoop 2.0. YARN có thể được định nghĩa là một khung lập kế hoạch công việc và quản lý tài nguyên. Ý tưởng cơ bản của YARN là thay thế các chức năng của JobTracker bằng hai trình nền riêng biệt chịu trách nhiệm quản lý tài nguyên và lập lịch / giám sát. Trong khuôn khổ mới này, sẽ có một Trình quản lý tài nguyên toàn cầu (RM) và một bậc thầy về ứng dụng cụ thể được gọi là ApplicationMaster (AM). ResourceManager toàn cầu (RM) và NodeManager (nô lệ trên mỗi nút) tạo thành khung tính toán dữ liệu thực tế. Các ứng dụng MapReduce v1 hiện tại cũng có thể được chạy trên YARN, nhưng các ứng dụng đó cần được biên dịch lại với các tệp Hadoop2.x.

Impala

Impala có thể được định nghĩa là một công cụ truy vấn SQL với sức mạnh xử lý song song (MPP) lớn. Nó chạy tự nhiên trên khung công tác Apache Hadoop. Impala được thiết kế như một phần của hệ sinh thái Hadoop. Nó chia sẻ cùng một hệ thống tệp linh hoạt (HDFS), siêu dữ liệu, quản lý tài nguyên và khung bảo mật như được sử dụng bởi các thành phần hệ sinh thái Hadoop khác. Điểm quan trọng nhất là lưu ý rằng Impala xử lý truy vấn nhanh hơn nhiều so với Hive. Nhưng chúng ta cũng nên nhớ rằng Impala có nghĩa là để truy vấn / phân tích trên một tập hợp dữ liệu nhỏ và chủ yếu được thiết kế như một công cụ phân tích hoạt động trên dữ liệu được xử lý và có cấu trúc.

Hadoop là một chủ đề quan trọng trong CNTT, nhưng có những người hoài nghi về khả năng tồn tại lâu dài của nó. Đọc thêm trong Hadoop là gì? Một lý thuyết hoài nghi.