EMR Spark Relational Cache的执行计划重写

  1. 云栖社区>
  2. 阿里云E-MapReduce(EMR)>
  3. 博客>
  4. 正文

EMR Spark Relational Cache的执行计划重写

开源大数据EMR 2019-06-17 16:07:32 浏览8017
展开阅读全文

作者:王道远,花名健身, 阿里巴巴计算平台EMR技术专家。

背景

EMR Spark提供的Relational Cache功能,可以通过对数据模型进行预计算和高效地存储,加速Spark SQL,为客户实现利用Spark SQL对海量数据进行即时查询的目的。Relational Cache的工作原理类似物化视图,在用户提交SQL语句时对语句进行分析,并选出可用的预计算结果来加速查询。为了实现高效地预计算结果复用,我们构建的预计算缓存一般都较为通用,因此对于用户query,还需进行进一步的计算方能获得最终结果。因此,如何快速地找出匹配的缓存,并构建出准确的新执行计划,就显得尤为重要。

在Hive 3.x中支持的Materialized View,利用了Apache Calcite对执行计划进行重写。考虑到Spark SQL使用Catalys

网友评论

登录后评论
0/500
评论
开源大数据EMR
+ 关注
所属云栖号: 阿里云E-MapReduce(EMR)