我已经在我的K8S集群上安装了Hive Metastore。我配置了它的hive-site.xml:
<configuration>
<property>
<name>fs.s3.impl</name>
<value>org.apache.hadoop.fs.s3.S3FileSystem</value>
</property>
<property>
<name>fs.s3.endpoint</name>
<value> ip:port </value>
</property>
<property>
<name>fs.s3.path.style.access</name>
<value>true</value>
</property>
<property>
<name>fs.s3.access.key</name>
<value> {accessKey} </value>
</property>
<property>
<name>fs.s3.secret.key</name>
<value> {secret} </value>
</property>
<property>
<name>fs.s3.awsAccessKeyId</name>
<value> {accessKey} </value>
</property>
<property>
<name>fs.s3.awsSecretAccessKey</name>
<value> {secret} </value>
</property>
<property>
<name>fs.s3.connection.ssl.enabled</name>
<value>false</value>
</property>
<property>
<name>fs.s3.path.style.access</name>
<value>true</value>
</property>
字符串
我使用的是S3内部部署。当尝试通过特里诺创建一个表时,如下所示:
create table if not exists lakehouse.test_schema.test_table(
col1 varchar
) with (
location = 's3://hivetest/test_table)
型
我得到以下错误:
Got exception:java.net.UnknownHostException hivetest.s3.amazonaws.com:名称或服务未知
Iceberg的元数据文件(.avro和.json)文件是在S3位置创建的。但由于某些原因,Hive无法创建该表。
1条答案
按热度按时间vdgimpew1#
我使用的是
hadoop-aws-2.7.4.jar
,它不支持fs.s3.path.style.access
hadoop-aws.jar从版本2.8.0开始支持
fs.s3.path.style.access
。将我的hive元存储区升级到包含
hadoop.version >= 2.8.0
的较新版本可以在这里找到:https://github.com/apache/hive/blob/master/pom.xml
在不同版本中搜索
hadoop.version