Vidéo: Algorithme Pig Latin (exercice JavaScript FreeCodeCamp) 2024
Hadoop est un écosystème riche et en évolution rapide, avec un nombre croissant de nouvelles applications. Plutôt que d'essayer de suivre toutes les exigences pour de nouvelles fonctionnalités, Pig est conçu pour être extensible via fonctions définies par l'utilisateur , également appelées UDF.
Les fonctions UDF peuvent être écrites dans un certain nombre de langages de programmation, y compris Java, Python et JavaScript. Les développeurs publient et partagent également une collection croissante de fichiers UDF en ligne. (Recherchez Piggy Bank et DataFu, pour ne citer que deux exemples de telles collections en ligne.) Certaines des UDFs de Pig qui font partie de ces dépôts sont des fonctions LOAD / STORE (XML, par exemple), des fonctions de date, de texte, de maths, etc. et les fonctions de statistiques.
Pig peut également être intégré dans des langages hôtes tels que Java, Python et JavaScript, ce qui vous permet d'intégrer Pig à vos applications existantes. Il aide également à surmonter les limitations dans le langage Pig. L'une des limitations les plus fréquemment référencées est que Pig ne prend pas en charge les instructions de flux de contrôle: if / else, while loop, for loop et instructions de condition.
Pig supporte nativement le flux de données, mais doit être intégré dans une autre langue pour fournir un flux de contrôle. Il y a des compromis, cependant, d'intégration de Pig dans un langage de flux de contrôle. Par exemple, si une instruction Pig est incorporée dans une boucle, chaque fois que la boucle itère et exécute l'instruction Pig, un travail MapReduce distinct est exécuté.