我想知道是否有可能使用Hive在AWS上有一个指向DynamoDB表的外部表。我没有使用AWS EMR,我使用的是通过Apache Ambari配置的Hadoop Stack。
配置单元版本:配置单元3.1.0.3.1.4.0-315
我所做的是:直接从maven存储库下载了EMR Dynamo-Hive连接器JARS:https://mvnrepository.com/artifact/com.amazon.emr
我把所有的罐子都装在hive.aux.jars.path:
emr-dynamodb-hadoop-4.12.0.jar
emr-dynamodb-hive-4.12.0.jar
emr-dynamodb-tools-4.12.0.jar
hive1.2-shims-4.12.0.jar
hive1-shims-4.12.0.jar
hive2-shims-4.12.0.jar
hive2-shims-4.15.0.jar
shims-common-4.12.0.jar
shims-loader-4.12.0.jar
但是当我试图创建表时:
CREATE EXTERNAL TABLE dynamo_LabDynamoHive
(id double, nome string)
STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler'
TBLPROPERTIES (
"dynamodb.table.name" = "LabDynamoHive",
"dynamodb.column.mapping" = "id:id,nome:nome"
);
我得到以下错误:
INFO : Starting task [Stage-0:DDL] in serial mode
ERROR : FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Shim class for Hive version 3.1.1000 does not exist
INFO : Completed executing command(queryId=hive_20200422142624_6ebabdc8-8942-4025-84a8-411505d20895); Time taken: 0.203 seconds
Error: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Shim class for Hive version 3.1.1000 does not exist (state=08S01,code=1)
我知道我没有为Hive 3加载填隙片罐,但我想知道你们中是否有人尝试并成功地在EMR之外使用Hive 3的DynamoDB外部表。
任何帮助或指导都将不胜感激!
问题显然是这个EMR连接器的源代码有些过时,缺乏AWS最近为EMR 6.0引入的Hive 3. x支持。
但是,您可以在这里找到一个工作正常的3.1实现,它来自官方的EMR连接器:https://github.com/ramsesrm/emr-dynamodb-connector
安装步骤如下:1-编译上述代码(mvn clean package)2-在您的蜂箱中安装3个JAR。辅助的。罐。path,以及aws的aws java sdk core和aws java sdk dynamodb JAR(不需要垫片JAR),共5个。
就是这样。如果您没有使用默认的US,请不要忘记将该区域指定为TBLPROPERTIES。
我在Windows7上本地安装DynamoDB。我的项目是一个Node.js(0.12.0),我使用AWS-SDK。
我目前使用Amazon/Dynamodb-local映像在Docker容器中运行Dynamodb-local。 容器启动,我可以通过AWS CLI手动创建必要的表。 然而,在这一点上,我需要在容器初始启动时创建表。 如果我使用dockerfile,我认为我需要创建一个具有以下内容的映像:-Python(用于使用PIP安装AWS CLI)-PIP-AWS CLI-DynamoDB Local 我还可
样式表的作用是控制网页样式,只有创建样式表,并把它应用到网页中,才能发挥样式表的作用。 创建外部样式表 外部样式表,是在网页外部的样式表文件中定义的样式。由于这些样式并不是HTML文档的一部分,而是在HTML文档的外部独立存在,故称外部样式表。 样式表文件是纯文本文件,可以使用任何文本编辑器来编辑,这里使用Windows自带的记事本,来创建外部样式表。步骤如下: 1)在Windows系统中,点击开
我是azure databricks的新手,正在尝试创建一个外部表,指向Azure Data Lake Storage(ADLS)Gen-2位置。 我尝试从数据库笔记本设置ADLS访问的火花配置。我仍然无法执行创建的DDL。 注意:一个适合我的解决方案是将ADLS帐户装载到集群,然后使用外部表的DDL中的装载位置。但我需要检查是否可以使用ADLS路径创建一个外部表DDL,而无需安装位置。 数据链路
我们可以从AWS控制台创建、编辑、删除组来维护DynamoDb表的逻辑分组。我搜索了AWS文档和论坛,但没有找到如何使用CloudFormation创建DynamoDb表组的方法,也没有找到如何使用AWS.NET SDK在组内创建表的方法。这可能吗?
我想像这样用resideMenu创建一个应用程序。怎么做?或者有什么有用的库可以帮助实现它?谢谢!