数据库管理是一个具有许多可能角色和许多其他选项的职业
该数据库管理员是在最关键的角色之一ICT部门,或许在整个组织。毕竟,这是负责确保一个或多个数据库的可用性,效率和安全性的人。但是,还有更多的东西; 市场上有不同类型的DBA,他们扮演着截然不同的角色,而DBA所做的事情通常都是根据客户的需求而定的。就像在医学领域,有不同类型的专业化,根据需要也有不同的DBA专业。在这里,我们将了解不同类型的DBA以及它们的作用。
担任数据库管理员
总的来说,成为一名DBA有一些很好的理由。DBA专业是IT领域收入最高的专业之一,被认可和接受为重要和负责任的专业。管理公司的数据,以及从中提取和收集有意义的结果和报告(从而将其从原始数据转换为有用的,可操作的信息)的能力对于任何希望在竞争中保持领先的组织至关重要。这就是为什么数据库管理员的工作增长预计将比2018年所有职业的平均增长速度快得多。
但DBA也是一个有很多选择的职业。一些DBA专注于数据库的非常具体的方面,例如逻辑设计和与应用程序的集成; 其他人专注于性能调整和备份。另一种类型的DBA可以归零数据仓库和数据集市。
那么在那里存在哪些类型的DBA,它们究竟做了什么?让我们来看看。
系统DBA
系统DBA是最常见的DBA类型,因此有时简称为DBA。这种类型的DBA严格关注技术问题而非业务问题。(将业务需求与其技术IT能力相结合的工作属于业务或系统分析师,这是一个完全不同的角色。)然后,系统DBA将主要关注确保支持组织应用程序系统的数据库正在运行有效率的。他或她也可能是负责人:
定期数据库调整
应用数据库补丁和升级
设置操作系统环境
设置和检查备份
因此,系统DBA确实是一个多面手,大多数DBA,甚至是专家,都是从这个角色开始的,因为它是一种了解DBA世界尽可能多的方面的方法。
高级DBA
然而,正如几乎所有职业一样,新毕业的DBA和经验丰富的老将经历了10年的巨大差异。特别是在大型组织中,经验丰富的DBA将拥有高级DBA的单独职称,并可能负责管理初级DBA团队,以监督和指导团队的工作。通过这种方式,高级DBA不太关心日常的数据库维护活动,而是负责使团队的工作与组织的战略目标保持一致。他还可能负责调查新技术和软件,并评估其在组织数据库环境中的可能性,从而提高效率并降低组织的总体拥有成本。所有这一切都必须在管理团队和密切关注初级DBA的工作时完成。因此,高级DBA在技术和业务领域之间保持良好的平衡。即使他们的职责远没有他们的年轻人那么技术性,但许多高级DBA仍然是一名技术人员,这意味着你可能会因为他是一名初级DBA,在他能够做的更简单的时间内感到一阵叹息。完全沉浸在自己的迷失中SQL脚本,数据库调优以及表和索引创建。嗯,美好时光的怀旧之情!
系统DBA将经常被要求以系统管理员的身份加倍。在较小的组织中尤其如此,其中单独的专业角色可能不那么明确。作为他的角色的一部分,DBA需要非常熟悉操作系统和相关的设置问题,例如运行数据库的服务器,如何分配和分区硬盘空间,如何确保硬件和网络的最佳使用资源等。这些职责中的一些与系统管理员(系统管理员)角色存在明显的重叠,因此许多组织只雇用一个人戴两个帽子。然后,此联合角色称为系统和数据库管理员,或简称为SysDBA。
对于有抱负的DBA来说,尽可能多地学习系统管理员任务以便尽可能地销售是很有意义的。有时DBA也会被要求加倍作为系统分析师。同样,这在较小的组织中更为常见,就像我们之前所说的那样,根本就没有兼聘DBA和系统分析师的奢侈。然而,事实证明,这种多角色责任在以后的生活中通常是非常有益的,因为它使DBA能够很好地了解他的角色与IT和组织其他部门的其他人之间的关系。
我们应该再次注意到,系统DBA通常不关心数据库的开发,只关注它们的维护。开发部分通常由我们将要查看的下一类DBA完成。
Database Architect
一个数据库架构师只是参与新的数据库,而不是他们的维护,备份,调整或管理的设计和开发方面的专家。在创建新应用程序时,他与开发人员,程序员和系统分析师密切合作。他需要了解正在开发的业务功能或逻辑,然后将它们转换为新数据库中相应的数据库结构。
假设我们正在设计一个新的数据库来支持商业银行的业务活动。DB架构师将首先仔细研究新应用程序的数据流和逻辑图。然后,他将研究数据库模型以准确反映相同的情况,并将其呈现给开发团队的其他成员,尤其是程序员。DB架构师还将:
负责将贷款,账户,投资和客户分成单独的表格
确保准确表示各种业务对象(客户,银行账户,交易,贷款等)之间的关系,
在适用的情况下将业务规则和限制映射到数据库(例如,确保所有客户都必须具有社会保险号)
在各种表和列上创建索引以优化数据检索和搜索
DBA架构师角色需要与系统DBA不同的技能集。与系统DBA不同,架构师必须能够创建数据库模型,并作为开发团队的一部分密切合作,以交付最终的应用程序。对于非常大的应用程序,DBA架构师团队更可能是单独的数据架构师。
如今,只有少数组织定期设计自己的软件应用程序; 一个甚至更小的百分比经常这样做,需要一个全职的数据架构师。相反,大多数组织需要的是维护已经开发的数据库和应用程序的人。因此,数据库架构师远少于系统DBA。大多数架构师要么是个人顾问,要么受雇于软件开发公司,他们主要从事不同的项目,以开发特定于某些客户,细分市场或行业的应用程序和数据库。也就是说,有一些大型组织具有重要的内部软件设计和开发需求; 这些公司可以负担得起聘请全职数据库架构师。
数据仓库管理员
一个数据仓库是用于深入的数据分析,提供多域洞察组织的数据数据库的一种特殊类型。对于之前从未与数据仓库进行过交互的人来说,这通常不容易掌握,因此一个例子可能有助于澄清事情。
例如,以商业银行为例,考虑这样一个银行中的一些不同的软件应用程序以及支持它们的数据库。第一个是运行核心银行业务的数据库(和应用程序),例如保存银行账户,贷款,货币交易和ATM交易的记录。一个完全不同的应用程序(因此是独立的数据库)是人力资源和工资管理系统,用于跟踪银行人力资源部门如何管理自己的员工。另一个数据库应用程序组合将是银行自己的财务会计系统,用于跟踪其盈利能力,业务交易和财务记录。最后一个很有意思,因为作为一个企业,银行需要经营几个银行账户。这些帐户很可能在其自己的核心银行应用程序中维护,因此银行是其自己的软件应用程序中的客户端。(了解有关数据仓库的更多信息数据仓库101.)
这就是数据仓库管理员的用武之地。每个应用程序数据库系统都维护着自己独立的数据,但是如果我们能找到一种方法将所有不同系统的所有历史数据转储到另一个数据库中,那么我们就可以开始了解一些有趣和隐藏的趋势。输入数据仓库。这是一个特殊的数据库,其中将定期添加来自核心系统,人力资源系统,会计系统和许多其他数据的所有数据。然后使用特殊提取,转换和加载来转换该数据(ETL)数据仓库中的工具和过程,以确保所有数据符合数据仓库可以上载的单一标准。最后,数据仓库的深入和细粒度的报告和分析用于获取未知趋势和事实,这些趋势和事实仅通过汇集来自不同系统的数据来揭示。
但是,通过长时间跨越两个系统的数据,数据仓库管理员可以选择一种趋势,可用于确定公司开展业务的方式是否需要进行更改,或者业务应该利用哪些渠道。数据仓库通过揭示趋势和分析来提供商业价值,这些趋势和分析不仅在使用单独系统时是未知的,而且可能是不可知的。管理层然后决定如何处理从仓库收集的有价值的信息。
与支持日常事务应用程序系统的读写数据库不同,数据仓库大多是只读的,因此需要进行优化。它还需要精通ETL过程的人才能使用特定的RDBMS。最后,它需要能够启动和利用数据仓库中的高级报告和分析工具的人员。当然,这个人首先要求具备普通DBA的技能,然后再进一步专注于数据仓库的特定要求。这类似于首先必须学习标准医学课程的兽医或外科医生,然后将她的专业知识缩小到专业领域。
其他类型的DBA
虽然这些是DBA的主要类型,但仍有更多专门的子类别。
该行业的一些人坚持申请DBA的特殊类别。这是系统DBA的子类型,仅处理单个应用程序或相关应用程序组。此DBA通常是关键应用程序的数据库结构(有时是业务方面)的专家。例如,在银行中,应用程序DBA可以是仅处理运行核心银行应用程序的数据库的专家,并且不处理其他系统和数据库。在某种程度上,应用程序DBA的角色可能会跨越到业务或系统分析师的角色。
另一种特殊类型的DBA有些区别于性能调优DBA或性能分析师。该DBA几乎专注于增强数据库的性能。这涉及检查并在必要时更改影响数据库响应时间和性能的各种参数:表结构,索引,磁盘配置,服务器规范等。事实上,数据库性能调优可能很复杂,并且足以成为一项独立的职业。
你想成为什么样的DBA?
除了各种类型的DBA之外,DBA所做的还取决于组织的规模。较小的组织有时只能负担一个DBA - 如果他们可以负担得起一个。在这种情况下,公司可能会从第三方外包DBA。或者,DBA角色可能与IT部门中的其他角色绑定,例如系统或网络管理员甚至IT经理。另一方面,较大的公司更有可能同时拥有专家或多个DBA的资金和需求。这实际上取决于可用资金和组织的优先事项。当然,所有这些选项对专业DBA都有利有弊。
无论专业化或公司情况如何,成为一名DBA都是一项有趣且具有挑战性的工作。它也是一种需求量很大的行业,而且往往需要尊重。如果你有兴趣担任DBA,那么,还等什么呢?