如何防止spark sql+power bi-oom

unftdfkk  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(339)

现在我正在测试sparksql,就像测试microsoftpowerbi的查询引擎一样。我所拥有的:
一个巨大的Cassandra表格,里面有我需要分析的数据。
amazon服务器,8核,16gb内存。
此服务器上的spark thrift服务器。spark版本-1.6.1
Map到巨大cassandra表的配置单元表。 create table data using org.apache.spark.sql.cassandra options (cluster 'Cluster', keyspace 'myspace', table 'data') ;
一切正常,直到我试图连接电源biSpark。问题是powerbi试图从巨大的cassandra表中获取所有数据。显然,spark thrift服务器因oom错误而崩溃。在这种情况下,我不能仅仅将ram添加到spark thrift服务器,因为包含原始数据的cassandra表非常庞大。另外,我不能依赖于自定义的初始查询在双边,因为每次用户忘记设置这个查询服务器将崩溃。我看到的最好的方法是以某种方式自动 Package 来自bi的所有查询

SELECT * FROM (... BI select ...) LIMIT 1000000

对于当前的用例来说是可以的。那么,在服务器端有可能吗?我该怎么做?如果没有,我如何才能防止spark thrift服务器崩溃?在获得oom之前是否有可能删除或取消大量查询?谢谢。

ax6ht2ek

ax6ht2ek1#

好吧,我找到一个神奇的配置选项来解决我的问题:
spark.sql.thriftserver.incrementalcollect=真
设置此选项后,spark将使用卷的查询获取的数据拆分为块

相关问题