参考资料
https://www.oracle.com/a/ocom/docs/mysql/heatwave-technical-brief.pdf
前言
我刚去MySQL官方文档查个函数,顺便发现一个新东西:HeatWave。
![](http://blog.yanpeng.space/wp-content/uploads/2021/01/HeatWave-2.png)
看起来很厉害的样子,貌似要参与OLAP架构的竞争。
我查了一下时间信息,应该是2020年底推出的新功能。
众所周知,MySQL主要是为OLTP场景设计的,OLAP一直是其短板,MySQL这次能否补足短板,在大数据时代巩固其最受欢迎开源数据库的地位?
我们进一步了解一下。
简介
HeatWave是MySQL的高性能实时分析计算架构。
其性能是MySQL Query的400倍,是Amazon Aurora的1100倍,是Amazon Redshift的2.7倍,而成本只是Aurora/Redshift的1/3。
定位
![](http://blog.yanpeng.space/wp-content/uploads/2021/01/HeatWave-7.png)
图中的Analytics Engine就是HeatWave,它是MySQL服务中一个新的引擎,用于支持OLAP分析。
价值
在有HeatWave之前,我们通常不能直接使用MySQL数据库进行OLAP分析,因为其性能不足。
于是我们往往是先将MySQL数据同步到HDFS/Hbase/Kudu等存储系统上,再使用MR/Spark/Impala等计算引擎做计算。
而HeatWave的到来貌似意味着我们可以“少此一举”。
![](http://blog.yanpeng.space/wp-content/uploads/2021/01/HeatWave-6.png)
![](http://blog.yanpeng.space/wp-content/uploads/2021/01/HeatWave-3.png)
HeatWave做了自己的分布式计算框架,与其他OLAP计算框架的区别是,HeatWave与MySQL结合封装得更好。
从运维角度看,首先不再需要做数据同步操作,因为数据存储还是MySQL的InnoDB。
在计算的时候把InnoDB的数据读到节点的内存中进行计算,此时InnoDB的更新也会即时同步。
HeatWave可以智能地自动配置集群大小,而不需要人为配置,不会浪费资源也不会资源不足。
![](http://blog.yanpeng.space/wp-content/uploads/2021/01/HeatWave-5.png)
从使用角度来看,使用者应该是无感知的,仍然是通过原有方式(JDBC/ODBC)连接和使用,能感知到的只是OLAP查询速度快了很多。
![](http://blog.yanpeng.space/wp-content/uploads/2021/01/HeatWave-4.png)
最后
我说前面怎么只跟Amazon的Aurora和Redshift对比呢,看到最后才发现,原来是Oracle云上的架构,只能在Oracle云上使用。
再见。