2

猪新手。

我正在将数据加载到这样的关系中:

raw_data = LOAD '$input_path/abc/def.*;

它工作得很好,但如果找不到任何匹配 def.* 的文件,整个脚本就会失败。

当没有匹配项时,这是一种继续脚本其余部分的方法吗?只产生一个空集?

我试着做:

raw_data = LOAD '$input_path/abc/def.* ONERROR Ignore();

但这并没有解析。

4

2 回答 2

1

您可以编写返回文件或空元组的自定义加载 UDF。

http://wiki.apache.org/pig/UDFManual

于 2013-09-06T19:48:18.953 回答
0

不,没有这样的功能,至少我听说过的没有。另外我会说“产生一个空集”是“根本不运行脚本”。

如果您不想在某些情况下运行 Pig 脚本,那么我建议使用包装器 shell 脚本或 Pig 嵌入: http: //pig.apache.org/docs/r0.11.1/cont.html

于 2013-09-05T13:33:04.723 回答