Copyright © 2022-2024 aizws.net · 网站版本: v1.2.6·内部版本: v1.23.3·
页面加载耗时 0.00 毫秒·物理内存 67.3MB ·虚拟内存 1299.5MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
为了指定自定义处理,Pig 提供对用户定义函数(UDF) 的支持。因此,Pig 允许我们创建自己的函数。目前,Pig UDF 可以使用以下编程语言实现::
在所有语言中,Pig 为 Java 函数提供了最广泛的支持。但是,对 Python、Jython、JavaScript、Ruby 和 Groovy 等语言的支持有限。
让我们看一个简单的 EVAL 函数示例,将提供的字符串转换为大写。
UPPER.java
package com.hadoop; import java.io.IOException; import org.apache.pig.EvalFunc; import org.apache.pig.data.Tuple; public class TestUpper extends EvalFunc<String> { public String exec(Tuple input) throws IOException { if (input == null || input.size() == 0) return null; try{ String str = (String)input.get(0); return str.toUpperCase(); }catch(Exception e){ throw new IOException("Caught exception processing input row ", e); } } }
$ nano pigsample
$ hdfs dfs-put pigexample /pigexample
$ nano pscript.pig
$pig pscript.pig
在这里,我们得到了想要的输出。
Apache Pig LOAD 操作符用于从文件系统加载数据。 语法LOAD 'info' [USING FUNCTION] [AS SCHEMA];这里,LOAD 是一个关系运算符。'in ...