我们最近开始在一个新项目(版本emr-5.11.0)中使用amazonemr,我们在emr集群中做了一些架构上的改变
1) 我们将metastore移动到另一个postgres示例,而不是默认的mysql/derby
2) 在另一个示例(不属于amazonemr集群)中运行metastore服务,并在hive-site.xml中进行了必要的更改。
电子病历
stop hive-hcatalog-server
在新示例中
hive --service metastore
除了“s3 external tables”之外,其他一切都按预期工作。当我尝试创建一个外部s3表时,它会给我们一个错误,如下所示
message:java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.s3a.S3AFileSystem not found
我们尝试使用s3/s3n/s3a,同时使用凭据来创建外部表。如果我们在emr主节点内运行metastore服务并运行相同的查询,那么它可以正常工作。我们需要在metastore示例中进行任何配置/添加额外的库才能工作吗?
注意:metastore示例有apache hadoop和hive最新的二进制文件。我们使用hdfs文件系统。能够执行除外部s3表以外的所有操作。尝试了beeline和hive cli的所有操作
暂无答案!
目前还没有任何答案,快来回答吧!