DBA是数据库管理员(Database Administrator)职位的简称,工作职责是保证数据库相关系统的稳定性。值得注意的是,在没有DBA岗位之前,该工作职责一般由运维工程师担当。随着IT系统在各个公司、企业的大规模部署和发展,数据库作为系统数据的载体,越来越得到重视,DBA岗位应运而生。
在数据库发展的早期,数据库软件被Oracle、SQL server、DB2等商业关系型数据库所垄断。随着互联网行业的兴起,MySQL、PostgreSQL等开源数据库慢慢赶超上来,它们在运维和使用上,相对其他应用有较高的技术壁垒,而且数据库通常在整个系统中的重要程度是最高的,所以DBA通常在所有运维岗位中是最高级别,技术相对聚焦且有一定深度。同时,薪资待遇也较高,这也是大部分开发者转换DBA的主要原因之一。
传统DBA处境
传统DBA岗位的具体工作是什么呢?不同公司有着不同的企业文化、业务特点、系统架构、技术积累等,所以DBA职位的工作内容也不近相同。在大公司会将DBA分为运维DBA和开发DBA,分别侧重数据库运维和数据库开发使用两个方向。而小公司DBA的工作就不会分那么清了,总体的工作还是围绕数据库运维和使用开展的。
从招聘网站中关于DBA职位的需求信息可以看出,DBA的工作主要包括以下内容:
传统DBA作为基础运维工作的一个分支,日常工作繁琐、重复性高,比较“吃”工作经验。这也迫使一些DBA去学习运维开发知识,做内部运维自动化平台,从繁重的运维工作中解放出来。
然而云计算时代的到来,才是对传统DBA岗位的真正颠覆。DbaaS在各大公有云厂商早已落地,它解决了DBA大部分的运维工作,而在故障诊断和性能分析上,也已经有了替代的产品。可以说传统DBA在云计算的冲击下,职位危机已经显现。
■图片来源:职友集
据了解,2019年DBA工程师招聘职位量1610个,比2018年下降了20%,2020年8月DBA工程师招聘职位量91个,对比去年同期下降了45%。
■图片来源:职友集
此外,DBA的薪资情况也出现了不同程度的下滑。2020年DBA工程师平均工资¥17.5K,2020年工资不及2019年,较2019年下降了12%。
由此看来,传统DBA职位的处境确实不容乐观。云时代的到来,数据库软件更加智能,技术快速更新等因素都给DBA提出了新的要求与挑战。只有迎接挑战,克服困难,DBA才能迎来更好的明天。
云时代给DBA带来的冲击
中国信息通信研究院发布的最新公有云白皮书中提到,全球云计算市场增长稳定,到 2021年市场规模将达到2461亿美元。PaaS市场稳定增长,数据库服务需求增长较快。2017 年全球 PaaS市场规模达128亿美元,增速为28%,预计未来几年的年复合增长率将保持在20%以上。
通过数据可以看到云计算时代已经到来,而且在未来还会稳定增长。对比传统的自建数据库,云时代的优势是什么?它给数据库带来了怎样的颠覆性变化呢?
公有云厂商都会提供业界流行数据库的PaaS服务,比如MySQL、PostgreSQL、MongoDB等数据库。产品通常会涵盖数据库大部分的运维流程,传统DBA日常的运维工作基本可以服务化,比如资源创建回收、备份恢复、扩容缩容等,可以涵盖数据库的整个生命周期。
此外,很多云服务商还会提供成熟的自研数据库,或者对开源数据库修改内核,提供更多的数据库核心功能。如京东智联云RDS-MySQL,对开源的MySQL修改了权限相关的设置,为用户提供更加精细化的权限管理功能。
各家云厂商都会结合自身的公有云部署环境,对数据库软件深度调优,达到比自建数据库更优的性能效果,这个优势是很多上云用户的主要诉求。
京东智联云RDS结合数据库的物理机、网络环境、软件配置等调优方向,在不减少核心功能的同时,最大限度地提升数据库性能,并在竞品中保持性能领先的地位。
各家云厂商,都有自己的主营业务,因此在某些领域会将自身的优势带到公有云产品中,主要体现在一些数据库定制的产品,满足用户某些固定场景的需求。对同行业的用户来说,具有很高的吸引力。
如京东集团在零售、物流等专业领域积累了很多经验,京东智联云就可以提供智慧零售、物联网等很多垂直领域的产品,供用户直接使用。
公有云RDS会提供很多数据库相关的外围功能,比如备份恢复、监控、冗灾、性能优化等。对比传统自建数据库,公有云内部会有一套完善的技术架构,以及各部门之间的协助流程,所以公有云在实现外围功能更有优势。
公有云提供多种类型的数据库,比如京东智联云提供关系型、NOSQL、NewSQL等数据库产品,此外还提供数据库独立的备份恢复、数据同步订阅、性能分析等工具,产品之间相互协作,为用户提供一整套的解决方案。
各家公有云厂商都很重视用户数据的安全性,避免各种数据泄露、丢失等问题。比如京东智联云RDS已经提供SSL传输、TDE加密、数据库防火墙、网络ACL、审计等安全相关功能,保证用户数据的安全性。
人力成本,为企业节省一部分低效的运维人员;时间成本,公有云可以做到RDS服务的快速部署,快速扩展,为用户节约了时间成本;财力成本,云具有与生俱来的灵活性,即按需购买,可以根据自身的业务场景选择服务的部署规模,避免资源浪费,节约财力成本。
从上述描述,我们可以看到公有云在数据库方面带来了太多的新功能、创新点,公有云RDS产品可以替代传统DBA大部分的日常工作,给DBA带来了不可阻挡的、颠覆性的冲击。面对冲击、面对变化,DBA的核心价值应该拥抱哪些改变呢?
DBA的核心价值
对于DBA而言,云环境下的数据库工作已经发生了很大变化,需要从多方面去适应,工作重心也要有所调整。
数据库的可靠性、不出故障、安全等等因素,已经不再是DBA的工作核心,它们门槛比较低,在公有云上就可以轻松实现。
数据库是数据的载体的管理者,DBA要跳出库的管理和使用行为,从更高的角度看问题。比如数据上的使用和流转,以全局的视角看待数据,从前端业务视角看到后端更高的价值,做到业务数据化(数据可查可控),数据业务化,反馈业务指导业务,形成数据闭环反馈,数据决定业务的产出。
DBA核心价值的实现都是建立在大的技术环境、公司实际业务以及个人规划这三个方面的。
IT行业知识更新的速度非常快,今天还在看单机数据库的实现原理可能明天就已经是分布式数据库的天下了。比如看好K8s的方向,就可以着重学习和研究K8s与数据库的结合,同时还要拓宽技术栈、NoSQL、NewSQL、开发语言、架构设计、数据建模、数据算法等。只有不断学习流行的技术,跟进未来会大力发展和应用的技术方向,才能让自身职业的周期更长久。
任何技术都要与实际业务相结合,产生真正的价值,所以紧贴公司的业务场景,帮助业务发展实现核心价值,才是未来DBA的第一要义。比如所在公司是创业公司,DBA需要着重增加系统的承载能力。如果公司业务比较平稳,DBA则需要保证系统的可靠性,降低使用成本等方向侧重。
师傅领进门,修行靠个人。DBA需要学习的知识非常多,如何从中找到适合自己的点,这个就要靠自己制定明晰的、理性的个人规划,短期和长期目标。
个人规划在这三个因素中占比最高,是最关键的一个内在因素,选择最适合自己的才是最好的。
举一个转型业务架构规划路线,随着公司数据应用水平的不断提高,DBA工作重心也应从基础运维的工作转向数据业务架构师的角色。
如何突破DBA的职业瓶颈
好像游戏职业进阶一样,DBA后续的发展也有很多条路。DBA并不是职业生涯的终点,克服挑战,找到职业发展的机遇。下面列举几个可能的方向。
DBA的职业进阶之路还是有很多可能性的,只要我们从更高的高度和全局思维看待这个问题,就会突破自身的职业瓶颈。
高度与广度。在职业发展初期,需要有个快速成长的"原始积累期"。要在某专一领域,尽量达到自己的技术高点。也许会存在某个点,是你已经无法突破达到更高的高度,这时要谨慎分析原因。如确实是非主观原因,那么要坦然接受它。剩下来的技术发展,可考虑横向发展,即将自己打造成全栈人才。
全局思维。即不要仅仅从技术角度考虑问题,特别是达到一定高度之后,可更多地尝试从业务角度、人的角度考虑之前面临的问题,也许你就会有新的发现。全局思维,会有助于你发现原有发展阶段的瓶颈点,实现突破。
云时代下的DBA,要拥抱变化,适应变化,就会发现更多的职业机遇。DBA并不是职业的终点,审视自己、认识自己、规划自己,未来终会实现。