Apache Pig - Installation

Ce chapitre explique comment télécharger, installer et configurer Apache Pig dans votre système.

Conditions préalables

Il est essentiel que Hadoop et Java soient installés sur votre système avant de passer à Apache Pig. Par conséquent, avant d'installer Apache Pig, installez Hadoop et Java en suivant les étapes indiquées dans le lien suivant -

Télécharger Apache Pig

Tout d'abord, téléchargez la dernière version d'Apache Pig à partir du site Web suivant - https://pig.apache.org/

Étape 1

Ouvrez la page d'accueil du site Web Apache Pig. Sous la sectionNews, Clique sur le lien release page comme illustré dans l'instantané suivant.

Étape 2

En cliquant sur le lien spécifié, vous serez redirigé vers le Apache Pig Releasespage. Sur cette page, sous leDownload section, vous aurez deux liens, à savoir, Pig 0.8 and later et Pig 0.7 and before. Clique sur le lienPig 0.8 and later, vous serez alors redirigé vers la page contenant un ensemble de miroirs.

Étape 3

Choisissez et cliquez sur l'un de ces miroirs comme indiqué ci-dessous.

Étape 4

Ces miroirs vous mèneront au Pig Releasespage. Cette page contient différentes versions d'Apache Pig. Cliquez sur la dernière version parmi eux.

Étape 5

Dans ces dossiers, vous aurez les fichiers source et binaire d'Apache Pig dans diverses distributions. Téléchargez les fichiers tar des fichiers source et binaire d'Apache Pig 0.15,pig0.15.0-src.tar.gz et pig-0.15.0.tar.gz.

Installez Apache Pig

Après avoir téléchargé le logiciel Apache Pig, installez-le dans votre environnement Linux en suivant les étapes ci-dessous.

Étape 1

Créez un répertoire avec le nom Pig dans le même répertoire où les répertoires d'installation de Hadoop, Java,et d'autres logiciels ont été installés. (Dans notre tutoriel, nous avons créé le répertoire Pig dans l'utilisateur nommé Hadoop).

$ mkdir Pig

Étape 2

Extrayez les fichiers tar téléchargés comme indiqué ci-dessous.

$ cd Downloads/ 
$ tar zxvf pig-0.15.0-src.tar.gz 
$ tar zxvf pig-0.15.0.tar.gz

Étape 3

Déplacer le contenu de pig-0.15.0-src.tar.gz fichier au Pig répertoire créé précédemment comme indiqué ci-dessous.

$ mv pig-0.15.0-src.tar.gz/* /home/Hadoop/Pig/

Configurer Apache Pig

Après avoir installé Apache Pig, nous devons le configurer. Pour configurer, nous devons éditer deux fichiers -bashrc and pig.properties.

fichier .bashrc

dans le .bashrc fichier, définissez les variables suivantes -

  • PIG_HOME dossier dans le dossier d'installation d'Apache Pig,

  • PATH variable d'environnement dans le dossier bin, et

  • PIG_CLASSPATH dans le dossier etc (configuration) de vos installations Hadoop (le répertoire contenant les fichiers core-site.xml, hdfs-site.xml et mapred-site.xml).

export PIG_HOME = /home/Hadoop/Pig
export PATH  = $PATH:/home/Hadoop/pig/bin
export PIG_CLASSPATH = $HADOOP_HOME/conf

fichier pig.properties

dans le conf dossier de Pig, nous avons un fichier nommé pig.properties. Dans le fichier pig.properties, vous pouvez définir divers paramètres comme indiqué ci-dessous.

pig -h properties

Les propriétés suivantes sont prises en charge -

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.

Vérification de l'installation

Vérifiez l'installation d'Apache Pig en tapant la commande version. Si l'installation réussit, vous obtiendrez la version d'Apache Pig comme indiqué ci-dessous.

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