Hive 如何在将配置单元数据移动到DynamoDB时设置默认列值

Hive 如何在将配置单元数据移动到DynamoDB时设置默认列值,hive,amazon-dynamodb,Hive,Amazon Dynamodb,我想在将HDFS数据复制到Dynamo时设置默认的范围键值。到目前为止,我有一个直接映射,其中输入为3列,DB为3列: 创建外部表hdfs\u表(a列字符串、b列字符串、c列字符串) 行格式分隔字段,以“\t”行结尾,以“\n”行结尾 位置“hdfs:///blahblah"; 创建外部表dynamodb_表(c1字符串、c2字符串、c3字符串) 由“org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler”存储 TBLProperty(“dy

我想在将HDFS数据复制到Dynamo时设置默认的范围键值。到目前为止,我有一个直接映射,其中输入为3列,DB为3列:

创建外部表hdfs\u表(a列字符串、b列字符串、c列字符串)
行格式分隔字段,以“\t”行结尾,以“\n”行结尾
位置“hdfs:///blahblah";
创建外部表dynamodb_表(c1字符串、c2字符串、c3字符串)
由“org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler”存储
TBLProperty(“dynamodb.table.name”=“output\u table”,
“dynamodb.column.mapping”=“c1:id,c2:timestamp,c3:data”);
插入覆盖表dynamodb_表从hdfs_表中选择*;

我用范围键建立了一个新的输出表,基本上是第四列。我想将range键设置为作为参数传递给脚本的值。我想我想做一些类似于
sqlalter
setdefault
的事情。我不确定hive是否支持SQL类型的Alter和Set默认命令!您可以尝试一种间接的方法,在hdfs_表的列中插入一个新列。比如说,

INSERT into TABLE new_table SELECT hdfs_table.a_col, hdfs_table.b_col, hdfs_table.c_col, 
case when([your condition]) then [set your default value] end as d_col
FROM hdfs_table