Hướng dẫn về Hadoop Pig: Apache Pig là gì? Archikiến trúc, Ví dụ

Chúng ta sẽ bắt đầu với phần giới thiệu về Pig

Lợn Apache là gì?

Pig là ngôn ngữ lập trình cấp cao hữu ích để phân tích các tập dữ liệu lớn. Pig là kết quả của nỗ lực phát triển tại Yahoo!

Trong khung MapReduce, các chương trình cần được dịch thành một loạt các giai đoạn Map và Giảm. Tuy nhiên, đây không phải là mô hình lập trình mà các nhà phân tích dữ liệu quen thuộc. Vì vậy, để thu hẹp khoảng cách này, một bản tóm tắt có tên Pig đã được xây dựng trên Hadoop.

Apache Pig cho phép mọi người tập trung hơn vào phân tích các tập dữ liệu số lượng lớn và dành ít thời gian hơn để viết các chương trình Map-Reduce. Tương tự như Lợn ăn bất cứ thứ gì, Lợn Apache ngôn ngữ lập trình được thiết kế để làm việc trên bất kỳ loại dữ liệu nào. Đó là lý do tại sao có tên là Lợn!

Đó là lý do tại sao có tên là Pig!
Đó là lý do tại sao có tên là Lợn!

Trong hướng dẫn Apache Pig dành cho người mới bắt đầu này, bạn sẽ học-

Heo Archikiến trúc

ArchiCấu trúc của Pig bao gồm hai thành phần:

  1. lợn Latin, đó là một ngôn ngữ
  2. Một môi trường thời gian chạy, để chạy các chương trình PigLatin.

Chương trình Pig Latin bao gồm một loạt các thao tác hoặc phép biến đổi được áp dụng cho dữ liệu đầu vào để tạo ra đầu ra. Các hoạt động này mô tả luồng dữ liệu được dịch thành dạng biểu diễn có thể thực thi được bởi môi trường thực thi Hadoop Pig. Bên dưới, kết quả của những chuyển đổi này là hàng loạt công việc MapReduce mà lập trình viên không hề hay biết. Vì vậy, theo một cách nào đó, Pig trong Hadoop cho phép lập trình viên tập trung vào dữ liệu hơn là bản chất của việc thực thi.

PigLatin là một ngôn ngữ tương đối cứng sử dụng các từ khóa quen thuộc trong quá trình xử lý dữ liệu, ví dụ: Tham gia, Nhóm và Lọc.

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ
CON LỢN Archikiến trúc

Các chế độ thực hiện:

Pig trong Hadoop có hai chế độ thực thi:

  1. Chế độ cục bộ: Ở chế độ này, ngôn ngữ Hadoop Pig chạy trong một JVM và sử dụng hệ thống tập tin cục bộ. Chế độ này chỉ phù hợp để phân tích các tập dữ liệu nhỏ bằng Pig trong Hadoop
  2. Chế độ Giảm bản đồ: Trong chế độ này, các truy vấn được viết bằng Pig Latin sẽ được dịch sang Bản đồGiảm công việc và được chạy trên cụm Hadoop (cụm có thể là giả hoặc được phân phối đầy đủ). Chế độ MapReduce với cụm phân phối đầy đủ rất hữu ích khi chạy Pig trên các tập dữ liệu lớn.

Cách tải xuống và cài đặt Pig

Bây giờ trong hướng dẫn Apache Pig này, chúng ta sẽ tìm hiểu cách tải xuống và cài đặt Pig:

Trước khi chúng ta bắt đầu quy trình thực tế, hãy đảm bảo bạn đã cài đặt Hadoop. Thay đổi người dùng thành 'hduser' (id được sử dụng khi cấu hình Hadoop, bạn có thể chuyển sang userid được sử dụng trong cấu hình Hadoop của mình)

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 1) Tải xuống bản phát hành ổn định mới nhất của Pig Hadoop từ bất kỳ trang nhân bản nào có sẵn tại

http://pig.apache.org/releases.html

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Chọn tar.gz (và không src.tar.gz) tệp để tải xuống.

Bước 2) Sau khi quá trình tải xuống hoàn tất, hãy điều hướng đến thư mục chứa tệp tar đã tải xuống và di chuyển tar đến vị trí bạn muốn thiết lập Pig Hadoop. Trong trường hợp này, chúng tôi sẽ chuyển đến /usr/local

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Di chuyển đến thư mục chứa Tệp Pig Hadoop

cd /usr/local

Trích xuất nội dung của file tar như bên dưới

sudo tar -xvf pig-0.12.1.tar.gz

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 3). Sửa đổi ~ / .bashrc để thêm các biến môi trường liên quan đến Pig

Mở ~ / .bashrc tập tin trong bất kỳ trình soạn thảo văn bản nào bạn chọn và thực hiện các sửa đổi bên dưới-

export PIG_HOME=<Installation directory of Pig>
export PATH=$PIG_HOME/bin:$HADOOP_HOME/bin:$PATH

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 4) Bây giờ, tìm nguồn cấu hình môi trường này bằng lệnh bên dưới

