熟悉MySQL数据库、Innodb存储引擎、rocksDB、查询优化器
熟悉分布式数据库以及云原生数据库的产品设计、方案设计和开发,有丰富的分布式数据库规划、研发和落地经验
负责分布式数据库的设计和研发工作。
分布式数据库每天支撑百亿级别的请求。
1. 某分布式数据库
1)高性能存储层:通过优化IO\并行\异步等方式,提高存储引擎在不同场景下的吞吐。
提升软件性能:实现线程池、异步事务提交、BinLog In Redo、FdataSync,保障数据库在高并发、强同步、云盘等场景下的性能。
2)高效弹性和读性能的计算层:
灵活高效弹性:采用多级拆分策略和物理子表的存储方式,提供非阶梯性的水平扩展能力和分布式计算能力
提高复杂查询执行效率:基于Cascades的查询优化框架,使用RBO(主要)&&CBO的优化器将计算向数据移动。通过并行、PipeLine、异步等方式的执行器提高执行效率。
3)高性能的分布式组件
高性能的分布式事务架构:优化获取时间戳路径、存储时间戳方式和悬挂事务处理机制,获取同地域场景下的极致分布式事务性能。支持ms级别的分布式死锁检测。
基于RAFT实现主从节点的数据分布式强一致
2. 某分布式数据库
数据分布式强一致:结合RAFT协议实现DataServer,建立一致性的BinLog复制通道,并触发MySQL主从切换,解决数据库非强一致复制和双主问题。
分布式事务:基于mysql5.6版本,采用全局ReadView Set的方式实现分布式读一致性,同时优化GC等流程。
优化计算层性能:
通过BATCH、PipeLine和异步的报文处理方式,以及选择最优网络路径提升计算层吞吐能力
构建数据库安全能力:
QPS安全:实现基于用户维度和SQL维度的数据库流量控制,同时提供无损扩容变更的能力。
内容安全:对SQL注入特征构建特征库,结合黑名单和白名单实现数据库防火墙。结合在线检测和离线审计实现全流程的SQL注入安全。