Oracle云时代MySQL HTAP解决方案

发布时间:2021年02月07日 阅读:41 次

宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取!


Oracle Cloud 在2020年终于大张旗鼓的上线了推动,终于搞出来一个本地MySQL和线上MySQL大差异点云上HTAP MySQL方案:MySQL HeatWave。架构如下:


      在MySQL HeatWave架构下实现了数据请求单一入口,数据写入先写InnoDB,如果该表定义为Rapid引擎,同时从会InnoDB则推送给HeatWave; 对于SELECT请求,优化器会判断,如果从InnoDB中请求快,则从InnoDB层请求数据返回,如果涉及到复杂运算则从HeatWave中请求及返回。可以说这个结构是行(InnoDB)+列(HeatWave)混合存储的结构,同一个架构完美解决OLTP,OLAP需求(感觉也是一个高富帅的解决方法),从油管上看BenchMark基本是同行业无敌。


这里大概也罗列一下HeatWave的一些限制,供使用者一些参考:

1.  HeatWave Cluster目前支持最多24个节点,每个节点最大内存420G,共9T数据,Rapid引擎数据在内存中,Youtube上有一些详细介绍,自行翻墙观看。


2. HeatWave只能处理SELECT请求


3. 表的数据需要自动用HeatWave处理的,引擎需要改为:rapid为第二个引擎,数据还是持久化在InnoDB中, 对于不支持的列需要定义加上:not secondary 参考支持的数据类型: 

https://dev.mysql.com/doc/heatwave/en/heatwave-supported-data-types.html


4. 表引擎没有指定为Rapid的,如果想用HeatWave,需要手工加载到HeatWave中,如:alter table TBname secondary_load;


因为这个架构是基于云上基础能力开发的架构,目前没办法线下部署想体验,只能用Oracle Cloud上的MySQL  Service,在Oracle MySQL Service中也可以看到低于9T的数据,HTAP基本随意造了。


如果你没办法使用Oracle Cloud,也可以考虑使用clickhouse扮演一部分这个功能,参考:https://clickhouse.tech/docs/en/engines/database-engines/materialize-mysql/ 

用好这个功能也可以给MySQL手工安装一个OLAP的翅膀。


本篇文章来源于微信公众号: MySQLBeginner

Tag:
相关文章

发表评论: