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

open gaussdb学习

2274

GaussDB(openGauss)是深度融合华为在数据库领域多年的经验,结合企业级场景需求,推出的新一代企业级分布式数据库,支持集中式和分布式两种部署形态。现在开源变成了趋势,越来越多的数据库转向开源。
postgreSQL数据库更加偏向于oracle,很多功能与oracle数据库类似,比如writed子进程,统计收集子进程,日志写子进程,ckp子进程,归档子进程。但是从open gaussdb来看,open gaussdb是基于postgreSQL数据库自主研发的集中式或者分布式数据库。但是在postgreSQL的基础上存在了很大的改进:
从运行时模型上,open gaussdb 线程池模型,高并发连接切换代价小、内存损耗小,执行效率高,一万并发连接比最优性能损耗<5%,postgreSQL类似oracle的进程模型,数据库进程通过共享内存实现通讯和数据共享。每个进程对应一个并发连接,存在切换性能损耗,导致多核扩展性问题。
从事务处理机制看,open gaussdb支持64位事务ID,使用CSN解决动态快照膨胀问题;NUMA-Aware引擎优化改造解决“五把大锁”,postgreSQL事务ID回卷,长期运行性能因为ID回收周期大幅波动;存在“五把大锁”的问题,导致事务执行效率和多处理器多核扩展性存在瓶颈。
检查点方面,open gaussdb增量Checkpoint机制,实现性能波动<5%,postgreSQL 全量checkpoint,性能短期波动>15%。
优化器方面:open gaussdb支持支持SQLBypass,CBO吸收工行等企业场景优化能力,postgreSQL支持CBO,复杂场景优化能力一般。
存储和组织层面:open gaussdb数据库行存、列存、内存引擎,在研DFV存储和原位更新,postgreSQL支持仅支持行存。
那么,关于openGauss,认为用“PG增强版”这个概念替代很不合适。数据库内核是数据库的核心所在,openGauss的内核修改量高达74%,这基本上可以算是“脱胎换骨”般的改造,并且从根本上解决了部分PG原生架构所带来的缺陷(如,事务ID回卷等)。由于PG的公共函数和接口部分代码做了保留,我们在openGauss里面能看到PG的影子很正常,但核心技术和发展规划与PG有很大不同,否则当初就合并到PG社区了。
应用场景看:适用于大并发、大数据量、以联机事务处理为主的交易型应用,如电商、金融、O2O、电信CRM/计费等,应用可按需选择不同的主备部署模式。
随着5G时代的到来,单一节点是难以应对数据规模的不断增长并确保性能的需要,而跨节点、可横向扩展的数据库可以很好解决大规模海量数据的计算存储需要。GaussDB(for openGauss)分布式模式最大可以支持1000+节点,PB级存储,分布式事务强一致等特性可以很好地满足政府、交通、金融、能源等行业的互联网+的诉求。

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

评论