技术开发 频道

数据库管理非常好的实践:DBA团队能力的平衡

        【IT168 评论】IT经理在构建数据库管理团队的时候往往面对的是一个艰巨的任务。从原始数据库开发到系统运维标准的最终建立,整个过程需要许多不同的技术能力。

  根据实践者的观点,数据库管理是一门艺术,它需要团队的Leader培养DBA的各种能力,以便管理完整的数据生命周期。

  DBA团队最基本的工作就是设计、编码并创建数据库系统,确保它们在生产环境中按计划运行,无论数据增长、程序升级或者发生任何故障,DBA团队都需要让你的数据库正常的运转。

  要组建一支高度协作并且能力均衡的数据管理团队,第一步要确认这支团队属于哪个部门,是开发部门还是运维部门。

  贸易集团DRW控股的DBA团队主管Michelle Malcher表示,DBA的走向是由企业业务来决定的。如果业务部门需要数据库管理系统提供生产支持,那么团队就会收编于运维部门。如果有很多新的编程项目需求,那么团队就需要辅助开发部门进行工作。

  “DBA团队的组建,首先需要确定是内部开发更多,还是让数据库正常运转更多。” Malcher说。

  Malcher提醒,尽管有些团队成员在特定领域的能力很强,但主管并不能将团队划分成多个小组,分别负责开发和运维。数据库工作负载有大有小,也许某个团队成员由于不可控的原因无法进行工作,就需要团队的其他成员代替他,因此所有的DBA需要对开发和运维两方面都有所了解。

  数据管理所需要的技能

  CBN公司的首席数据架构师Louis Davidson同意Malcher的观点,DBA需要更广泛的技能集。

  “即便他们不写代码,DBA也需要懂得读代码。如果用户或者开发人员误操作导致数据丢失,那么找回这些数据必然是DBA的职责。” Davidson说。他曾经出版过三本关于SQL Server数据库管理的书籍。

  对于医疗健康机构的数据库管理员Brandon Leach来说,他看问题的角度与前两位有所不同,但他强调了协作的重要性。

  Leach表示:“我们有一个数据架构师,他的工作就是定义schema,我们每次都会深入沟通数据的走向以及每个细节。我的角色就是确保数据的可用性,并且不断优化性能。我还会监控哪些用户访问了哪些数据,以及系统之间的关系。”

  “大多数开发人员并不会直接接触到生产环境,但一个DBA就不同了,他们需要确保硬件得到最大程度的发挥,并且对代码进行优化。”CBN的Davidson说。

  何时寻求帮助

  由于数据负载的不断增加,协调开发团队与运维团队的任务变得越来越重要。数据库管理员就业率在近十年中增加了31%,这得益于企业中不断增长的数据量,以及新的数据库安全保障手段。

  当工作压力超越企业内部可用的资源时,那么你就需要考虑在外部寻求帮助。有些时候,企业仅仅是人手不够,但项目外包或者招募外部人员进入部门的时候,你最好不要打破原有团队的化学反应。

  “在寻找外部的顾问时,要让你的团队感觉他是一个良好的补充,起到了辅助作用,而不是让团队感到他会取代他们的位置。不让外部帮助造成威胁,这是对你团队最大的恩赐。” Davidson说。

  另外,团队成员感觉自身的能力能够胜任该工作,但你却没有给他机会的时候,这也会对他造成很大的伤害。

  外部的帮助并不一定是很高级的,它可以是简单的维护、打补丁或者非工作时间的升级等,这些都适合远程DBA来完成。而企业内部团队可以将更多的精力放在高可用性以及服务器级别性能等方面。

  “我可以把一些任务外包,但每周还是会有几次被电话叫醒。” Leach表示,远程工作的DBA不可能帮你解决所有问题,比如数据模型更改或者大量数据更新使得查询延迟等。

  如同其他数据库专家,Leach强调了数据库项目或者服务器设置变更后所隐藏的风险。任何变更都可能带来意料之外的副作用。但是数据就是这样,没有什么会保持不变,所以DBA团队要用于面对变化。

  阐明计划、权衡项目变更的风险与回报,这是数据管理团队主管的工作。每一个主管都需要具备良好的沟通能力,同时还需要努力培养团队成员之间的沟通文化。

  Davidson说:“管理DBA团队需要在自负与谦虚直接需求平衡点,同时还要权衡技能与个性。”

  原文链接:http://www.searchdatabase.com.cn/showcontent_75807.htm

0
相关文章