◆性能监控和调整
DBA负责定期监测数据库服务器,从而找出数据库瓶颈(使数据库性能降低的某些部分)并制定补救措施。对数据库服务器的调整工作要在多个层次上完成。数据库服务器硬件的性能以及操作系统的配置都可能成为造成数据库瓶颈的因素,同样数据库软件的配置也是如此。数据库在磁盘驱动器上的物理安装方式以及索引的选择对于数据库的性能也有影响。数据库查询的编码方式也可能显著改变查询结果返回的快慢程度。DBA需要了解在上述各个层次需要用哪些监测工具,以及如何使用它们来调整系统。从应用设计一开始把性能因素考虑在内是积极主动调整的反映,而不是等待问题发生之后再去修复它们。DBA还需要与数据库应用开发人员紧密合作,以确保应用是按照最佳方式开发出来的,并且能带来良好的性能。
◆疑难解答
当数据库服务器出现某些差错的时候,DBA需要知道如何快速确定问题所在并正确地解决问题,保证不丢失数据或使情况变得更糟。
特殊环境下DBA的任务
除了上述基本职责外,由于某些特殊的数据库环境,一些DBA们还需要掌握一些特别的技巧。
◆高可用性
随着互联网时代的到来,过去那种数据库只需要在白天正常运转的时代已经结束了,现在数据库必须能够提供须提供每周7天每天24小时的全天候服务。网站也已经从静态的、预定义的内容发展成为动态创建的内容---在页面请求发送过来之后,使用数据库创建页面布局。如果网站是全天候可用的,那么支持网站的基础数据库也必须能够全天候工作。在这种环境下管理数据库,DBA需要知道哪些类型的维护业务可以在线完成(也就是在不中断数据库运行的情况下),以及在数据库有可能关闭时制定一个维护“期限”。此外,DBA还要规划为冗余的数据库硬件和软件组件,以便万一数据库出现故障时,冗余系统仍然能够继续要用户提供服务。DBA可以使用在线备份、集群、复制和应急数据库等技术和工具确保更高的可用性。
◆大型数据库(VLDB)
随着企业发现数据库技术的用途越来越多,他们往往用它来保存更多的数据。此外,数据库存储的数据类型也发生了变化,从过去行列整齐的结构化数据发展现在的非结构化数据,比如文件、图像、声音、甚至指纹。这两种趋势带来的结果是一样的:那就是大型数据库(VLDB)的出现。要管理VLDB,DBA需要特殊的技能。过去被认为是非常简单的操作比如复制一个表,所需要的时间可能是非常巨大的。为了保证数据库扩展到非常大的规模时仍然是可管理的,DBA需要了解一些技术,比如表分割(Oracle)、联合数据库(SQL Server)和复制(MySQL)等等。
◆数据提取、转化和加载(ETL)
在数据仓库环境中,一个非常关键的任务是如何有效地加载数据仓库或数据集市中的大量数据,而这些数据是从多个现有的生产系统中提取的。通常情况下,这些生产系统的格式与数据仓库中的标准化定义是不同的,所以数据在加载之前必须要转化(或“清洗”)。在一个特定的公司里,提取数据可能是也可能不是DBA的责任,但是DBA需要确定什么样的提取是有用的,它是数据库决策团队一个关键组成部分。
IT部门领导人
随着流行的数据库产品中集成的功能越来越多,DBA需要管理的任务数目也稳定增长。IT部门领导者通过核查上述关键领域的技能就能确定他们所雇用的DBA能否胜任工作。