我在datastax 4.6中有4个节点集群,有2个spark,1个solr和1个cassnadra节点。我正在使用java从远程服务器请求sparksql查询执行(使用hive上下文)。在这个过程中,每当我连接到spark并使用hivecontext时,查询执行最多需要2分钟。可能是由于Hive Metastore而且随着表数量的增加,其执行时间也会增加。
有人可以建议任何解决方案吗?对象/连接池是这样的吗?
由于
答案 0 :(得分:0)
Spark能够通过以懒惰的方式将数据拉入RDD来优化地图缩减。与Hadoop不同,它只在必要时从磁盘读取,并将数据缓存在内存中以便更快地访问。
当您在Spark中阅读Cassandra时,有一些可调参数和一些最佳实践可以帮助您优化性能:
您是否尝试过比较SparkSQL和HiveContext之间的性能?虽然SparkSQL还没有完全成熟,但是在长期的情况下它仍将继续开发和改进,而蜂巢环境可能不会。尽可能使用SparkSQL。