是否可以使用用户指定的记录数创建配置单元表?如何用用户指定的记录数创建Hive表?
例如,我想创建一个x行数的表(其中x由用户定义)。该表有两列1.唯一行ID [可以自动递增] 2.随机生成的字符串。
这可能使用Hive吗?
是否可以使用用户指定的记录数创建配置单元表?如何用用户指定的记录数创建Hive表?
例如,我想创建一个x行数的表(其中x由用户定义)。该表有两列1.唯一行ID [可以自动递增] 2.随机生成的字符串。
这可能使用Hive吗?
在创建表时指定的行的数目的限制可能是不可能的,但是,其可能使用LIMIT
子句
-- <filename:dbloader.sql>
create table {hiveconf:TABLENAME} (id int, string1 string)
insert into newtable
select id,string1 from oldtable limit {hiveconf:ROWLIMIT};
限制可以被插入到表中的行的数量和同时提交蜂房脚本 -
hive --hiveconf TABLENAME='XYZ' --hiveconf ROWLIMIT=1000 -f dbloader.sql
至于创建唯一的增量ID,你将不得不为它编写UDF。
你可以使用row_number()作为增量id。 –
这不回答这个问题 –
set N=7;
select pe.i+1 as n
,java_method ('org.apache.commons.lang.RandomStringUtils','randomAlphabetic',10) as str
from (select 1) x
lateral view posexplode(split(space(${hiveconf:N}-1),' ')) pe as i,x
;
+---+------------+
| n | str |
+---+------------+
| 1 | udttBCmtxT |
| 2 | kkrMQmirSG |
| 3 | iYDABgXOvW |
| 4 | DKHKgtXKPS |
| 5 | ylebKcdcGj |
| 6 | DaujBCkCtz |
| 7 | VMaWfbtzFY |
+---+------------+
附:还有你的另一篇文章 - http://stackoverflow.com/questions/42562705/how-to-generate-large-amount-of-data-using-mapreduce-process。我很好奇你为什么要删除它 –