Hadoop 从Apache Pig中的数据派生文件名

Hadoop 从Apache Pig中的数据派生文件名,hadoop,apache-pig,Hadoop,Apache Pig,我正在处理这样一种情况,即我希望将pig脚本中的数据存储到一个文件中。这样做非常简单,但我希望文件名从数据本身派生。所以,我在数据中有一个字段作为时间戳。我想使用say MAX(timestamp)作为文件名来存储当天的所有数据 我知道这个词的用法 使用org.apache.pig.piggybank.storage.MultiStorage(“$outputDir”、“2”、“无”、“1”)将数据存储到“$outputDir” 但是这个变量“outputDir”应该作为参数传递。我想用字段的派

我正在处理这样一种情况,即我希望将pig脚本中的数据存储到一个文件中。这样做非常简单,但我希望文件名从数据本身派生。所以,我在数据中有一个字段作为时间戳。我想使用say MAX(timestamp)作为文件名来存储当天的所有数据

我知道这个词的用法 使用org.apache.pig.piggybank.storage.MultiStorage(“$outputDir”、“2”、“无”、“1”)将数据存储到“$outputDir”

但是这个变量“outputDir”应该作为参数传递。我想用字段的派生值设置这个值

任何指针都会非常有用

谢谢和问候


Atul Aggarwal

在MultiStorage中,您可以指定根目录,因为HDFS安装通常由多个用户共享,因此您不希望数据写入任何位置。因此,您不能更改根目录,但可以指定用于在该目录中生成目录名的字段(在您的案例2中)。有帮助,但我猜您已经看到了?

谢谢Mark,我以前确实看到过,但在您提到后我又看了一遍。据我从API了解,似乎我必须同时使用outputdir和在Multistorage的第二个参数中指定位置。唯一的问题是它会创建另一个目录under基本目录。但我相信这应该不是问题。谢谢你的回复。Atul Aggarwal