我们正试图通过spark SQL连接在tableau中生成报告,但我发现我们最终连接到hive元存储。
如果是这种情况,这个新的spark SQL连接的优点是什么。有没有办法连接到使用spark SQL从tableau持久化的spark数据帧。
答案 0 :(得分:2)
这里的问题是Tableau问题而不是Spark问题。每次连接到数据库时,Spark SQL Connector都会启动Spark作业。部分Spark作业将底层Hive表加载到Spark管理的分布式内存中,每次进行更改或在图表上选择时,刷新都必须更深入Hive Metastore才能通过Spark获取数据。这就是Tableau的设计方式。这里唯一的选择是更改Tableau for Spotfire(或其他一些工具),通过预先缓存底层Hive表,Spark SQL Connector可以直接从Spark分布式内存中查询它,跳过加载步骤。 披露:我与Spotfire制造商没有任何联系