Этот пост содержит необходимые шаги для создания UDF в Apache Pig. Все UDF должны расширять функцию фильтра и содержать метод с именем exec, который содержит кортеж. Применяемая здесь логика заключается в том, что если кортеж равен нулю или нулю, он даст вам логическое значение: True или False. «IsofAge» предназначен для проверки правильности указанного возраста. Логика функции, определяемой пользователем, написана в кодах Java, где файл JAR будет создан и затем экспортирован. Затем файл JAR регистрируется. Эти файлы JAR находятся в файлах библиотеки Apache Pig во время загрузки.
открытый класс IsOfAge расширяет FilterFunc { @Override publicBoolean exec (кортеж кортежа) throwsIOException { if (tuple == null || tuple.size () == 0) { returnfalse } пытаться{ Объект object = tuple.get (0) if (object == null) { returnfalse } inti = (Целочисленный) объект if (i == 18 || i == 19 || i == 21 || i == 23 || i == 27) { возвращение } else { returnfalse }} catch (ExecExceptione) { thrownewIOException (e) }}}
Как позвонить свинье UDF?
После создания UDF необходимо использовать следующую команду для регистрации файла JAR.
зарегистрировать myudf.jar X = фильтр A по IsOfAge (возраст)
Шаги по созданию UDF в Pig:
В Apache Pig есть несколько предопределенных функций. У нас также есть возможность создать нашу собственную функцию, определяемую пользователем (UDF). Pig UDF написан на Java, и для этого требуется, чтобы библиотека Pig использовала предопределенные классы. Библиотека Apache Pig свинья-0.8.0-cdh3u0-core.jar можно скачать из интернета.
Щелкните здесь, чтобы узнать, как создать сценарий Pig с UDF в режиме HDFS.
Есть вопрос к нам? Упомяните их в разделе комментариев, и мы свяжемся с вами.
Пример аргументов командной строки Java
Похожие сообщения:
Скрипт Apache Pig с UDF в режиме HDFS
Операторы в Apache Pig: Часть 1 - Операторы отношения
Операторы в Apache Pig: Часть 2 - Операторы диагностики
__init__ питон