数据仓库服务 GAUSSDB(DWS)-为什么GaussDB(DWS)的性能在极端场景下并未比单机数据库好

时间:2024-04-30 17:23:47

为什么 GaussDB (DWS)的性能在极端场景下并未比单机数据库好

GaussDB(DWS)中由于MPP架构的限制导致少部分PG系统方法、函数无法下推到DN节点来执行,仅能在CN端出现性能瓶颈。

原理解释:

  • 一个操作能够并行执行是有条件的,需要逻辑上能够并行,比如做汇总(SUM),可以各个节点(DN)并行汇总后,最后的汇总一定是不能并行,要在某一个节点(CN)上执行,由于大部分的汇总工作已经在DN节点完成,CN端的工作是比较轻量的。
  • 某些场景必须要集中执行,比如事务号,必须要保证全局唯一,该任务在系统里是通过GTM来实现的,因此,GTM也是全局唯一的组件(主备)。所有需要全局唯一的任务都是通过GaussDB(DWS)中的GTM来完成,只是在设计上尽量避免阻塞在GTM上,因此GTM并没有太多瓶颈,而且有些场景下还可以GTM-Free和GTM-Lite。
  • 从传统单机数据库的应用开发模式到并行数据库,为确保获得更好的性能,可能需要对业务进行少量改动,尤其是传统Oracle的存储过程互相嵌套的开发模式,如果要保证高性能,需要进行业务修改及对应的适配。

解决方案:

  • 如遇到此类问题,请参考 数据仓库 服务数据库开发指南》中的“优化查询性能”章节。
  • 或者,请联系技术人员进行业务适配的修改调优。
support.huaweicloud.com/dws_faq/dws_03_0036.html