ITPub博客

首页 > 数据库 > 国内数据库 > 国产数据库创新集锦——小count也有大智慧⓻达梦登场,小count大智慧

国产数据库创新集锦——小count也有大智慧⓻达梦登场,小count大智慧

原创 国内数据库 作者:梁敬彬 时间:2025-04-03 20:44:09 0 删除 编辑

往期回顾 

国产数据库创新集锦——小count也有大智慧⓵顺其自然 ,性能很拉垮

国产数据库创新集锦——小count也有大智慧⓶普通索引,单车变摩托

国产数据库创新集锦——小count也有大智慧⓷位图索引,摩托变赛车

国产数据库创新集锦——小count也有大智慧⓸物化视图,赛车变飞机

国产数据库创新集锦——小count也有大智慧⓹缓存结果,飞机变火箭

国产数据库创新集锦——小count也有大智慧⓺等价改写,平地起惊雷


⓻达梦登场,小count大智慧

彬老师:轮到咱们主角国产数据库登场了!近年来,我国自主数据库的跨越式发展,既得益于持续的技术突破,更源于深入骨髓的创新基因。以达梦数据库为例,他们从数据库内核层面入手,创新性地引入动态计数器机制,彻底解决了count(*)的性能痛点,让用户无需任何特殊技巧,就能获得极 致性能体验。

小渣:哇,这个想法牛,直接从内核入手,够彻底!

彬老师:这正是原创数据库企业的优势所在,代码自主可控!我们做个试验。如下所示,少量记录时,count(*)仅需0.2毫秒,插入为32毫秒。

create table t as select * from dba_objects;
SQL> insert into t select * from t;
影响行数 1401
已用时间: 32.849(毫秒). 执行号:256.
SQL> select count(*) from t;
已用时间: 0.219(毫秒). 执行号:288.

彬老师:随后记录自我复制到15738496时,插入速度从32毫秒变成45秒,而count(*)依然是0.2毫秒左右。

SQL> insert into t select * from t;
影响行数 2869248
已用时间: 00:00:45.028. 执行号:289.
已用时间: 8.689(毫秒). 执行号:290.
SQL> select count(*) from t;
COUNT(*)
---------------
15738496
已用时间: 0.216(毫秒). 执行号:290.


小渣:这效率太惊人了!对了,Oracle有类似功能吗?

弘老师:没!

大饼:那在极端高并发场景下,计数器会不会成为性能瓶颈?

彬老师:非常专业的问题!确实,在某些极端场景下,维护计数器也会带来少量开销。正因如此,达梦数据库贴心地提供了灵活的配置选项,允许用户根据实际需求 开启或关闭此功能。这种既追求性能又尊重用户选择的设计理念,正是国产数据库日益成熟的体现。关于count(*)的各种优化手段,我整理了如下总结:

在这里插入图片描述

弘老师:国产数据库的创新不是 “为了创新而创新”,而是始终围绕 “用户痛点” 和 “技术瓶颈” 双轮驱动。从内核架构重构到行业场景深耕,从代码级优化到生态体系建设,这种 “接地气且动真格的创新”,正是国产数据库能与甲骨文、IBM同台竞技的根本原因。

小渣:国产数据库的创新精神令人敬佩!两位老师,还有哪些精彩的创新案例,可以分享给我们吗?

彬老师:时间不早了,咱们下回再聊吧。


全文完



公众号:收获不止数据库

微信:ljbyxl1213

系列回顾


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9091385/viewspace-3080013/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
历任中电福富研究院副理事长、中盾安信研究院副院长、宁德时代技术顾问等职务,受聘电信集团专家和国家十四五课题负责人,著有《收获,不止Oracle》《收获,不止SQL优化》等多本畅销数据库技术书籍。

注册时间:2024-02-06

  • 博文量
    162
  • 访问量
    197993