【探索新域,拥抱未来】MySQL专家肖鹏侃侃话开源

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

编辑手记嘉年华倒计时2天,今年的嘉年华特别设置了开源专场,为广大MySQL技术爱好者提供分享和学习的平台。我们特别邀请新浪MySQL专家肖鹏老师谈一谈对开源世界的认识。肖鹏老师对开源数据库特别是MySQL研究特别深入,今天我们一起来听专家大话开源。


嘉宾介绍

肖鹏

微博研发中心数据库技术负责人,主要负责微博数据库(MySQL/Reids/HBase/Memcached)相关的业务保障,性能优化,架构设计以及周边的自动化系统建设。专注于数据库的高性能和高可用技术保障方向。


开源之路,我们一起走过

小编

1、很荣幸能采访您,首先跟大家打个招呼吧,请您简单介绍下您自己和您的职业生涯的发展

大家好,我是肖鹏,目前在新浪微博研发中心负责数据库相关的技术工作,目前我们部门是对外提供消息队列,缓存、数据存储和数据分析服务的一个技术平台,我们提供的技术栈包括MCQ、Kafka、MC、Redis、MySQL、HBase、Hadoop、Spark等,目前在拓展新的技术服务。

说起来和数据库结缘这个事情主要还是受到大学期间导师的影响,由于我的导师当时在从事Oracle相关的工作,于是从学生时代就对数据库产生了比较浓厚的兴趣。

至于说到技术成长,我个人的总结是业务驱动,虽然最开始入门的时候一定要通过书籍进行系统学习,但是如果要有长足的发展,还要依托于业务环境,在一个高速发展的业务环境下,个人成长的速度是完全不同的,很感谢微博提供了一个非常好的平台。

小编

2、了解到您对各类的开源数据库都比较有研究,现在开源越来越热,您如何看待开源数据库与传统数据库的未来发展趋势呢?

近些年NoSQL发展迅速,在我们公司内已经可以同传统的关系型数据库分庭抗礼了,在这种情况下,貌似传统数据库的前景堪忧?但是,我其实不是这么认为的,我个人认为数据库的技术选型依赖于特定时间段内的特定场景,并没有一种数据库是“瑞士军刀”可以解决所有问题的。举例来说,对于一个创业公司来说,产品可以在市场上得到认可才是第一位的,在这种时候,更加简单、通用的数据库,比如MySQL就是更好的选择,而不用去考虑HBase等。而如果公司已经发展的较大了,业务形态千奇百怪之后,那么就需要针对不同的需求,进行不同的数据库选型。总而言之,任何数据库都有最适合的场景,并且这个场景还和发展阶段强关联。

小编

3、在您十年的互联网数据库的管理中,您遇到过的最棘手的问题或者印象最深刻的案例可否跟大家分享一下呢?

我个人印象最深刻的案例就是微博的feed体系优化,由于微博最开始是标准的LAMP架构,服务的稳定性和可用性是重度依赖于DB的,但是MySQL在高并发的情况下,一旦前面的Cache命中率有波动就会出现大面积的slow query和延迟发生,当时苦不堪言,做了很多的数据库自身层面的优化和改造都没有妥善的解决,最终还是同业务方共同在整体业务架构层面通过多级Cache的思路最终解决的。自此之后,我就坚信数据库最极致的优化方法就是不读数据库。说笑了,其实是业务逻辑的优化,建议广大DBA同学在遇到性能问题的时候不要光埋头优化,也要抬头看看整体的业务架构是否存在优化的空间。

小编

4、任何一门技术,之所以能广受欢迎,肯定技术本身和时代的发展、需求有一定的契合度,现在开源数据库发展快速,越来越受到广大技术者的喜爱,您觉得在云时代,开源数据库有哪些明显的优势呢?

我个人认为开源数据库最大的优势不在于开源数据库自身提供的各种功能,而是在开源社区的支持下,所有使用者都可以参与讨论,可以找到志同道合的伙伴,这种安全感是促使广大公司选择开源数据库的最重要原因之一。

其次,就是开源数据库的源码是可以直接阅读的,甚至可以直接在上面path自己的解决方案,在这一点上传统数据库的节奏是完全跟不上的,因为每家公司的业务场景都是非常特殊的,即使同一个行业也可能由于关注方向不一样,导致各个公司对开源数据库的使用“姿势”千奇百怪,这种百变的使用方式也是大家选择开源数据库的一个重要原因。

