本技术分享于2020年12月DTCC 2020
主题介绍数字化零售场景下,数据库架构随着业务快速发展,遇到的高可用相关问题,从单机房高可用,到混合云同城双活,再到单元化/异地多活的技术演进过程。
内容大纲
1. 多点Dmall数据库技术体系简介;
2. 混合云数据库同城双活及容灾方案;
3. 单[……]
本技术分享于2022年5月TUG企业行成都站
内容大纲
1. 数字化零售方案简
2. TiDB整体使用情况
3. 核心业务场景支撑
4. 价值分析、经验总结
演讲PPT下载:数字化零售TiDB应用简介-冯光普.pdf[……]
本技术分享于2020年8月 「3306π」北京站(线上)
主要内容:
1. Redis sentinel原理
2. Sentinel源码实现剖析
3. Sentinel实践建议
演讲视频:Redis Sentinel原理及源码剖析
演讲PPT:Redis Sentinel原理及源码剖析[……]
主要内容:
1. MySQL高可用方案选型
2. DNS api & NamesHA
3. MHA切换流程
4. MHA自动化及监控
5. MHA问题及总结
6. MGR集群高可用
活动链接:MySQL技术交流大会
PPT链接:Dmall MySQL集群高可用实践[……]
本技术分享于2018年8月 「3306π」成都站
视频1 => 腾讯课堂「3306π」技术Meetup-成都站
视频2 => 大咖秀「3306π」技术Meetup-成都站
主要内容:
1. MySQL Group Replication特性
2. MGR集群整体架构
3. MGR集群[……]
1. JSON
2. Functional index
3. GIS
4. Parallel replication
5. Statement timeout
6. Multi source replication
7. CJK parser for fulltext i[……]
14年中换了一份工作,出国游荡了一阵子,目前工作离数据库内核远了点,离业务近了些,业务层面碰到的‘高深’技术问题也少了,旅行后发现人也懒了不少,导致博客都长草了
2015开始了,先表态一下目标:我2015年的目标就是搞定2014年那些原定于2013年完成的安排,不为别的,只为兑现我[……]
这篇文章总结了之前对Galera replication的调研,内容包括Galera特性,原理,Galera cluster配置,参数及性能等
MySQL DBA及开发应该都知道MySQL源生复制及semi-sync半同步复制,它们都基于MySQL binlog,原生复制是完全异步的,master不需要保证slave接收并执行了binlog,能够保证master最大性能,但是slave可能存在延迟,主备数据无法保证一致性,在不停服务的前提下如果master宕机让slave顶上,就会丢失数据,semi-sync在异步复制基础上增加了数据保护的考虑,master必须确认slave收到binlog后(但不保证slave执行了事务)才能最终提交事务,在没有退化(延迟较大时可能发生)成异步复制之前可以保证数据安全,此时master挂掉之后,slave可以在apply完所有relay log后切换成master提供读写服务
Galera replication是codership提供的MySQL数据同步方案,具有高可用,易于扩展等特点,它将多个MySQL节点组织成一个cluster
[……]
花了些时间理了下MySQL Meatadata Lock(元数据锁,有人将其翻译为数据字典锁)的实现,文章内容比较偏源码层面,在如何使用方面有些欠缺,需要对数据库系统原理或者MySQL实现有一定基础才不会觉得枯燥,如果连S/X/IS/IX及他们之间的关系都不清楚,建议先学习这部分知识!
源码版本:
Oracle MySQL community server 5.6.16
MDL_map
管理系统中所有的mdl(MDL_lock),为了减小锁竞争,被划分为mdl_locks_hash_partitions(默认为8)部分,该类全局只有一个对象:mdl_locks
MDL_map_partition
MDL_map中的一个partition,使用hash存储部分mdl(MDL_lock)
[……]