Video: Words at War: The Ship / From the Land of the Silent People / Prisoner of the Japs 2025
Hadoop er et rigt og hurtigt udviklende økosystem med et voksende sæt nye applikationer. I stedet for at forsøge at holde op med alle kravene til nye muligheder, er Pig designet til at blive udvidet via brugerdefinerede funktioner , også kendt som UDF'er.
UDF'er kan skrives i en række programmeringssprog, herunder Java, Python og JavaScript. Udviklere sender også og deler en voksende samling UDF'er online. (Se efter Sparegris og DataFu, for blot at nævne to eksempler på sådanne online-samlinger.) Nogle af de Pig UDF'er, der er en del af disse lagre, er LOAD / STORE-funktioner (XML, for eksempel), dato tidsfunktioner, tekst, matematik, og statsfunktioner.
Gris kan også indlejres i værtssprog som Java, Python og JavaScript, som giver dig mulighed for at integrere grise med dine eksisterende applikationer. Det hjælper også med at overvinde begrænsninger i svinesproget. En af de mest omtalte begrænsninger er, at svin ikke understøtter kontrolstrøm udsagn: hvis / ellers, mens sløjfe, for sløjfe og tilstandsudsagn.
Gris understøtter datastrømmen, men skal indlejres på et andet sprog for at give kontrolflow. Der er imidlertid afvigelser om indlejring af svin i et kontrol-flow-sprog. For eksempel hvis en svinerklæring er indlejret i en loop, hver gang sløjfen gentager og kører svinerklæringen, forårsager dette et separat MapReduce-job at køre.