re:Invent 2022:亚马逊对HTAP说不!
本文首发微信公众号:飞总聊IT
最近行业里面有趣的事情比较多,Trino Summit 2022刚开完,有很多有趣的东西。亚马逊re:Invent也在如火如荼召开,视频看得我眼睛发炎,又痒又疼的。
今天先写写亚马逊吧。对的,就是标题说的,亚马逊对HTAP说不。
我们知道HTAP数据库这个概念最近几年特别的红火,很多数据库都说自己是HTAP数据库的,举个例子,比如说PingCap的TiDB,比如说OceanBase。
HTAP的意思是我这个系统里面既能做传统的OLTP服务,也能处理OLAP相关的。这种数据库,被很多的新型数据库创业公司,认为是未来发展的方向。
今年的re:Invent,亚马逊当然没有直接的说,HTAP数据库是渣渣,没有未来的。这种说法未免太粗俗了。
亚马逊的说法是这样的,今年我们release一个新产品,从Aurora到Redshift的integration。
我们知道客户都需要做OLAP分析,但是我们也知道客户都讨厌ETL。所以未来最好是一个没有ETL的未来。因此我们准备了这样一个功能。
具体来说,用户可以指定把一个或者若干个Aurora的表里面的数据同步到同一个Redshift里面,设定好了以后,这些Aurora表里面的数据的增删改都可以很快的就同步过去了。
这样用户只要设置好,以后就可以在Redshift里面迅速做OLAP分析。
为什么说这是亚马逊对HTAP说不呢?我们知道Aurora是亚马逊的OLTP产品,Redshift是亚马逊的OLAP产品。
当客户既需要OLTP又需要OLAP的时候,亚马逊的解决方案既不是在Aurora里面强化它的AP能力,也不是在Redshift里面强化它的TP能力,而是做了一个可以迅速的把Aurora的数据无缝的导入到Redshift的整合功能。
Aurora呢,该做OLTP的还是继续做OLTP。Redshift呢,该做OLAP的还是做OLAP。用户呢,该用什么还是用什么产品,只不过数据在OLAP的时延被大大缩短了,用户做数据整合的过程被大大简化和自动化了。
那么问题来了,为什么亚马逊没有做出一款HTAP的产品,反而是强化了OLTP数据库到OLAP数据库的数据同步功能呢?
显然,在亚马逊看来OLTP的数据库应该专注于OLTP,OLAP的数据库应该专注于OLAP。不要既要又要还要。既要又要还要,是做不出牛逼的产品的。
那么,到底亚马逊的想法是对的呢?还是国内一众数据库厂商的想法是对的呢?我们到底是需要一个HTAP产品,还是需要两个产品,然后让这两个产品之间的数据同步很迅速呢?
这看你怎么理解了。
说穿了,很多HTAP数据库,其实也可以理解成为两个产品,然后数据同步自动化了。以TiDB为例,它的AP系统是独立的,基于ClickHouse魔改的。
这种整合,比两个产品然后之间数据同步更彻底,外面看就一个产品。
但是也有的HTAP产品确实只有一个引擎,同时要处理AP还有TP,这个时候,产品做tradeoff就比较困难了。Oracle算是OLTP里面的扛把子,但是OLAP做得也不差。
但是一般的公司想要做出Oracle这种复杂程度和成熟度的数据库产品,那时间上也好,业务场景的训练也好,人的投入也好,都是天文数字。总之,这是不可能的。
所以,你说亚马逊的思路到底是对的呢,还是错的呢?要问我,我觉得亚马逊的做法特别符合美国人的思维方式,也比较符合云计算的大环境。但是亚马逊来中国会怎么样,就很值得探究了。既要又要也要是中国人对软件的基本要求。达不到这些要求,谁理你啊,对吧。