写点什么

“程”风破浪的开发者|云数据库时代,DBA 要掌握哪些技能?

作者:乌龟哥哥
  • 2022-10-28
    上海
  • 本文字数:2372 字

    阅读完需:约 8 分钟

“程”风破浪的开发者|云数据库时代,DBA要掌握哪些技能?

云数据库时代,数据库软件越来越成熟和智能,伴随着云计算、分布式技术的逐步落地,近十年来数据库的形态发生了很大变化,各类数据库不断涌现,数据库架构也随之演进。在云时代下,数据库有何“新解”?DBA 的未来发展趋势如何?DBA 的转型及出路在哪里?下面我们通过问答形式解答大家的一些疑惑。

1. 作为一个 DBA,主要工作包含了哪些方面,一个合格的 DBA 应该具备哪些基础能力?


在工作层面工作


1,对数据库运维的管理


通常包括一些安装部署,在线变更,监控报警等基础操作


2,数据迁移


数据的流转,数据库的升级,从库的升级到表的升级


3,架构优化


熟悉一些高可用的架构,对数据模型进行 sql 优化



在基础能力方面,通过分层的角度来说


最上层:服务层


第二层:数据平台层


第三层:架构支持层:高可用,数据模型优化


第四层:数据库基础资源层:使用的底层技术栈,对数据基本原理有更深刻的理解,在云计算时代,了解云数据库体系,关注技术转型,对数据库进行持续学习迭代。

2. 云数据在云计算时代是大势所趋,从云服务角度来看,云数据库给我们带来了哪些挑战和机遇?

在字面,云数据库 RDS(Relational Database Service)是一种基于云计算平台的即开即用、稳定可靠、弹性伸缩、便捷管理的在线云数据库服务。

首先,云数据库开箱即用,不需要自行安装部署,其次,云数据库服务提供定时补丁安装下载,并提供一些可视化监控和告警。从而进一步保证了用户数据的安全和稳定,降低了传统 DBA 工作中的人力成本,提高工作效率,DBA 仅需专注于业务本身。

  1. 基于云数据上述能力,对于 DBA 或使用者来说,也面临一些新的挑战。


DBA 无法直接访问宿主主机系统进行操作,缺少了灵活性


  1. 云数据库是一种基于云原生系统,从云的角度来进行考虑出发的,存储和硬盘也是基于虚拟机和容器能力。如何从云原生角度去数据库最优架构,这就要求 DBA 掌握云计算的相关能力。

  2. 在一些大企业,存在很多小系统,小系统如何进行资源的划分和共享,更佳高效的利用。在传统模式下,解决方法可能是不同的系统使用不同的机器资源。在云计算时代,可以使用不同的虚拟机去进行划分,通过资源池进行不同业务的隔离。

  3. 云计算的最大特点就是能够进行按需伸缩,在传统时代,在采购服务器设备时,需要进行提前规划服务器未来的使用配置,业务的增长量等情况。而在云数据库服务,资源随时可以进行弹性伸缩。


3. 在应对从传统数据库到云数据库的转型,DBA 如何增强自身知识和经验的积累,提升自身竞争力,保持良好职业发展?

这个问题从四个方面来分析,对于数据库管理


  1. 夯实基础,在云时代重新审视自己,重新评估自身能力

  2. 私有云数据库和公有云数据库大概是 3:7 的比例,可以将两者进行有效的结合

  3. 不断巩固和强化核心能力,在云时代背景下,DBA 需要在云架构下不断迭代,持续演进。通过数据模型的优化将云计算能力和数据库有效结合

  4. 紧密的结合业务本身,能够更多的识别业务痛点,例如对 sql 质量,log 日志的管理。


5. 通过持续的写作,对技术层面有哪些帮助?

写作是最有效的学习方式。这里原理是费曼学习法,通过输出倒逼输入。因为我们在写作过程中会发现自己的一些知识盲点以及思维盲区,如果可以静下心研究清楚,然后用最通俗易懂的语言表达出来,这其实是很好的学习和提升自己的机会。写作其实挺锻炼思考能力的,因为表达一个观点相对简单,如何将观点论述地清晰、完整、深刻,结构化地表达出来,取决于我们是否真的想清楚了。



  1. 将接触过的问题进行转化整理,当遇到重复或者相近问题可以再次查看记录过程,达到事半功倍的效果

  2. 在认知层面得到提升,在不断遇到问题解决问题的过程中,通过写博客可以将碎片化进行系统性的梳理。

  3. 技术的学习是一个孤独的过程,通过技术的连接可以认识更多志同道合的朋友,互相学习交流可以让彼此有一个更大的提升。

6. 当前,数据库行业蓬勃发展,给数据库从业者带来了新的机会,从数据库开发者行业来看,对数据库从业者有哪些诉求?

当前,国产数据种类国产一共有 245 款,厂家也有近 100 家,发展十分迅猛,为数据库从业者提供了一个广阔的就业空间。数据库从业者需求很大,根据从事的具体领域和决策,要求也是多样性的。


  1. 在从事领域来划分,可以分为数据库内核开发,数据库内核生态工具开发,数据库迁移开发,数据库运维调优,数据库应用开发,以上不同具体领域开发会涉及到数据库的不同方面。

  2. 在角色角度来划分,如开发,测试,市场授权,售后实施,每个角色对数据库掌握的侧重点也不相同,当然,数据库入门的必备知识是都要掌握的。

6. 作为一名 DBA,是否应该掌握哪些编程语言?

  1. 从学习编程语言的目标来看,对于工作年限较长的 DBA 来说,不应该是去强调某种语言,而是学习编程思维

  2. 对于没有经验的 DBA 来说,可以尝试学习 Python,而不是一直使用 shell。从系统管理到 Web 工具再到数据库管理和集成,与已插入功能的已建立框架配合使用时, 可以利用 Python 从一个开发平台执行数据分析,显示和存储,从而缩短了开发时间

  3. DBA 不同的层级薪资差距较大,掌握一门与自己工作相匹配的编程语言可以增加自己的选择面。

7. 要快速的掌握一门技术,通过系统化培训认证可能是一种比较好的方法,在考证的经历过程中,通过考证带来了哪些帮助?

  1. 对于开发水平不同的同学,可以选择入门,中级,高级认证。例如,对于数据库认证来说,数据库的基础理论是一样的,在认证完初级认证后,可以为我们进一步的深入学习打下一个良好的基础。

  2. 对于华为认证的整个生态体系,能力认证是一个非常重要的环节。

  3. 对于企业客户,内部 IT 从业人员也会有相对于考证要求。

  4. 对于高校学生,考取相关开发者认证可以增加自己含金量,提升实力。


总结

云数据库时代,数据库软件越来越成熟和智能,伴随着云计算、分布式技术的逐步落地,近十年来数据库的形态发生了很大变化,各类数据库不断涌现,数据库架构也随之演进。云时代的到来让 DBA 们的职业生涯产生了危机,但是有危机感是特别好的事情,有危机才有生机,DBA 们也需要与时俱进。


发布于: 2022-10-28阅读数: 26
用户头像

乌龟哥哥

关注

正在努力寻找offer的大四小菜鸟 2021-03-16 加入

擅长 Hbuilder、VS Code、MyEclipse、AppServ、PS 等软件的安装与卸载 精通 Html、CSS、JavaScript、jQuery、Java 等单词的拼写 熟悉 Windows、Linux、 等系统的开关机 看–时间过得多快,不说了,去搬砖了

评论

发布
暂无评论
“程”风破浪的开发者|云数据库时代,DBA要掌握哪些技能?_学习方法_乌龟哥哥_InfoQ写作社区