数据库管理员(DBA)是数据专业找那个最常见、也是最广泛被接纳的角色。DBA在数据存储和操作活动中承担着主导角色,在数据安全活动及物理面模型建模,数据库设计活动中也是关键的角色。DBA分为开发环境、测试环境、QA环境及其他特殊数据库环境提供支持。

        DBA不是独立完成数据存储和操作所有相关活动的唯一角色。数据管理专员、数据架构师、网络管理员、数据分析师和安全分析师也要参与数据性能、保留和恢复的规划。这些团队还可以参与外部资源的数据获取和数据处理;

        从专业分工来看,DBA被分为生产DBA、应用程序DBA、过程和开发DBA。一些企业也会将数据存储系统从数据存储应用/架构独立出来,设有专门的网络存储管理员(NSA)负责;

        在各个组织中,IT部门内的不同专业角色可能向不同组织汇报工作。生产DBA可能归属于生产基础设施组或者应用维护支持组,应用程序DBA及过程和开发DBA有时被归并应用开发组,NSA一般归属于基础设施组。

生产DBA

        生产DBA主要负责数据操作管理,包括:

  • 通过性能调优、监控、错误报告等活动,确保数据库的性能及可靠性;
  • 通过建立备份和恢复机制,确保在任何意外情况下数据能够被恢复;
  • 通过建立集群和容错机制,确保数据连续可用;
  • 执行其他数据库维护活动,如建立数据归档机制;

        作为数据管理操作的一部分,生产DBA创建以下可交付成果:

  1. 生产数据库环境,包括支持服务器上的数据库管理系统(DBMS)实例;提供足够的资源和容量,确保获得很好的性能;配置适当的安全性、可靠性和可用性级别。数据库系统管理员为DBMS的环境负责。
  2. 在生产环境中,控制数据库实施变更的机制和流程。
  3. 针对各种可能导致数据丢失或数据损坏的情况,建立确保数据完整、可用和恢复的机制;
  4. 建立任何可能发生在数据库或数据服务器上的错误监测和报告的机制;
  5. 提供与服务水平协议(SLA)相匹配的数据库服务,包括可用性、数据恢复及性能等;
  6. 建立伴随工作负载和数据量变化的数据库性能监控的机制和过程。

应用程序DBA

        应用程序DBA通常负责所有环境(开发、测试、QA及生产)中的一套或多套数据库,而不是指定负责管理某个环境的数据库系统。有时,应用程序DBA需要向提供数据库支持的应用程序开发与维护与维护的部门汇报。设置专门的应用程序DBA岗位,有利也有弊。

        应用程序DBA被当做应用支持团队不可或缺的成员。他们专注于某个制定的数据库,可以为应用程序开发人员提供更好的支持服务。然而,应用程序DBA也因此容易变得孤立,忽视了组织的整体数据需求及DBA通用实践。应用程序DBA应与数据分析师、建模师和架构师等密切协作。

过程和开发DBA

        过程DBA负责审查和管理数据库的过程对象。过程DBA专门开发和支持关系数据库控制和执行的过程逻辑:存储过程、触发器及用户自定义的函数(UDFs)。过程DBA确保过程逻辑是按规划进行的、可实施的、经过测试的、可共享的(可重用的)。

        开发DBA主要关注数据设计活动,包括创建和管理特殊用途的数据库,如“数据沙盒”或者数据探索区,通常,这两个角色会合并为一个职位,统称为开发DBA。

网络存储管理员

        网络存储管理员主要关注支持数据存储阵列的软硬件,不同于单一的数据库管理系统,多元化的网络存储阵列系统各有不同的关注特性和监控需求。

09-16 16:11