最近这些年,在数据库管理方面发生了许多变化。开发人员在选择全新的数据库类型,随着云计算使用日益增长,关系型数据库全面统治企业的地位受到了挑战。
最近的更多变化都增加了对托管数据库服务的依赖,这样可以减少用户商店的一些管理任务,同时可以满足开发者连接各种数据源的需求。这种变化可以归因于更快速创建应用程序的驱动力以及使用DevOps技术等等。
分析师DonnieBerkholz分析了451份数据样本,发现数据库管理员(DBA)的角色正在经历转变,这正像是过去十年来系统管理员不得不经历的转变。
正是DevOps这种拥抱新的敏捷方法(通常是开源技术)使得开发者们要对他们的应用程序在生产环境如何运行担负更多责任。
过量的数据存储对于DBA来说存在学习挑战,困难来自数据量方面和数据库多样性方面。
Berkholz说:“DevOps模式下你不可能保持技能停滞,因为技术变化非常快。现在,数据管理员必须服务于各种数据业务,很少有只需要维护某种关系型数据库的时候。”
云服务供应商和其它来源的托管数据库服务功能还在继续扩展,数据库可选方案数量也在相应扩展。主要厂商包括:亚马逊、IBM、微软公司、甲骨文,谷歌、Rackspace以及其它,活跃厂商呈上升趋势。
NoSQL文档数据库制造商MongoDB最近也加入到与AtlasDBaaS的竞争中了。就在上周,谷歌把长期酝酿的beta包转为常规可用了。此外,云SQL、云Bigtable和云数据存储现在都有了服务级别协议,这是数据库管理的标志。
等待平台
面向RESTAPI的数据库工具中心越来越多了,它可以满足开发者连接各种异构数据存储的需求。Berkholz提到,IBM公司在2014年收购了Cloudant公司,在2015年收购了Compose公司,这两家公司都是数据即服务供应商。加上IBM公司自己研发的Bluemix平台,IBM把这些都定位为平台即服务,这正是这种趋势的一种显露。
Compose公司支持的数据存储类型非常多样化,包括PostgreSQL、Elasticsearch、RethinkDB、Redis而且至少有三个版本的MongoDB。
LarryWeber是IBM公司项目营销总监,他说:“既然云环境中有了数据库即服务,数据会很容易使用,开发者可以专心做更有价值的事。”这就意味着未来会有更多新应用,对现有应用需要更少的管理工作了。
与此同时,IBM公司研究发现DevOps时代的中坚人员可能在准备放弃他们不得不接管的一些较新的数据管理工作。2015年底有一次Cloudant管理层和技术用户调查,其中41%企业认为他们大的数据库管理问题是所需要的管理实践。受访者们认为此问题是他们迁移到云环境的驱动力之一。
版本和实例模糊化
ChrisLalonde是Rackspace公司(总部位于美国SanAntonio)副总裁兼数据总经理。他认为,随着云环境中可用数据方案的激增,对专业知识贯通性的需求也在增长。这家云公司很早就升级了数据服务能力,在2013年收购了DBaaS专业公司ObjectRocket。
ObjectRocket带给Rackspace的是大量精通PostgreSQL、MongoDB、Elasticsearch、Redis和其它数据存储类型的专业管理维护人才。今年,Rackspace还更进一步支持了AmazonWebService中的数据服务。这种支持的宽泛程度对传统DBA是很难掌控的。
LaLonde说:“我们有处理各种数据库的专业经验,当然仍然有更多未知知识需要我们学习。在DevOps模式来说,会有许多种数据库需要管理。”
“你需要知道某个数据库实例是否需要更多磁盘空间,你的开发人员要用哪个版本的Python等。我们为客户做了很多这类型工作。在那种情况下,我们相当于变成了客户的DBA。”
下一站:云环境Hadoop
Lalonde说他预计未来几年会有更多种类型的数据存储需要做互联互通。这对管理员们来说是持续的挑战。
在关系型数据库发展的早期,开发人员们扮演着亲身参与的角色。随着技术的成熟,DBA在生产中负责了大部分数据工作。现在,大的不同是为各种用途构造的数据存储种类太多了。最重要的是,向云环境迁移的趋势更持续加剧了数据库管理工作的变革。
这种变革在Hadoop分析和数据仓库领域也同样存在,把这些方面转入云服务进行管理同样也是受影响的。