2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

百度技术沙龙第 37 期回顾:MySQL 优化实践(含资料下载)

  • 2013-04-23
  • 本文字数:2205 字

    阅读完需:约 7 分钟

在 4 月 20 日由 @百度主办、 @InfoQ 负责策划组织和实施的第 37 期百度技术沙龙活动上,百度运维部 DBA 王剑英和人人网数据中心技术副总监刘启荣分享了各自的 MySQL 优化实践经验,话题涉及“SEQDB——高性能 KV 型 MySQL 存储引擎”,以及“MySQL 运维感悟”等。本文将对他们各自的分享做下简单的回顾,同时提供相关资料的下载。

主题一:SEQDB——高性能 KV 型 MySQL 存储引擎 (下载讲稿

百度运维部 DBA 王剑英介绍了他们的技术选型过程,他首先列举了三个不同的业务场景,并分析了使用 Innodb 的解决方案。通过对于 Innbodb 的测试,他发现 Innodb 不能很好的满足百度的业务需求,主要是存在如下的问题:

  1. 数据量超过内存,IO bound 时,依赖 IOPS。
  2. Innodb 不能发挥高性能 IO 设备的潜能。
  3. Innodb 不能达到 100ms 以下 99.99% 的 SLA,达不到业务场景的要求。

为了完全发挥 SSD 的潜能,使得 QPS>=IOPS、低延迟,并且实现 SQL 接口、经验的复用,他们提出了如下的两套解决方案:

经过了一系列的对比,他们选择写一套自己的引擎。同时,为了提高面向业务的性能实现,他们选择在功能上放弃 join、range、group by 等复杂的查询功能,不做全功能引擎,简化复杂度,只支持基于主键的增删改查。

百度的 Sequentialdb 总体构架如下:

随后他从细节上分享了百度对于 SEQDB 的设计细节,包括应用的访问模型、索引结构、数据查找、垃圾回收、元信息位图和 BLOCK 管理等实现。

最后他分享了其他经验:

  1. 对于索引常驻内存安全性,建议使用一主多从和备库的结构,内存的安全性是足够的,索引放在磁盘上访问成本太高;
  2. SSD 损坏的月概率是 0.1% 以下,远低于 HDD,如果磁盘损坏则无法恢复;
  3. 时延敏感型应用,瓶颈会出现在写 binlog 上,建议调整 sync_binlog,将 binlog 迁移到 SSD 上;
  4. 毫秒级别超时 API 满足业务的延时需求

主题二:MySQL 运维感悟(下载讲稿

人人网数据中心技术副总监刘启荣的介绍这 9 年来运维 MySQL 的一些经验和心得:包括 MySQL 数据从单台演化到一个集群的过程中,所遇到过的一些问题以及所采用的解决方案、在数据库管理过程中认知的转换与变化、在整体性能优化中的各方面的取舍等。

他根据数据库机器规模的不同阶段分享了具体的实践经验:

  1. 在一个台服务器的阶段:备份

    大家一般处于应用的初期,此时性能不是最重要的,要做好备份;

  2. 在两台服务器的阶段:监控

    这个阶段一般都会建立主 / 从的数据库架构,由于宕机造成数据差异、网络问题、从库空间不足或者主库 binlog 丢失都会导致同步的问题。为了解决这个问题,需要做好监控,开启 sql_thread、io_thread,并且延时主从备份。

  3. 在十台服务器的阶段:散列

    如果面临频繁写操作,突然宕机的状况将会增多,这个时候需要对数据库做散列。

  4. 在一百台服务器的阶段:Proxy Cluster

    HA 的可靠性将会降低,需要使用 proxy cluster、HA、备份、在线的 DDL 同时使用;

  5. 在一千台服务器的阶段:系统化

    DBA 开始远离业务,部门之间的协作需求也越来越多,然而由于“人永远不靠谱”,需要标准化、自动化、统一化和流程化来保障运营需要。

百度技术沙龙三周年

本期是百度技术“三周年”,沙龙的第一期讲师刘洪清、LAMP 人社区的潘少宁、往期讲师王集鹄等嘉宾也来到现场与参会者一起为沙龙庆生。

Open Space(开放式讨论环节)

为了促进参会者与我们每期的嘉宾以及讲师近距离交流,深入探讨在演讲过程中的疑问,本次活动依然设置了 Open Space(开放式讨论)环节。

在 Open Space 的总结环节,几位话题小组长分别对讨论的内容进行了总结。

王剑英:我们针对不同的应用场景讨论了 MySQL 与不同引擎的结合方案;

刘启荣:从数据库优化的角度,对数据库选型、引擎、拆分等方面来分享了大家的经验;

DSpark:主要是和几个朋友讨论了 Python 和大数据使用相关的内容;

王集鹄:关注了 PC 和移动端感应器的区别,同时比较了 Native 和 HTML5 App 的用户体验的差异,还讨论了前端 CSS 的模块话处理方案;

会后,一些参会者也通过新浪微博分享了他们的参会感受:

wxianfeng :好多关键词啊:TPS、 QPS、SSD、HDD、IOPS、RAID 5、INNODB、handler socket、SeqDB、 binlog、位图、Master-Slave、snapshot……另外 @四喜和丸子 的演讲好搞笑啊, 祝百度技术沙龙越办越好.

太微左桓:昨天的百度技术沙龙没听懂多少东西,不过惊喜却是遇到了王集鹄老师,一轮 OpenSpace,收获是巨大的。很庆幸没有中途离场,现在想起来,还是忍不住的亢奋。

快盘 - 符小钻: 百度技术沙龙听 @四喜和丸子 讲 mysql 维护,苦逼地发现百实例级别的问题我们都碰到了。再往后,把完善的监控和自动化部署做好,千实例级别完全没有问题。再深入一些,可以根据我们业务的需求做深度定制的存储引擎。抑或是通用的数据分区方案。

harry 小淫既天才:从上年刚进百度实习就开始参加了百度技术沙龙,到现在有好几期了。很喜欢这种开放自由交流的感觉,也开阔了视眼。今天是小度沙龙三周年,祝小龙龙越办越好,影响越来越大。

Artisan_code :人很不靠谱,靠技术来约束。百度技术沙龙,人之出,性本懒。人的自制力是不靠谱的,需要周围的环境来约束,想腐败都不行。

有关百度技术沙龙的更多信息,可以通过新浪微博关注 @百度技术沙龙,或者关注 InfoQ 官方微信:infoqchina,InfoQ 上也总结了过往 36 期所有百度技术沙龙的演讲视频和资料等,感兴趣的读者可以直接浏览内容

特别提示:第38 期百度技术沙龙将在5 月25 日,在深圳举行,欢迎关注 @InfoQ @百度技术沙龙获取后续的活动信息。

2013-04-23 03:553723
用户头像

发布了 89 篇内容, 共 34.4 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

P5直升P7!“阿里爸爸”最新出品年薪30W~120WJava架构师学习路线

Java全栈架构师

程序人生 IT java程序员 java面试 java架构

【直播预告】优化器及 Flink CDC + OceanBase 全增量一体化数据集成方案

OceanBase 数据库

OceanBase 社区版

分布式shiro权限验证

Rubble

4月日更

智能风控中台设计与落地

第四范式开发者社区

人工智能 自动化 金融 中台架构 风险控制

逐向双碳:绿色计算的误区与正确打开方式

脑极体

在线标准程序员计算器

入门小站

工具

SeekTiger迎来新征程,STI即将登录Gate.io

BlockChain先知

《对话ACE》第二期:新数据库时代,DBA发展之路该如何选择

OceanBase 数据库

dba oceanbase

Web3 和区块链技术:数字资产所有权如何颠覆当前的商业模式

CECBC

4. 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识wrk、wrk2

MASA技术团队

C# .net 微软 测试 压测

[Day13]-[动态规划]爬楼梯

方勇(gopher)

LeetCode 数据结构和算法

基于云效Flow配置 Jenkins 源

阿里云云效

云计算 阿里云 运维 jenkins、 jenkins高级用法

架构实战营模块九毕业项目

刘洋

#架构实战营 架构师实战营 「架构实战营」

Kernel SIG直播:让人头疼的“内核内存被改”和“内存泄露”怎么解?|第13期

OpenAnolis小助手

直播 内核 龙蜥社区 sig 龙蜥大讲堂

渗透测试系列之靶机渗透

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 漏洞挖掘

netty系列之:netty中的frame解码器

程序那些事

Netty 程序那些事 java 4月月更

阿里云PolarDB开源数据库社区与 Tapdata 联合共建开放数据技术生态

阿里云数据库开源

数据库 阿里云 polarDB PolarDB-X

带你了解什么是DHCP,为什么要用DHCP?

乌龟哥哥

DHCP 4月月更

详解动静态缓存各种方式

穿过生命散发芬芳

4月月更

Android C++系列:JNI开发准则

轻口味

c++ android 4月月更

在线CSV转TSV工具

入门小站

工具

开启 JSON 和多模,让生态更多可能 | OceanBase 社区版 3.1.3 发版

OceanBase 数据库

OceanBase 社区版

知名固件供应商百敖软件加入龙蜥社区

OpenAnolis小助手

开源 生态 龙蜥社区 CLA 百敖软件

不解决好这 3 大矛盾,就别搞 DevOps 了

飞算JavaAI开发助手

2022观测云产品发布会前瞻:这是一份给IT工程师们的礼物

观测云

论语音社交视频直播平台与 Apache DolphinScheduler 的适配度有多高

白鲸开源

什么是中国企业信息化

秋去冬来春未远

数字化信息化中国文化

Cisco Nexus L2 Switch 进行 vPC 和 L3 改造以支持 K8S 部署

Qunar技术沙龙

#运维

linux之chsh命令

入门小站

Linux

动态压测模型让工作更轻松

FunTester

Pulsar Summit Asia 2021|Pulsar在移动云智能运维平台的实践

移动云大数据

pulsar

百度技术沙龙第37期回顾:MySQL优化实践(含资料下载)_数据库_水羽哲_InfoQ精选文章