首页 > 解决方案 > 如何从 Hive 更新 DynamoDB 表

问题描述

我创建了一个连接到 DynamoDB 的外部 Hive 表,因此我可以将数据从 Hive 插入到 DynamoDB 表中。但是现在,我希望能够更新表格。我试图在 Hive 表上启用事务,以便我可以在 Hive 表上使用更新命令。但我得到了错误:

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:The table must be bucketed and stored using an ACID compliant format (such as ORC))

所以,我的问题是如何从 Hive 更新 DynamoDB 表?

标签: amazon-web-serviceshivesql-updateamazon-dynamodb

解决方案


我认为您需要在配置单元脚本的顶部添加以下内容:

SET hive.txn.manager = org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
SET hive.enforce.bucketing = true;

并且可能还有并发:

SET hive.support.concurrency = true;

并且文档似乎表明更新的 dynamodb 非常简单:

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EMRforDynamoDB.Tutorial.CopyDataToDDB.html


推荐阅读