Scripting mit Schwein-Latein in Hadoop

Hadoop ist eine reiche und sich schnell entwickelnde Ökosystem mit einer wachsenden Reihe von neuen Anwendungen. Anstatt zu versuchen, mit allen Anforderungen für neue Fähigkeiten zu halten, ist Pig entworfen über sein erweiterbar benutzerdefinierte Funktionen, auch als UDF bekannt.

SEF können in einer Anzahl von Programmiersprachen geschrieben werden, einschließlich Java, Python, und javascript. Die Entwickler sind auch die Entsendung und Online eine wachsende Sammlung von benutzerdefinierten Funktionen zu teilen. (Suchen Sie nach Piggy Bank und DataFu, um nur zwei Beispiele für solche Online-Sammlungen.) Einige der Pig UDF, die Teil dieser Repositories sind LOAD / STORE-Funktionen (XML, zum Beispiel) sind, Datum Zeitfunktionen, Text, Mathe, und Statistik-Funktionen.

Schwein können auch in den Host-Sprachen wie Java, Python und javascript eingebettet werden, die Sie Schwein mit vorhandenen Anwendungen zu integrieren. Es hilft auch Einschränkungen zu überwinden in der Pig Sprache. Eines der am häufigsten erwähnten Einschränkungen ist, dass Schwein nicht die Kontrolle Flussrechnung unterstützt: if / else, while-Schleife für Schleife und Bedingungsanweisungen.

Pig nativ unterstützt Datenfluss, muss aber in einer anderen Sprache eingebettet werden Steuerfluss zu sorgen. Es gibt Vor- und Nachteile, aber Schwein der Einbettung in eine Steuerfluss Sprache. Zum Beispiel, wenn ein Schwein-Anweisung in einer Schleife eingebettet ist, bewirkt, dass jedes Mal die iteriert Schleife und führt das Schwein Aussage, dies über einen separaten MapReduce Job auszuführen.

Menü