Apache Pig - การติดตั้ง
บทนี้จะอธิบายวิธีการดาวน์โหลดติดตั้งและตั้งค่า Apache Pig ในระบบของคุณ
ข้อกำหนดเบื้องต้น
จำเป็นอย่างยิ่งที่คุณต้องติดตั้ง Hadoop และ Java ในระบบของคุณก่อนที่คุณจะไปใช้งาน Apache Pig ดังนั้นก่อนติดตั้ง Apache Pig ให้ติดตั้ง Hadoop และ Java โดยทำตามขั้นตอนที่ระบุในลิงค์ต่อไปนี้ -
http://www.tutorialspoint.com/hadoop/hadoop_enviornment_setup.htm
ดาวน์โหลด Apache Pig
ก่อนอื่นให้ดาวน์โหลดเวอร์ชันล่าสุดของ Apache Pig จากเว็บไซต์ต่อไปนี้ - https://pig.apache.org/
ขั้นตอนที่ 1
เปิดหน้าแรกของเว็บไซต์ Apache Pig ภายใต้ส่วนNews, คลิกที่ลิงค์ release page ดังแสดงในภาพรวมต่อไปนี้
ขั้นตอนที่ 2
เมื่อคลิกลิงก์ที่ระบุคุณจะถูกเปลี่ยนเส้นทางไปยังไฟล์ Apache Pig Releasesหน้า. ในหน้านี้ภายใต้Download คุณจะมีสองลิงค์กล่าวคือ Pig 0.8 and later และ Pig 0.7 and before. คลิกที่ลิงค์Pig 0.8 and laterจากนั้นคุณจะถูกเปลี่ยนเส้นทางไปยังหน้าที่มีชุดกระจก
ขั้นตอนที่ 3
เลือกและคลิกกระจกบานใดก็ได้ตามที่แสดงด้านล่าง
ขั้นตอนที่ 4
กระจกเหล่านี้จะพาคุณไปที่ Pig Releasesหน้า. หน้านี้มี Apache Pig เวอร์ชันต่างๆ คลิกเวอร์ชันล่าสุดจากนั้น
ขั้นตอนที่ 5
ภายในโฟลเดอร์เหล่านี้คุณจะมีซอร์สและไฟล์ไบนารีของ Apache Pig ในรูปแบบต่างๆ ดาวน์โหลดไฟล์ tar ของซอร์สและไฟล์ไบนารีของ Apache Pig 0.15pig0.15.0-src.tar.gz และ pig-0.15.0.tar.gz.
ติดตั้ง Apache Pig
หลังจากดาวน์โหลดซอฟต์แวร์ Apache Pig แล้วให้ติดตั้งในระบบ Linux ของคุณโดยทำตามขั้นตอนด้านล่าง
ขั้นตอนที่ 1
สร้างไดเร็กทอรีที่มีชื่อ Pig ในไดเร็กทอรีเดียวกับที่ไดเร็กทอรีการติดตั้งของ Hadoop, Java,และซอฟต์แวร์อื่น ๆ ได้รับการติดตั้ง (ในบทช่วยสอนของเราเราได้สร้างไดเร็กทอรี Pig ในผู้ใช้ชื่อ Hadoop)
$ mkdir Pig
ขั้นตอนที่ 2
แตกไฟล์ tar ที่ดาวน์โหลดมาดังแสดงด้านล่าง
$ cd Downloads/
$ tar zxvf pig-0.15.0-src.tar.gz
$ tar zxvf pig-0.15.0.tar.gz
ขั้นตอนที่ 3
ย้ายเนื้อหาของ pig-0.15.0-src.tar.gz ไฟล์ไปยังไฟล์ Pig ไดเร็กทอรีที่สร้างขึ้นก่อนหน้านี้ดังที่แสดงด้านล่าง
$ mv pig-0.15.0-src.tar.gz/* /home/Hadoop/Pig/
กำหนดค่า Apache Pig
หลังจากติดตั้ง Apache Pig เราต้องกำหนดค่า ในการกำหนดค่าเราต้องแก้ไขสองไฟล์ -bashrc and pig.properties.
ไฟล์. bashrc
ใน .bashrc ไฟล์กำหนดตัวแปรต่อไปนี้ -
PIG_HOME ไปยังโฟลเดอร์การติดตั้งของ Apache Pig
PATH ตัวแปรสภาพแวดล้อมไปยังโฟลเดอร์ bin และ
PIG_CLASSPATH ตัวแปรสภาพแวดล้อมไปยังโฟลเดอร์ etc (configuration) ของการติดตั้ง Hadoop ของคุณ (ไดเร็กทอรีที่มีไฟล์ core-site.xml, hdfs-site.xml และ mapred-site.xml)
export PIG_HOME = /home/Hadoop/Pig
export PATH = $PATH:/home/Hadoop/pig/bin
export PIG_CLASSPATH = $HADOOP_HOME/conf
pig.properties ไฟล์
ใน conf โฟลเดอร์ของ Pig เรามีไฟล์ชื่อ pig.properties. ในไฟล์ pig.properties คุณสามารถตั้งค่าพารามิเตอร์ต่างๆตามที่ระบุด้านล่าง
pig -h properties
รองรับคุณสมบัติต่อไปนี้ -
Logging: verbose = true|false; default is false. This property is the same as -v
switch brief=true|false; default is false. This property is the same
as -b switch debug=OFF|ERROR|WARN|INFO|DEBUG; default is INFO.
This property is the same as -d switch aggregate.warning = true|false; default is true.
If true, prints count of warnings of each type rather than logging each warning.
Performance tuning: pig.cachedbag.memusage=<mem fraction>; default is 0.2 (20% of all memory).
Note that this memory is shared across all large bags used by the application.
pig.skewedjoin.reduce.memusagea=<mem fraction>; default is 0.3 (30% of all memory).
Specifies the fraction of heap available for the reducer to perform the join.
pig.exec.nocombiner = true|false; default is false.
Only disable combiner as a temporary workaround for problems.
opt.multiquery = true|false; multiquery is on by default.
Only disable multiquery as a temporary workaround for problems.
opt.fetch=true|false; fetch is on by default.
Scripts containing Filter, Foreach, Limit, Stream, and Union can be dumped without MR jobs.
pig.tmpfilecompression = true|false; compression is off by default.
Determines whether output of intermediate jobs is compressed.
pig.tmpfilecompression.codec = lzo|gzip; default is gzip.
Used in conjunction with pig.tmpfilecompression. Defines compression type.
pig.noSplitCombination = true|false. Split combination is on by default.
Determines if multiple small files are combined into a single map.
pig.exec.mapPartAgg = true|false. Default is false.
Determines if partial aggregation is done within map phase, before records are sent to combiner.
pig.exec.mapPartAgg.minReduction=<min aggregation factor>. Default is 10.
If the in-map partial aggregation does not reduce the output num records by this factor, it gets disabled.
Miscellaneous: exectype = mapreduce|tez|local; default is mapreduce. This property is the same as -x switch
pig.additional.jars.uris=<comma seperated list of jars>. Used in place of register command.
udf.import.list=<comma seperated list of imports>. Used to avoid package names in UDF.
stop.on.failure = true|false; default is false. Set to true to terminate on the first error.
pig.datetime.default.tz=<UTC time offset>. e.g. +08:00. Default is the default timezone of the host.
Determines the timezone used to handle datetime datatype and UDFs.
Additionally, any Hadoop property can be specified.
ตรวจสอบการติดตั้ง
ตรวจสอบการติดตั้ง Apache Pig โดยพิมพ์คำสั่ง version หากการติดตั้งสำเร็จคุณจะได้รับ Apache Pig เวอร์ชันดังที่แสดงด้านล่าง
$ pig –version
Apache Pig version 0.15.0 (r1682971)
compiled Jun 01 2015, 11:44:35