暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GaussDB对HTAP的思考

db_user 2023-08-23
269

在GaussDB HTAP开发过程中,我们总结了以下实现HTAP架构需要关注的核心技术:


第一,透明路由。它之所以成为关键的原因是因为增加了客户的易用性,提升了HTAP产品的商用价值。这里面有两个观点,一个是如果HTAP基于行存和冗余列存这种方式,需要判断哪些数据被冗余到列存里面来,因此提供一种自动化的方法根据业务特点来选择加载列存数据,并对用户透明就非常有意义。另外,TP业务要路由到行存引擎,AP业务路由到列存引擎,目前大部分架构还需要通过Hint的方式来实现业务分流,如果借助优化器的代价系统、以及当前的AI4DB技术,能够更大程度的提供业务分流的准确性,从而对用户透明,提高系统的易用性。


第二,性能提升。我们把TP和AP融合起来比较困难的关键原因,主要是因为AP查询的复杂度比较高。如果是一个纯TP数据库,一些常规执行优化技术,比如说并行、编译执行、向量化执行,TP上虽然也有,但实际上很难有大的作为,因为TP要求的是低时延、高吞吐,这种情况下这些技术都有自己的启动代价,这些启动代价会对TP的性能产生很大的影响。在TP上,如果我们把HTAP里面的AP融入进来,这些技术就能大有可为,我们在这些技术的基础上对复杂查询进行加速,可以很好地支撑我们现在的性能,支撑我们的HTAP。


第三,数据新鲜度。我们多次讨论实时性的问题,不同的数据新鲜度最后带来的就是我们不同的架构,有In-Memory的,有主备的,也有基于增量表技术的,都会带来不同的数据新鲜度。在这种数据新鲜度下,我们怎么保证数据新鲜度高,而且性能又好。在这些方面我们需要更多的思考,来保证我们HTAP架构能够具备更多应对用户的能力。


第四,资源隔离。我们看到有的架构,比如说用户对TP性能要求比较高,要求你在引入实时AP的同时,不能影响TP的能力和性能。也有用户提出对整体的能力要求,对硬件没有什么诉求,如果有需要可以增加硬件。不同的用户有不同的要求,我们在面对这样的用户时,需要在资源隔离和数据新鲜度,以及性能的提升方面做好权衡。

最后修改时间:2023-08-23 09:25:50
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论