【发布时间】:2014-04-15 11:47:06
【问题描述】:
我必须使用 hive 创建一个表。但我想用自动增量列创建该表。
我已经用谷歌搜索但无法找到确切的答案。 如果有人知道它的语法。请分享。
提前致谢。
【问题讨论】:
我必须使用 hive 创建一个表。但我想用自动增量列创建该表。
我已经用谷歌搜索但无法找到确切的答案。 如果有人知道它的语法。请分享。
提前致谢。
【问题讨论】:
您需要为此使用 UDF(用户定义函数)。我已在此链接中成功使用了 UDF http://svn.apache.org/repos/asf/hive/trunk/contrib/src/java/org/apache/hadoop/hive/contrib/udf/UDFRowSequence.java
您可以通过this very helpful tutorial进一步了解 UDF 在 Hive 中的使用。
【讨论】:
INSERT INTO TEST_INC SELECT
reflect("java.util.UUID", "randomUUID"), test1, test2, test3 from TEST;
例如。
【讨论】:
您必须为此编写一个 UDF。看看下面的 Jira 讨论
https://issues.apache.org/jira/browse/HIVE-1304。
下载下面的patch文件试试看
这只能应用于小输入。由于在 reducer 中使用了 UDF row_sequence(),因此 reducer 计数应保持为 1 以保持自增字段不同
【讨论】: