阿里数据库SRE(转)
SRE的职责划分却不尽相同,那么SRE究竟在做什么?
SRE的职责
SRE主要负责Google所有核心业务系统的可用性、性能、容量相关的事情,根据《Site Reliability Engineering 》一书提及的内容,笔者做简单汇总,Google SRE的工作主要包括但不限于如下:
- 基础设施容量规划
- 生产系统的监控
- 生产系统的负载均衡
- 发布与变更工程管理
- on-call(轮值) 与 Firefighting(紧急故障救火)
- 与业务团队协作,共同完成疑难问题的处理
- ...
在 Google SRE 书中,对 SRE 日常工作状态有个准确的描述:至多 50% 的时间精力处理操作相关事宜,50% 以上的精力通过软件工程保障基础设施的稳定性和可扩展性。
而在国内,非常多的SRE部门与传统运维部门职责类似,本质来说负责的是互联网服务背后的技术运维工作。区别于传统的运维SRE,如何在业务研发团队落地SRE,我们做了一年多的探索与实践,笔者认为业务团队SRE的核心是:以软件工程的方法论重新定义研发运维,驱动并赋能业务演进。
阿里数据库稳定性治理
数据库是应用的核心命脉,对于ECS管控来说,所有的核心业务全部跑在RDS之上,如果数据库发生故障,对应用的损害无论从管控面或者数据面都是致命的。所以,SRE做的第一件事情就是守住核心命脉,对 数据库稳定性进行全面的治理。
首先,我们先来看一下ECS管控在规模化业务下,数据库面临的问题:
- 空间增长过快,无法支撑业务近期发展需求。
- 慢SQL频发,严重影响应用稳定性。
- 数据库变更故障率高,DDL大表变更引起的故障占比高。
- RDS性能指标异常,数据库各种性能指标异常。
- RDS报警配置混乱,报警信息存在遗漏,误报的情况。
对于数据库的问题我们的策略是数据库+业务两手抓,单纯优化数据库或者业务调优效果都不是最佳的。比如典型的数据库大表问题,占用空间大,查询慢,如果单纯从数据库层面进行空间扩容,索引优化可以解决短期问题,当业务规模足够大的时候,数据库优化一定会面临瓶颈,这个时候需要业务调优双管齐下。
容量规模、极致性能、高可用性等
下面简单介绍一下优化思路:
- 数据库占用空间大问题,两个思路,降低当前数据库占用空间,同时控制数据空间增长。我们通过归档历史数据释放数据空洞来达到数据页复用,从而控制数据库磁盘空间增长;但是delete数据并不会释放表空间,为了释放已经占用大量空间的大表,我们业务上进行了改造,通过生产中间表轮转来解决。
- 慢SQL频发问题,数据库优化与业务改造两手抓。数据库层面通过索引优化来提高查询效率,同时减少无效数据来减少扫描行数;应用层面通过缓存降低数据库读次数、优化业务代码等方式减少与规避慢SQL。
- 数据库变更故障率高问题,管控流程增强,增加Review流程。DDL变更类型多,由于开发人员对数据库的专业性与敏感度不够导致数据库引发变更增多,对于这类情况,我们针对DDL变更增加了 检查项列表与评审流程,控制数据库变更风险。
- 数据库性能指标与配置问题,以项目方式推进数据库健康度提升,统一管控数据库预警配置。
- 慢SQL限流与快恢的探索。慢SQL严重情况会导致RDS整体不可用,当前我们正在探索如何通过自动/半自动化的方式限流慢SQL来保障数据库稳定性。
下图是ECS在数据库稳定性治理上的几个探索。

