分享好友 站长动态首页 网站导航

云时代下,数据库的关键趋势与DBA发展之路

2022-06-29 20:00 · 头闻号数据库

​伴随着云计算、分布式技术的逐步落地,近十年来数据库的形态发生了很大变化,各类数据库不断涌现,数据库架构也随之演进。在云时代下,企业该如何选型并构建数据库架构?如何应对业务上云带来的数据迁移挑战?数据库有何“新解”?DBA的未来发展趋势如何?

今天为我们解答以上问题的嘉宾,是来自货拉拉的DBA负责人蔡鹏老师。希望通过汇集蔡鹏的研究成果和实践经验,带大家明确新数据库时代,DBA的个人发展之路。

蔡鹏

货拉拉  DBA负责人

前饿了么、蚂蚁金服技术专家,现任货拉拉数据库部门负责人。负责货拉拉全球化业务场景下整体数据库、消息队列、缓存、数据库中间件的稳定性建设工作,主持过饿了么数据库异地多活建设,对数据库库中间件、分布式数据库和自动化运维平台设计开发有丰富的实践经验。

主要观点

数据库进步、颠覆传统DBA、塑造行业

云数据库进入百家争鸣的时代,云商间的激烈竞争,再加上现实的业务需求,迫切需要促进数据库技术的进步。近几年业内涌现出了大量新式数据库,这些新式数据库,一方面对传统关系型数据库做了大量改进优化(分布式、云原生等);同时在新硬件能力加持下(我们看到了恐怖的几百核心CPU、超高容量高性能的存储),数据库性能进一步飞跃甚至“性能过剩”。数据库形态的改变正在深刻的影响整个IT行业,相信新技术下DBA也有新机会。

Q1如何理解:云时代,要让研发具备DBA的能力?

个人理解:让研发具备DBA的能力,本身是“开云时代的倒车”。因为云本身,不管是在屏蔽底层基础设施的稳定性上,还是在自身产品内核的完善建设上,都具有更强的容错及兼容能力,因此云不仅要提供一个稳定的基础设施,更是屏蔽了诸多研发过程中的一些复杂性、容错性,让研发更加注重对业务自身的建设上。

不管是在云时代,还是自建时代,研发都需要对数据库本身做一定程度的理解,比如合理的设计范式、结构设计、索引设计、SQL写法等,但是我们也看到云数据库越来越智能化,甚至能对SQL智能改写、索引自动优化做到了很高程度的自动化,这进一步削弱了研发对数据库本身的关注度。

但凡事也有例外,比如数据库类型越来越多,不同场景可能使用不同类似的数据库更加具有优势,过去这种选型由DBA来主导完成。基于云DB对研发复杂度的屏蔽,研发可以根据自己对云数据库产品的理解程度,进行合理的选型,不过这里面是有潜在的风险的。

比如早期货拉拉就有类似的实践:研发自行做了很多数据库选型,最终导致的结果是服务治理失控,同时也带来很严重的业务风险(比如一条数据既写MySQL,又写MongoDB,跟ElasticSearch最后还要刷一份到Redis缓存,有吐血的修数据历史)。因此这部分工作仍旧需要DBA来指导完成,因为DBA在这方面相对而言会有更好的大局观。

Q2云时代的DBA职责有什么转变?应该提前做些什么?

职能转变:

①数据库的可靠性稳定性在云能力加持下不在是核心工作比如部分SLA的工作由云来保障;

②如何科学合理的使用云能力赋能业务在架构设计方案规划、节约成本显得更重要。

提前准备:

①在对云的理解上:对云产品进行积极学习,了解各家云的套路玩法;

②个人能力建设上:需要加强复合多元化的能力建设,做到懂数据库、懂平台、懂研发、实现DBA到架构师的转变。

Q3云时代,企业IT设施呈现集中化、规模化效应,对效率、性能的要求提升,我们对云数据库产生了哪些技术新需求?

数据库发展至今基本在满足用户无止境的既要(高性能)、又要(稳定性)、还要(可扩展性、可运维性等)的“过分”需求:

Q4数据库存储未来分层的设计,有没有可能在混合云环境自由迁移或者自动迁移?实现的难点在哪里呢?

个人理解是很难的,实现的难点主要在云商间的壁垒,或者自身产品的封闭性与产品间的兼容性上:

当然对于基础协议层兼容,比如常用的MySQL及其变种系列(Binlog格式兼容)的跨云迁移技术实现上,还是相对比较简单的,不管是借助云自身的能力(如DTS),或者自己开发一个迁移工具都是可行的、但是这种情况毕竟是少数。

不过随着未来数据库逐步往开源方向发展(封闭是没有未来的),这会促使更多技术人对云产品做更多深入的理解,这会给跨云间的数据迁移提供更多技术支撑,当然这对技术本身有很高的要求。

不过我也注意到:近几年出现了很多三方技术服务公司,专门提供云上各种解决方案,或许基于云会诞生一些新的商业机会,也是技术人技术变现的一种途径,这似乎也变相让“DBA消亡论”不攻自破。​

免责声明:本平台仅供信息发布交流之途,请谨慎判断信息真伪。如遇虚假诈骗信息,请立即举报

举报
反对 0
打赏 0
更多相关文章

评论

0

收藏

点赞