小编

5、作为最受欢迎的开源数据库,MySQL发展快速,今年已经发布了8.0版本,当然每一个版本都会带有很多方面的新特性,那您觉得MySQL在不同版本的更新中,最有价值的改进和更新都有哪些呢?

以5.7来说,我个人最关心的是并行复制和Jason,这也是由于我们的业务环境决定的。而对于8.0来说,个人对group replication和官方的一揽子解决方案非常感兴趣。众所周知,如果要用好MySQL需要大家围绕MySQL 在周边建设一系列的自动化运维系统,这点上Oracle确实领先了很多。所以,我们看到官方也注意到这个方向,据我的了解,官方正在开发MySQL Router,并且会出官方的HA解决方案和监控方案,这是非常好的事情。举例来说,如果我们需要一个proxy层来对MySQL 进行代理形成一个可以横向扩展的cluster,那么现在市面上有很多的选择,比如corba,mycat,atlas等等,但是大家在选择的时候会有一个顾虑,那就是是否可以持续的开发和维护下去,如果有一天不在更新了怎么办? 在这个点上,我相信官方的背书能力是更有说服力的。


百变世界,游刃有余

小编

6、您在MySQL数据库的优化方面一直精心研究,专注于MySQL的高性能,那么在这里您愿意跟大家分享下您的经验吗?您觉得相比较其他数据库,MySQL的优化有哪些不同之处呢?

正好我本次OTN要分享的也是优化主题,我个人认为优化是系统的,分层次的。我们不能只盯着MySQL自身,需要往下看硬件和系统层,也需要往上看应用和架构层。对于硬件、OS系统、MySQL参数等等我们有一些根据经验来的“模版”,所以在这方面各个公司的优化我认为基本处于同一个水平上,但是对于应用和架构的优化就因人而异了,需要根据各个公司的业务场景来指向性进行优化,总的原则就是“兵来将挡,水来土掩”,充分分析业务的真实需求来努力提高性能。在这方面微博有一些的经验,欢迎来我的分场听我给大家聊一聊。

小编

7、随着云时代的全面到来,越来越多的企业正在考虑“上云”,但是云的安全性和QoS等问题同样一直是大家所关注的焦点,对此您有何见解?

对于云来说我认为是一个必然的趋势,但是相对于前端机这种无状态的模块,数据库上云确实挑战多多,在这方面我们正在努力的尝试,目前还没有特别好的经验分享给大家,但是我个人认为,随着前端上云的技术越来越成熟和便捷,后端资源会被倒逼着“适应”上云,在这个过程中,目前还没有一个统一的标准的解决方案,只能靠大家摸着石头过河了。

至于对于云安全性的考虑和QoS问题,我认为安全性是不能假借他人之手的,务必要在自己的控制之下,所有数据全部在云端其实是无法接受的,也许特殊时期可以妥协,但是最终来说数据是企业的根本,需要更加谨慎的对待。而QoS问题这是云企业必然的管控,但是云的高弹性也变相的解决了这个问题,所以我个人认为没太大的关系。

小编

8、您还有其他想要跟大家分享的吗?或者对行业新人有没有什么建议和指导?

对于刚入门的新人来说,最好可以通过书籍来系统的学习数据库的基础,不要靠从网上东搜西搜来积攒知识,否则一定会遇到发展的瓶颈点。这里推荐一本MySQL DBA都知道的书《High Performance MySQL》,强烈推荐通读一边。然后,就是最好可以找一个高速发展的平台,在这种环境下会得到一个比较高的加速度,再说的直白一点,在这种环境下,你会遇到各种故障和性能问题,而解决了这些问题自然而然的就有了丰富的经验了,这是从任何其他地方都学不来的,一定要亲身经历。最后,要有一个开放的心态,积极的同同行进行交流,因为毕竟一个人所处的环境是有限的,很少有人有机会在不同的环境中跳来跳去,那么就需要根据我们的古训“三人行必有我师焉”来学习他人的经验了。同时也不要敝帚自珍,只有积极的思想碰撞才能产生火花,多分享和多听分享绝对利大于弊。


最后,感谢OTN组委会邀请我来分享,在这里我们可以遇到很多使用不同数据库的同行,和这些人交流是一件非常愉快的事情,而且可以认识很多志同道合的朋友,你会发现在数据库海洋里,你并不是一个人独自游荡,你遇到的问题有很多其他朋友也遇到了,而他们的解决方案各有各的特色,这能极大的开阔我们自己的思路。


