1

我有一个带有水平模式记录的文本文件,如何使用 PIG Latin 将此文件加载到关系中。

文件具有患者 ID 和患者姓名。

文件中的数据:001 Rakesh 005 Samir 006 Daksh 010 Kapil 456 Sachin...等

4

2 回答 2

1

我不知道有任何开箱即用的加载器会以您的格式加载数据。你有两个选择。

  1. 编写自定义LoadFunc
  2. 修改您的输入文件,以便每行只有一条记录。然后你就可以使用PigStorage
于 2013-10-14T17:47:11.573 回答
1

您应该预处理您的数据,或者您可以加载您的文件并创建一个 UDF 来拆分它。

如果您想对数据进行预处理,我建议您使用 Ruby 或 Python 等方便的语言创建一个脚本来完成这项工作。

在这里寻找Python

或者,如果你想创建一个 UDF,你可以使用 Google Guava 库来分割行,然后使用元组创建一个错误的输出。

在此处查找Google Guava 示例。

当然,您必须小心,因为这些方法可能存在可伸缩性问题。

于 2013-10-17T10:48:56.630 回答