Hive UDTF - 无法通过getFieldName获取字段名称,它返回_col0,_col1

时间:2016-01-08 06:18:18

标签: hadoop hive hiveql

我正在使用Hive UDTF来转换主键周围的每一行。作为需求的一部分,我需要将列名和相应的数据与密钥相关联。

   preg_match_all("/\d{4}\/\d{2}\/\d{2}/", $temp, $match);
   echo '<pre>'; print_r($match[0]);exit;

Hive UDTF会将数据转换为以下

Array
(
    [0] => 2016/01/08
    [1] => 2016/01/09
    [2] => 2016/01/10
    [3] => 2016/01/11
    [4] => 2016/01/12
    [5] => 2016/01/13
)

我已经写了udtf,它正在运行,目前正在生成以下数据

e.g.
Source Data

Customer_id    Customer_name     Customer_type
1000000        ABCD              Individual

这里是Key att_name att_val 10000000 customer_name ABCD 10000000 customer_type Individual 返回_col0而不是customer_name的代码。

这可能是apache配置单元中的一个可能的缺陷,或者还有另一个_col0映射到我应该引用的实际模式。

Key          att_name       att_val
10000000     _col0          ABCD
10000000     _col1          Individual

0 个答案:

没有答案