我想在 pig 中编写一个自定义加载 udf 来从目录结构加载文件。
目录结构就像一个电子邮件目录。它有一个名为 maildir 的根目录。在其中我们有各个邮件持有者的子目录。在每个邮件帐户持有者目录中都有几个子目录,如收件箱、已发送、垃圾箱等。
例如:maildir/mailholdername1/inbox/1.txt maildir/mailholdername2/sent/1.txt
我只想从所有 mailerholdername 子目录中读取收件箱文件。
我无法理解:
- 应该将什么作为参数传递给负载 udf
- 应该如何解析整个目录结构,只读取相应的收件箱文件。
我想处理一个文件并执行一些数据提取并将其加载为一条记录。因此,如果有 10 个文件,我会得到一个有 10 条记录的关系此外,我想对这些收件箱文件进行一些操作并提取一些数据。