. ~/.bashrc

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 5) Chúng ta cần biên dịch lại CON LỢN hỗ trợ Hadoop 2.2.0

Dưới đây là các bước để thực hiện việc này-

Chuyển đến thư mục chính của PIG

cd $PIG_HOME

Cài đặt kiến

sudo apt-get install ant

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Lưu ý: Quá trình tải xuống sẽ bắt đầu và sẽ tiêu tốn thời gian tùy theo tốc độ internet của bạn.

Biên dịch lại LỢN

sudo ant clean jar-all -Dhadoopversion=23

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Xin lưu ý rằng trong quá trình biên dịch lại này, nhiều thành phần sẽ được tải xuống. Vì vậy, một hệ thống nên được kết nối với internet.

Ngoài ra, trong trường hợp quá trình này bị kẹt ở đâu đó và bạn không thấy bất kỳ chuyển động nào trên dấu nhắc lệnh trong hơn 20 phút thì hãy nhấn ctrl + c và chạy lại lệnh tương tự.

Trong trường hợp của chúng tôi, phải mất 20 phút

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 6) Kiểm tra Heo cài đặt bằng lệnh

pig -help

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Ví dụ về tập lệnh lợn

Chúng ta sẽ sử dụng Pig Script để tìm Số lượng sản phẩm được bán ở mỗi quốc gia.

Đầu vào: Tập dữ liệu đầu vào của chúng tôi là tệp CSV, Bán hàngJan2009.csv

Bước 1) Bắt đầu Hadoop

$HADOOP_HOME/sbin/start-dfs.sh
$HADOOP_HOME/sbin/start-yarn.sh

Bước 2) Pig trong Dữ liệu lớn lấy một tệp từ HDFS ở chế độ MapReduce và lưu kết quả trở lại HDFS.

Sao chép tệp Bán hàngJan2009.csv (được lưu trữ trên hệ thống tệp cục bộ, ~/input/SalesJan2009.csv) sang HDFS (Hệ thống tệp phân tán Hadoop) Thư mục chính

Ở đây trong ví dụ về Apache Pig này, tệp nằm trong đầu vào Thư mục. Nếu tệp được lưu trữ ở một vị trí khác, hãy đặt tên đó

$HADOOP_HOME/bin/hdfs dfs -copyFromLocal ~/input/SalesJan2009.csv /

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Xác minh xem một tập tin có thực sự được sao chép hay không.

$HADOOP_HOME/bin/hdfs dfs -ls /

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 3) Cấu hình lợn

Đầu tiên, điều hướng đến $PIG_HOME/conf

cd $PIG_HOME/conf
sudo cp pig.properties pig.properties.original

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Mở lợn.property bằng trình soạn thảo văn bản bạn chọn và chỉ định đường dẫn tệp nhật ký bằng cách sử dụng lợn.logfile

sudo gedit pig.properties

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Trình ghi nhật ký sẽ sử dụng tệp này để ghi lại lỗi.

Bước 4) Chạy lệnh 'pig' để khởi động dấu nhắc lệnh Pig, đây là một truy vấn shell tương tác của Pig.

pig

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 5)Trong dấu nhắc lệnh Grunt dành cho Pig, hãy thực thi các lệnh Pig bên dưới theo thứ tự.

— A. Tải file chứa dữ liệu.

salesTable = LOAD '/SalesJan2009.csv' USING PigStorage(',') AS (Transaction_date:chararray,Product:chararray,Price:chararray,Payment_Type:chararray,Name:chararray,City:chararray,State:chararray,Country:chararray,Account_Created:chararray,Last_Login:chararray,Latitude:chararray,Longitude:chararray);

Nhấn Enter sau lệnh này.

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

— B. Nhóm dữ liệu theo trường Quốc gia

GroupByCountry = GROUP salesTable BY Country;

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

— C. Với mỗi bộ trong 'GroupByCountry', tạo chuỗi kết quả có dạng-> Tên quốc gia: Số lượng sản phẩm đã bán

CountByCountry = FOREACH GroupByCountry GENERATE CONCAT((chararray)$0,CONCAT(':',(chararray)COUNT($1)));

Nhấn Enter sau lệnh này.

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

— D. Lưu kết quả của Data Flow vào thư mục 'pig_output_sale' trên HDFS

STORE CountByCountry INTO 'pig_output_sales' USING PigStorage('\t');

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Lệnh này sẽ mất một thời gian để thực hiện. Sau khi thực hiện xong, bạn sẽ thấy màn hình sau

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Bước 6) Kết quả có thể được nhìn thấy thông qua giao diện lệnh như,

$HADOOP_HOME/bin/hdfs dfs -cat pig_output_sales/part-r-00000

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Kết quả cũng có thể được nhìn thấy thông qua giao diện web như-

Kết quả thông qua giao diện web-

Mở http://localhost:50070/ trong trình duyệt web.

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

bây giờ chọn 'Duyệt hệ thống tập tin' và điều hướng tối đa /người dùng/hduser/pig_output_sale

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ

Mở phần-r-00000

Hướng dẫn Hadoop PIG: Giới thiệu, cài đặt và ví dụ