作为标题,我已成功在我的Ubuntu上安装了DynamoDB本地和HiveSQL。但是在命令行中运行Hive查询以创建表为
CREATE EXTERNAL TABLE Hive_ProductCatalog
(Id string,Title string)
STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler'
TBLPROPERTIES (
"dynamodb.table.name" = "ProductCatalog",
"dynamodb.column.mapping" = "Id:Id,Title:Title");
然后我收到了错误
异常org.apache.hadoop.hive.ql.metadata.HiveException失败:加载存储时遇到错误handler.org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler FAILED:执行错误,从org.apache.hadoop.hive.ql.exec.DDLTask返回代码1
我在Google上看了一下,但没有找到DynamoDBStorageHandler类的库放入Hive的lib文件夹。
答案 0 :(得分:1)
DynamoDBStorageHandler可供在AMI上运行Hive查询的客户使用,这些查询是为EMR作业配置的。相反,您可以考虑将dynamodb.endpoint设置为运行DynamoDB Local的主机。这样,您就可以使用DynamoDB Local作为Hive查询的后端。