您好,我在 azure 上创建了一个 Spark HD Insight 集群,我正在尝试使用 pyspark 读取 Hive 表,但问题是它仅向我显示默认数据库
有人有想法吗?
最佳答案
如果您使用 HDInsight 4.0,Spark 和 Hive 不再共享元数据。
默认情况下,您不会看到来自 pyspark 的配置单元表,这是我在这篇文章中分享的一个问题:How save/update table in hive, to be readbale on spark .
但是,无论如何,你可以尝试的事情:
- 如果您只想在头节点上进行测试,可以更改 hive-site.xml,在属性“metastore.catalog.default”上,将值更改为hive,之后从命令行打开 pyspark。
- 如果要应用到所有集群节点,需要在 Ambari 上进行更改。
- 以管理员身份登录 ambari
- 转到 Spark2 > 配置 > hive-site-override
- 再次将属性“metastore.catalog.default”更新为hive值
- 重新启动 Ambari 面板上所需的所有内容
这些更改将 hive 元存储目录定义为默认值。 您现在可以看到 Hive 数据库和表,但根据表结构,您将无法正确看到表数据。
关于azure - 我如何使用 pyspark 显示配置单元表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71230121/