MySQL Group Replication流控实现分析
MySQLGroupReplication流控实现分析前言MGR是有别于传统Master-Slave主从复制模式的一种新型的复制方式,其通过分布式一致性协议Paxos在Group中原子广播事务产生的Binlog并在远端节点进行回放的方式来达到数据复制的目的。但MGR的复制模式还是异步的,一个节点产生
MySQL MGR成员管理与故障恢复实现
MySQLGroupReplication(MGR)框架让MySQL具备了自动主从切换和故障恢复能力,举singleprimary(单主)模式为例,primary作为主节点对外提供读写服务,是唯一的可写节点,其他节点均为secondary节点,可提供读服务。在传统的master-slave主从复制模
MySQL MGR成员管理与故障恢复实现
MySQLGroupReplication(MGR)框架让MySQL具备了自动主从切换和故障恢复能力,举singleprimary(单主)模式为例,primary作为主节点对外提供读写服务,是唯一的可写节点,其他节点均为secondary节点,可提供读服务。在传统的master-slave主从复制模
从MGR start命令看MGR代码框架
上一篇MySQLMGR成员管理与故障恢复实现我们从方案层面讲解了MGR的成员管理和故障恢复。本篇从源码层面捋一捋,本篇内容可以分为2个部分,第一部分对应的是startgroup_replication命令执行过程,第二部分对应命令返回后节点状态从RECOVERING(恢复中)到ONLINE(在线)的
MySQL Group Replication数据安全性保障
在之前的文章中,介绍了MGR对数据可靠性、可用性和一致性的实现方案。简单来说,MGR通过基于paxos协议的多副本来实现数据的可靠性,通过多副本上的majority机制来实现可用性。对于一致性,主要说的是多主模式下通过基于事务版本的认证机制来确保多节点并发更新的正确性。本文再介绍下MGR对于数据安全
MySQL Group Replication冲突检测机制再剖析
在本专栏之前的文章中,对MySQLGroupReplication(MGR)的事务认证/冲突检测机制实现进行了介绍,并分析了其潜在的问题。MySQLMGR事务认证机制优化。可以在目录中查找这一篇文章哈本文将从certification_info对象,即冲突检测数据库实现作为切入点,来重点分析cert
MySQL MGR事务认证机制优化
在MySQL事务在MGR中的漫游记-事务认证(目录中可以找到)中介绍了MGR的事务认证机制,本文进一步展开分析并尝试对其进行优化,优化会分为单主模式(singleprimary)和多主模式(multimaster)两种场景。事务认证机制简介MGR事务认证模块用于决定进入MGR的事务是继续提交还是需要
MySQL Group Replication Paxos层不足和优化
本文是MySQLGroupReplication(MGR)不足和优化系列文章的延续。在之前的文章中讲了事务认证机制/冲突检测数据库不足和优化。其中的优化点在我们的InnoSQL5.7.20-v3b版本上实现,其优化效果也得到了初步验证。本篇文章主要分析作为MGR最底层的节点间网络通信层(Paxos)
MySQL Group Replication内存使用分析和优化-1
本文主要分析MySQLGroupReplication(MGR)相比传统MySQL复制模式,mysqld新增的几个内存缓存模块。举例说明由此可能引发的问题,并介绍潜在的优化方案。与传统的MySQL主从复制不同,MySQLGroupReplication模式下,mysqld会占据更多的内存空间。如果大
MySQL Group Replication Paxos层不足和优化
本文是MySQLGroupReplication(MGR)不足和优化系列文章的延续。在之前的文章中讲了事务认证机制/冲突检测数据库不足和优化。其中的优化点在我们的InnoSQL5.7.20-v3b版本上实现,其优化效果也得到了初步验证。本篇文章主要分析作为MGR最底层的节点间网络通信层(Paxos)
[IMG嘉年华讲稿]MGR在网易使用和优化实践
MGR是MySQL官方推出的领先的服务高可用和数据高可靠方案,网易从2017年下半年开始对MGR进行了全面的性能和稳定性测试,发现并解决了数个问题,同时对MGR核心功能进行了优化增强,目前基于MGR的网易RDS金融版服务已经上线,为网易电商业务提供了跨机房的高可用方案。本次分享将为大家介绍网易对MG
MySQL XA之从天而降的匿名事务
前言在网易互联网业务中,网易杭研自研的MySQL中间件DDB大量使用,DDB的分布式事务基于MySQLXA,由于MySQL5.7修改了XA事务记录Binlog的逻辑,导致出现大量cornercase,DDB下的MySQL实例也深受其害,典型的问题就是XA事务引发的复制错误,包括加锁超时,复制夯住等。
【杭研大咖说】温正湖:6年,从不会写SQL到数据库专家
他是业界主流数据库技术会议的明星讲师,开源社区各种分享活动的活跃分子;他累计申请了10多个技术发明专利,已授权8个;他近一年发布60多篇高质量技术博客文章,阅读量数十万;他和团队对MyRocks的优化实践,被网易技术委员会评选为年度大奖;他与同事合著的《MySQL内核:InnoDB存储引擎卷1》在京
MySQL审计正确使用姿势
前言数据库审计功能主要将用户对数据库的各类操作行为记录审计日志,以便日后进行跟踪、查询、分析,以实现对用户操作的监控和审计。审计是一项非常重要的工作,也是企业数据安全体系的重要组成部分。MySQL 5.5企业版增加审计功能,但是需要付费。MySQL社区…
MySQL XA之从天而降的匿名事务
前言在网易互联网业务中,网易杭研自研的MySQL中间件DDB大量使用,DDB的分布式事务基于MySQL XA,由于MySQL 5.7修改了XA事务记录Binlog的逻辑,导致出现大量corner case,DDB下的MySQL实例也深受其害,典型的问题就是XA事务引发的复制错误,包括加锁超时,…
MyRocks范围查询实现分析
本文出自组内小伙伴RocksDB iterator 允许用户遍历整个数据库,本文主要介绍 iterator 整体结构,如何实现seek,如何实现next等。介绍的顺序如下:RocksDB iterator 类层次关系,iterator 架构。用于建立整体认识。seek、next的实现。seek用于进行等值查询…
布隆过滤器(Bloom Filter)在MyRocks中的使用分析
本文出自组内小伙伴LSM类型的存储引擎查询性能要低于B-tree 类型的存储引擎,RocksDB 有针对性的优化那就是:bloom filter。其实在LevelDB 里就存在bloom filter,但是RocksDB 在LevelDB的基础上又做了优化。本文主要内容包括以下部分:Bloom filter 在Rocks…
MySQL审计插件实现与优化
摘要审计是数据库安全中很重要的一个环节,它能够实时记录数据库的操作记录,帮助数据库管理员对数据库异常行为进行分析审核。目前除了MySQL商业版的审计插件外,还有三种开源的审计插件可以考虑:Percona的审计插件audit log;MariaDB的审计插件server aud…
图数据库neo4j因果集群技术分析
本文主要介绍如何搭建一个neo4j高可用集群,往集群中动态添加neo4节点,节点的故障恢复。介绍如何进行事务操作和驱动配置来在节点故障,尤其是neo4j主节点(raft leader,写服务)故障时,尽可能减小对业务的影响。neo4j raft集群这里所说的neo4j raft集群…
图数据库neo4j数据导入、备份和恢复
在之前的文章中,介绍了如何搭建neo4j集群,集群的故障切换和节点恢复,还介绍了如何配置驱动实现自动failover。本文聚焦在neo4j的数据上。聊聊如何从外部数据源将数据导入neo4j,如何对neo4j数据库进行备份和恢复。数据导入可以有多种方式将数据导入neo4j…