Apache Pig - Установка

В этой главе объясняется, как загрузить, установить и настроить Apache Pig в вашей системе.

Предпосылки

Перед переходом на Apache Pig необходимо, чтобы в вашей системе были установлены Hadoop и Java. Поэтому перед установкой 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.15,pig0.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 (конфигурация) ваших установок 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, введя команду версии. Если установка прошла успешно, вы получите версию Apache Pig, как показано ниже.

$ pig –version 
 
Apache Pig version 0.15.0 (r1682971)  
compiled Jun 01 2015, 11:44:35