不止于分享,我们愿与你一起成长!Oracle技术嘉年华,为你量身定制完美成长计划!

今年是 Oracle 技术嘉年华的第六届,围绕“数据、平台与智能”主题,“Oracle 技术嘉年华、MySQL 技术嘉年华,运维嘉年华和实践嘉年华”四大专场合而为一,在云和开源技术迸发的舞台上,演绎一场空前的技术盛宴,精彩不断!



本文出自数据和云公众号,原文链接


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
4月前
|
canal 关系型数据库 MySQL
MySQL 自动同步开源工具
本文介绍了几种开源工具用于实现 MySQL 数据库的自动同步。
|
10月前
|
存储 关系型数据库 MySQL
MySQL vs. PostgreSQL:选择适合你的开源数据库
在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个。它们都有着强大的功能、广泛的社区支持和丰富的生态系统。然而,它们在设计理念、性能特点、功能特性等方面存在着显著的差异。本文将从这三个方面对MySQL和PostgreSQL进行比较,以帮助您选择更适合您需求的开源数据库。
537 4
|
11月前
|
SQL JSON 关系型数据库
MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
【10月更文挑战第3天】MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
574 5
|
关系型数据库 MySQL Java
关系型数据库mysql的开源与授权
【6月更文挑战第12天】
495 3
|
关系型数据库 MySQL 分布式数据库
数据库专家带你体验PolarDB MySQL版 Serverless的极致弹性特性
作为数据库专家,我有幸带大家深入体验阿里巴巴自主研发的下一代关系型分布式云原生数据库——PolarDB MySQL版的Serverless极致弹性特性。在这个云原生和分布式技术飞速发展的时代,Pola
|
关系型数据库 MySQL 测试技术
数据库专家带你体验PolarDB MySQL版 Serverless的极致弹性特性!
本次基于阿里云瑶池数据库解决方案体验馆,带你体验PolarDB MySQL Serverless形态下的性能压测环境,基于可选择的标准压测工具进行压测,构造弹性场景进行压测,实时动态展示弹性能力、价格和性价比结果,压测环境可开放定制修改、可重复验证。参与活动即有机会获得鼠标、小米打印机、卫衣等精美礼品。
数据库专家带你体验PolarDB MySQL版 Serverless的极致弹性特性!
|
canal 缓存 关系型数据库
MySQL如何实时同步数据到ES?试试阿里开源的Canal
MySQL如何实时同步数据到ES?试试阿里开源的Canal
479 3
|
存储 关系型数据库 MySQL
【专栏】在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个
【4月更文挑战第27天】MySQL与PostgreSQL是两大主流开源数据库,各有特色。MySQL注重简单、便捷和高效,适合读操作密集场景,而PostgreSQL强调灵活、强大和兼容,擅长并发写入与复杂查询。MySQL支持多种存储引擎和查询缓存,PostgreSQL则具备扩展性、强事务支持和高可用特性。选择时应考虑项目需求、团队技能和预期收益。
207 2
|
存储 关系型数据库 MySQL
PolarDB-X 开源 | 基于Paxos的MySQL三副本
PolarDB-X 作为PolarDB分布式版,是阿里巴巴自主设计研发的高性能云原生分布式数据库产品,采用 Shared-nothing 与存储分离计算架构,支持集中式和分布式一体化形态,具备金融级数据高可用、分布式水平扩展、混合负载、低成本存储和极致弹性等能力,坚定以兼容MySQL开源生态构建分布式能力,为用户提供高吞吐、大存储、低延时、易扩展和超高可用的云时代数据库服务。
PolarDB-X 开源 | 基于Paxos的MySQL三副本
|
关系型数据库 MySQL 测试技术
数据库专家带你体验PolarDB MySQL版 Serverless的极致弹性特性
本次基于阿里云瑶池数据库解决方案体验馆,带你体验PolarDB MySQL Serverless形态下的性能压测环境,基于可选择的标准压测工具进行压测,构造弹性场景进行压测,实时动态展示弹性能力、价格和性价比结果,压测环境可开放定制修改、可重复验证。参与活动即有机会获得鼠标、小米打印机、卫衣等精美礼品。

推荐镜像

更多