Vous êtes sur la page 1sur 25

Traitement

du Big Data
TP 5
Apache Pig

Nassim Bahri M1 DSSD


Objectifs du Comprendre les concepts de base

TP de Pig

Apprendre les commandes (syntaxe


et fonctions) Pig

Analyser un fichier en utilisant le


langage Pig Latin
Présentation
Apache Pig is a platform for analyzing large data sets that consists of a high-level
language for expressing data analysis programs.

Introduit par Yahoo

Fournit une abstraction de MapReduce

Deux composants principaux :


Le langage Pig Latin
Pig execution
Présentation

Écosystème de Hadoop
Présentation

Pig et autres composants Hadoop


Pig vs MapReduce

Hight-level. Low-level.
Pas besoin d'écrire des Il faut écrire des programmes en Java,
programmes complexes. Python, etc.
Opérations intégrées : jointure, Effectuer des opérations dans
filtrage, tri, etc. MapReduce est une tâche complexe.
Types de données imbriqués : Les types de données imbriqués ne
tuples, bags , maps sont pas impliqués
Architecture
Structure de base d'un programme Pig

Contient des commandes pig


dans un fichier (*.pig).

Shell interactif pour exécuter des


commandes pig.

Exécuter des programmes Pig


à partir de Java (UDF)
Structures de données

Atom Tuple

Data Model Types

Bag Map
Structures de données

Une valeur atomique simple (int, long, float, double, chararray,


Atom
bytearray, boolean). Exemple : 'voiture', 10.11

Tuple Une séquence de champs. Exemple : ('voiture', 120)

Une collection de tuples. Exemple : {('développeur', 1500, ('java',


Bag
'sql')),('voiture', 120)}

Map Un tableau associatif. Exemple : ['Poland'#'Euro2012']


Structures de données
Structures de données

Documentation : Pig Latin Basics | Built In Functions


Tester Pig
1- Télécharger le fichier à traiter (disponible sur ce lien)

2- Placer le fichier dans votre cluster hdfs


Tester Pig
1- Démarrer MapReduce JobHistory Server
Execution engine

2- Démarrer le Grunt Shell de Pig


Initiation aux commandes Pig
1- Charger le fichier à traiter
Initiation aux commandes Pig
2- Afficher le nom et le poste de chaque employé dans la liste
Initiation aux commandes Pig
3- Afficher les employés qui travaillent à chicago
Initiation aux commandes Pig
4- Trier les employés par leurs identifiants (en ordre descendant)
Initiation aux commandes Pig
On souhaite afficher le nombre d'employés dans chaque département

1- Grouper les employés par département


Initiation aux commandes Pig
On souhaite afficher le nombre d'employés dans chaque département

1- Grouper les employés par département


Initiation aux commandes Pig
On souhaite afficher le nombre d'employés dans chaque département

2- Afficher le nom du département et le nombre d'employés (opération de


projection)
Initiation aux commandes Pig
On souhaite afficher le nombre d'employés dans chaque département

3- Sauvegarder le résultat obtenu


Pig vs Hive
Pig vs Hive
Références

https://www.edureka.co/blog/pig-tutorial/

https://pig.apache.org/

https://towardsdatascience.com/interview-with-apache-pig-theory-and-
practical-guide-6c44f06a4ca9
Merci pour votre
attention

Vous aimerez peut-être aussi