查看原文
其他

直播 | GreatSQL社区受邀ITPUB开源小秀场 探索开源数据库实践之路

GreatDB GreatSQL社区 2024-07-08
* GreatSQL使


中国工程院院士倪光南在2022开放原子全球开源峰会上曾表示:开源是开放科学的核心精神在信息领域的体现,并已成为全球信息技术发展的强大推动力。实践表明,开源具有强大的生命力,特别是基础软件、人工智能、云计算等新一代信息技术领域中,开源代码占据了70%-80%。未来,开源将成为数据库领域发展的重要驱动力。


其实,除了开源项目本身,越来越多开发者也开始关注技术生态的“外延”,结合当下的各类业务场景打磨企业适用的技术架构。在此背景下,技术软件如何让更多用户“轻松上手”、“简单应用”就显得更加重要。

 

10月14日,由IT168旗下ITPUB技术社区主办的“开源小秀场第五期”线上沙龙活动如期举办。GreatSQL社区开源贡献者王斌应邀发表《基于MySQL 8.0实现分布式数据库,会有哪些坑?》主题演讲,与sealos 、Apache ShenYu 等众多开源项目负责人和技术专家同台论道,探讨如何打造卓越、可持续的开源项目和生态,分享优秀的开源项目实践经验等开源知识干货。



王斌作为GreatSQL社区开源项目贡献者,在本次沙龙活动的主题演讲环节,从纯技术角度阐述,基于MySQL8.0实现分布式数据库会遇到哪些方面问题,具体讲解了MySQL8.0在分布式处理、执行计划、隔离级别实现、性能、高并发和高可用方面的缺陷,以及应对这些问题的解决方案。同时,王斌着重介绍了国内自主MySQL分支——GreatSQL开源数据库的技术特点及优势特性。


GreatSQL开源数据库是适用于金融级应用的国内自主MySQL版本,专注于提升MGR可靠性及性能,支持InnoDB并行查询等特性,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。GreatSQL除了提升MGR性能及可靠性,还引入了InnoDB事务锁优化及并行查询优化等特性,以及众多Bug修复。


✦  +

+

国内自主MySQL分支——GreatSQL

五大优势特性让数据库更流畅、更易用


1

地理标签

GreatSQL 地理标签主要用于解决多机房数据同步的问题。新增选项 group_replication_zone_id用于标记节点地理标签。该选项值支持范围 0 ~ 8,默认值为0。当集群中各节点的该选项值设置为不同时,就被认定为设置了不同的地理标签。同城多机房部署方案中,同一机房的节点可以设置相同数值,另一机房的节点设置另一不同数值。这样一来,在事务提交时就会要求每组group_replication_zone_id
中至少有个节点需要确认事务才能继续处理下一事务,以此确保每个机房的某个节点里总有最新事务,保障数据不丢失。

2

仲裁节点

在GreatSQL 最新版本中,新增MGR Arbitrator节点(仲裁节点)角色。

该节点只参与MGR投票仲裁,不存放实际数据,也无需执行DML操作,因此,可使用一般配置级别的服务器,在保证MGR可靠性的同时还能降低服务器成本。

3

快速单主

GreatSQL的第三个优势特性是新增快速单主模式。在此模式下,不再采用MySQL MGR原有的认证数据库方式。新增选项group_replication_single_primary_fast_mode
用于设置是否启用,以及具体采用哪种模式。

快速单主模式特别适合在跨机房部署、压力测试以及内存要求不高的多种场景应用。这种模式弱于传统的异步复制,但强于半同步复制,且不存在MGR的默认认证数据库可能消耗较大内存的问题。

4

智能选主/自定义选主策略

智能选主、自定义选主策略是GreatSQL 新版本的又一优势特性。原来的选主策略中没有判断各节点最新事务状态,可能会导致丢失部分事务数据。

在GreatSQL中,新增选group_replication_primary_election_mode
用于自定义选主策略,可选值有以下几个:

  • WEIGHT_ONLY,按照上述传统模式自动选主,此为默认值;

  • GTID_FIRST,优先判断各节点事务应用状态,自动选择拥有最新事务的节点作为新的主节点;

  • WEIGHT_FIRST,传统模式优先,如果没有合适的结果再判断各节点事务状态,推荐设置为该模式。

5

InnoDB并行查询

InnoDB并行查询对B+树多个子树并行扫描后再聚合,大大提升查询效率。在TPC-H测试中,最高可提升30倍,平均提升15倍。并行查询功能特别适合汇总报表之类的SAP、财务统计等业务。


\ | /


当前,正值中国开源经济蓬勃发展之期,开源产业为技术爱好者、贡献者、应用者们创造出了广阔的发展空间。万里数据库自2021年主导成立GreatSQL开源社区,将自身成熟的数据库技术开源,致力于通过开放的社区合作,构建国内自主MySQL版本及开源数据库技术,并期待携手ITPUB社区和更多的中国数据库企业积极拥抱开源,加入开源生态,培育更多优秀开源项目,借助开源的力量打造优秀的数据库产品,为中国的数字经济发展和全人类的信息技术进步持续做出贡献。


Enjoy GreatSQL :)



《深MGR新增P10-P19课程欢迎点击小程序观看
https://www.bilibili.com/video/BV1Da411W7Va?spm_id_from=333.999.0.0&vd_source=ae1951b64ea7b9e6ba11f1d0bbcff0e4

文章推荐:



关于 GreatSQL

GreatSQL是由万里数据库维护的MySQL分支,专注于提升MGR可靠性及性能,支持InnoDB并行查询特性,是适用于金融级应用的MySQL分支版本。


GreatSQL社区官网: 
https://greatsql.cn/

Gitee: 
https://gitee.com/GreatSQL/GreatSQL

GitHub: 
https://github.com/GreatSQL/GreatSQL

 Bilibili

https://space.bilibili.com/1363850082/video



捉虫活动详情:https://greatsql.cn/thread-97-1-1.html

社区博客有奖征稿详情:https://greatsql.cn/thread-100-1-1.html

(对文章有疑问或者有独到见解都可以去社区官网提出或分享哦~)


&QQ

可扫码添加GreatSQL社区助手微信好友,送验证信息“加群”加入GreatSQL/MGR交流微信群,亦可直接扫码加入GreatSQL/MGR交流QQ群


QQ


想看更多技术好文,点个“在看”吧!

继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存