我正在使用Apache-Spark,在我的项目中,我想使用Spark-SQL。但是,我必须确保Spark-SQL的查询性能。我知道Spark-SQL不像RDBMS那样有效。但我想知道Spark-SQL和RDBMS查询之间的时间差距是否太大?
例如,我正在使用具有4 GB RAM和1个核心CPU的虚拟机。这是一个缓慢的系统。我有一个包含2个表的小数据集。第一个有5M记录,第二个有1K记录。当我加入两个表时,查询大约需要60秒。使用这个硬件的Spark-SQL是正常的吗?如果我使用RDBMS进行相同的连接操作,则花费的时间太少,但我无法在办公室使用物理限制进行测试。
最后一个问题:如何减少Spark-SQL中的查询时间?
答案 0 :(得分:-1)
我认为问题在于虚拟机。我在同一条船上,最后做的是在Windows上安装Spark(你可以这样做,只是google它)。性能要好得多(我有一台4核笔记本电脑,4GB内存和ssd硬盘)。
Spark-SQL非常强大,具体取决于您的需求。您与性能的比较将是惊人的,但您需要以不同于常规RDBMS中的方式执行/实现事物。