1

我正在尝试将我的 Hive 元数据迁移到 Glue。迁移 delta 表时,当我提供相同的 dbfs 路径时,出现错误 - “无法创建表:关联位置不为空。

当我尝试在 S3 位置创建相同的增量表时,它工作正常。

有没有办法找到数据库指向的 DBFS 路径的 S3 位置?

4

1 回答 1

0

首先将 Databricks Runtime 配置为使用 AWS Glue 数据目录作为其元存储,然后迁移增量表。

每个 Databricks 部署都有一个中央 Hive 元存储,所有集群都可以访问以持久化表元数据。您可以选择使用现有的外部 Hive 元存储实例或 AWS Glue 目录,而不是使用 Databricks Hive 元存储。

Databricks 文件系统 (DBFS) 是安装在 Databricks 工作区中的分布式文件系统,可在 Databricks 集群上使用。DBFS 是可扩展对象存储之上的抽象,具有以下优点:

  • 允许您挂载存储对象,以便无需凭据即可无缝访问数据。
  • 允许您使用目录和文件语义而不是存储 URL 与对象存储进行交互。
  • 将文件保存到对象存储中,因此您在终止集群后不会丢失数据。

有没有办法找到数据库指向的 DBFS 路径的 S3 位置?

您可以通过使用 DBFS 或直接使用 API 挂载存储桶来访问 AWS S3 存储桶。

参考:“ Databricks - Amazon S3

希望这可以帮助。

于 2019-10-30T05:08:27.437 回答