支付宝去O的关键技术之一——数据库弹性路由
本文主要总结蚂蚁去O成功的关键技术之一——数据库弹性路由的原理以及对这个原理的思考。这个技术对传统行业技术而言也是可以实现的,对传统行业去O或者大机下移项目都有一定借鉴意义。
分布式学习:Sequential 和 Linearizability
Linearizablity是一种要求很强的一致性模型。理解这个目的是为了识别应用和数据库中哪些设计是符合Linearizable,哪些是不符合的,以便应用用最小成本实现业务需求,同时又规避问题(BUG)。
说说分库分表的一个最佳实践
分布式数据库(中间件)的特点就是分库分表。具体分多少个实例多少个库会影响分布式数据库性能理论上限。此外,SQL能否将该分布式数据库的性能能力都发挥出来,取决于SQL的写法,一般跟拆分键的行为有关。
MySQL数据库乱码问题分析
数据库字符“乱码”现象,其原因可能跟页面的编码、连接池的编码、数据库的字符集参数、表和字段的字符集设置有关。而分析“乱码”现象过程中,又会受终端的字符集编码、文件的字符集编码影响。诸多因素导致“乱码”现象扑朔迷离。
说说数据库事务和开发(下)—— 分布式事务
本篇首先分析分布式事务的“最终一致性”的解决方案的原理,以及跟“强一致性”解决方案的区别。然后分析两款分布式事务中间件产品(GTS和DTX)的区别。最后介绍两个分布式数据库(DRDS和OceanBase)原生的分布式事务的原理和使用场景。
说说数据库事务开发(上)
本文分上下两篇,主要系统总结常用关系数据库ORACLE\SQL Server\MySQL的事务特点原理以及场景,并跟OceanBase以及GTS、DTX进行比较,分析其中原理和风险,方便传统应用开发评估使用分布式数据库和中间件产品的风险。
推荐一款淘宝开源的主机性能采集软件——tsar
tsar 是淘宝6年前开源的一款主机性能采集软件,可以说是运维人员性能分析的一把瑞士军刀。
揭开数据库RPO等于0的秘密(下)
本文分为上下两篇。 上篇分析传统关系数据库Oracle/MySQL在应对故障时保障数据不丢失的机制,以及分析PolarDB和AliSQL在这方面曾经探索的改进措施。 下篇分析蚂蚁的OceanBase在数据安全方面的创新之处。
揭开数据库RPO等于0的秘密(上)
本文分为上下两篇。 上篇分析传统关系数据库Oracle/MySQL在应对故障时保障数据不丢失的机制,以及分析AliSQL和PolarDB在这方面探索的改进措施。下篇分析蚂蚁的OceanBase在数据安全方面的创新之处。
数据库的异地多活分析和方案
做异地多活的前提是应用和数据库都做水平拆分,并且保持规则联动。基于分布式MySQL和OceanBase都可以实现异地多活架构,细节稍有不同。
一些关系数据库的架构总结
本文总结一下接触过的关系型数据库常用的几种架构及其演进历史。分析数据库架构方案的几个视角用发生故障时的高可用性、切换后的数据一致性和扩展性。每个产品都还有自己独特的优势和功能,这里不一定会提到。
分布式数据库的拆分设计实践
并不是换了分布式数据库后,应用性能就一定会提升。也并不是用了分布式数据库后,应用所有场景性能都会提升。