从多个目录加载关系

  • 本文关键字:加载 关系 apache-pig orc
  • 更新时间 :
  • 英文 :


如果我们有这样的目录结构:

/hdfs/foo
/hdfs/foo/foo1
/hdfs/foo/foo2

orc文件位于foo1和foo2中。可以想象,foo下可能有任意数量的子目录。(它们是分区文件)。

如何将子目录中的所有文件加载到关系中?

我试过:

relation = LOAD '/hdfs/foo' USING OrcStorage();

这并没有给我一个错误,但是关系没有包含它应该包含的大部分数据。我真的不明白这到底是在做什么。

relation = LOAD '/hdfs/foo*' using OrcStorage();

这给我一个文件未找到异常。

relation = LOAD '/hdfs/foo/*' using OrcStorage();

这也给我一个文件未找到异常。

我做错了什么?

Pig不允许在load中使用globing(官方文档)

我们必须使用一些脚本或创建手动。

你必须做的事关系= LOAD '/hdfs{/foo/file/foo/foo/file…)' using OrcStorage();

我怀疑它的问题与OrcStorage(),我尝试与PigStorage()它的工作为我..

最新更新