是否可以保存Hive UDTF生成的值?

时间:2017-05-30 08:08:32

标签: hadoop hive

我创建了Hive自定义UDTF。我的新UDTF基于输入2列返回新的3列。

但是,我无法通过使用生成的值进行任何print (group_double_col.xs('a', axis=0, level=0)) num_1 num_2 index_2 c 4 4 d 2 3 print (group_double_col.xs('a', axis=0, level=0, drop_level=False)) num_1 num_2 index_1 index_2 a c 4 4 d 2 3 操作。 例如,

  • INSERT
  • INSERT OVERWRITE DIRECTORY 'generated_data.csv' SELECT udtf(one, two) FROM table_orig;

两个INSERT OVERWRITE TABLE test_table SELECT udtf(one, two) FROM table_orig;查询都返回NullPointerException,如下所示:

INSERT

欢迎任何建议,谢谢!

1 个答案:

答案 0 :(得分:1)

在UDTF之后添加列列表:

INSERT OVERWRITE TABLE test_table SELECT udtf(one, two) as (col1, col2, col3) FROM table_orig;