2)监控预警治理
阿里数据库SRE(转)的更多相关文章
- 数据库性能测试---前阿里数据库团队资深DBA杨奇龙
杨奇龙 前阿里数据库团队资深DBA 主要负责淘宝业务线,经历多次11.11,有海量业务访问DB架构设计经验. 目前就职于有赞科技DBA,负责数据库运维工作,熟悉MySQL 性能优化,故障诊断,性能压测 ...
- 阿里数据库性能诊断的利器——SQL执行干预
概述 在业务数据库性能问题诊断中,如果发现一个业务性能很差跟某个SQL有关,应用连接池几乎被该SQL占满,同时数据库服务器上也不堪重负.此时情况很紧急,业务改SQL重发布已经来不及了,运维能选择的操作 ...
- 数据库顶会VLDB论文解读:阿里数据库智能参数优化的创新与实践
前言 一年一度的数据库领域顶级会议VLDB 2019于美国当地时间8月26日-8月30日在洛杉矶召开.在本届大会上,阿里云数据库产品团队多篇论文入选Research Track和Industrial ...
- 阿里数据库大牛的 MySQL 学习指南!
做后端的同学,总是绕不开MySQL. 毫无疑问,MySQL 是当下最流行的开源数据库.凭借强大的性能和易于使用性,它已被Google.Facebook.YouTube.百度.网易和新浪等大型互联网公司 ...
- DTCC 2019 | 深度解码阿里数据库实现 数据库内核——基于HLC的分布式事务实现深度剖析
摘要:分布式事务是分布式数据库最难攻克的技术之一,分布式事务为分布式数据库提供一致性数据访问的支持,保证全局读写原子性和隔离性,提供一体化分布式数据库的用户体验.本文主要分享分布式数据库中的时钟解决方 ...
- 前阿里数据库专家总结的MySQL里的各种锁(下篇)
在上篇中,我们介绍了MySQL中的全局锁和表锁. 今天,我们专注于介绍一下行锁,这个在日常开发和面试中常常困扰我们的问题. 1.行锁基础 由于全局锁和表锁对增删改查的性能都会有较大影响,所以,我们自然 ...
- 前阿里数据库专家总结的MySQL里的各种锁(上篇)
0.前言 MySQL按照加锁的范围,分为全局锁.表级锁.行级锁. 本文作为上篇,主要介绍MySQL的全局锁 和 表级锁. 重要的实战总结为,如何安全地变更一个表的表结构. 1.全局锁 定义: 全局锁就 ...
- 阿里技术分享:阿里自研金融级数据库OceanBase的艰辛成长之路
本文原始内容由作者“阳振坤”整理发布于OceanBase技术公众号. 1.引言 OceanBase 是蚂蚁金服自研的分布式数据库,在其 9 年的发展历程里,从艰难上线到找不到业务场景濒临解散,最后在双 ...
- 邀您共赴数据库学术顶会ICDE 2019——阿里云专场 零距离接触达摩院数据库“最强大脑”
摘要: 当学术大家遇到技术大拿,会碰撞出怎样的火花?为进一步加深产学研学术交流,阿里云将于ICDE 2019大会期间(4月9日)举办以“云时代的数据库”为主题的技术专场(Workshop) 作为全球数 ...
- 洞见数据库前沿 阿里云数据库最强阵容 DTCC 2019 八大亮点抢先看
摘要: 作为DTCC的老朋友和全球领先的云计算厂商,阿里云数据库团队受邀参加本次技术盛会,不仅将派出重量级嘉宾阵容,还会为广大数据库业内人士和行业用户奉上8场精彩议题.下面小编就为大家提前梳理了8大亮 ...
随机推荐
- 频率 音调 对应表 FFT频谱分析原理
Frequency in hertz (semitones above or below middle C) Octave→Note↓ 0 1 2 3 4 5 6 7 8 9 C 16.352 (−4 ...
- solr-es
一.lucene 1.是什么 是apache提供的一套java写的用于全文检索工具包,该工具包提供了用于实现全文检索的api类,可用于实现搜索引擎功能. 2.搜索常用方法 顺序扫描法:应用于数据结构固 ...
- CoreDNS -- DNS服务与服务发现
CoreDNS -- DNS服务与服务发现 DNS服务器 手册:https://coredns.io/manual/toc/ Github:https://github.com/coredns/cor ...
- 百度网盘(百度云)SVIP超级会员共享账号每日更新(2023.12.20)
一.百度网盘SVIP超级会员共享账号 可能很多人不懂这个共享账号是什么意思,小编在这里给大家做一下解答. 我们多知道百度网盘很大的用处就是类似U盘,不同的人把文件上传到百度网盘,别人可以直接下载,避免 ...
- [转帖]初识SkyWalking
https://zhuanlan.zhihu.com/p/361579294 一.SkyWalking 是什么? 一个开源的可观测平台,用于从服务和云原生基础设施收集,分析, 聚合及可视化数据. Sk ...
- [转帖]skywalking配置nacos集群模式
版本: name version nacos 1.1.0 skywalking 6.2.0 elasticsearch 6.3.2 es集群管理工具 cerebro-0.8.3 https://git ...
- [转帖]gcc与makefile常用操作(绝对常用,也绝对够用)
makefile与gcc常用操作 一.温故知新 1.可执行程序的生成过程 2.gcc的常用操作 二.make操作 三.编写Makefile文件时常用操作 注意:在Makefile文件中 空格和缩进是完 ...
- UOS可能的来源
1050a 行业版 是基于 阿里的Anolis 1050d 企业版 是基于debian 1050e 欧拉版 是基于华为欧拉 euler
- git中git cherry-pick的使用
git中git cherry-pick的使用 A分支是从远端的开发分支dev拉取的 B分支是从远端的测试分支rel拉取的 现在我们遇见一个问题. 我们在A分支修改了代码.并且推送到了远端的dev分支. ...
- PKI系统
PKI系统简介 PKI(Public Key Infrastructure,公钥基础设施)是一种密码学框架,用于安全地管理数字证书.公钥和私钥,以确保通信和数据的机密性.完整性和身份验证.PKI建立在 ...