研究机构IDC预言,大数据将按照每年60%的比率增加,其中包含结构化和非结构化数据。企业需要想办法发挥这些数据的作用,而长期以来数据库就是一个非常好的解决方案。目前服务提供商正通过云技术推出更多可在公有云中托管这些数据库的方法,将用户从繁琐的数据库硬件定制中解放出来,同时让用户拥有数据库扩展能力。研究公司Wikibon的大数据研究专家Jeff Kelly说:“这是一个非常大的市场。云将是许多大数据的最终目的地。”
当然在DBaaS(数据库即服务)中仍然存在着许多问题,尤其是关于存储在云上的敏感信息,以及云服务中断等问题。不过,云数据库和工具这一新兴市场明显在加速发展。以下是美国《Network World》所关注的10个云数据库工具。其中一些是直接关系型数据库、SQL或者NoSQL数据库提供商,还有一些则将重点放在了开源数据库上。当然这里列出的10个云数据库不可能面面俱到,像甲骨文、惠普以及EMC/VMware这些大型的市场参与者也已经推出了他们各自基于云的产品,以及针对这些工具的策略。
1.亚马逊Web服务(AWS)
亚马逊Web服务(AWS)拥有多种基于云的数据库服务,包括关系型数据库和非关系型数据库。亚马逊关系型数据库(RDS)能够运行MySQL、甲骨文以及SQL Server等多种实例,而亚马逊简单数据库(Amazon SimpleDB)则是一种专门针对小工作负载的非模式化数据库。在NoSQL方面,Amazon DynamoDB是一种支持固态硬盘的数据库,它能够自动在至少3个可用空间中复制工作负载。亚马逊Web服务的CTO Wemer Vogles表示,DynamoDB是亚马逊Web服务历史上增速最快的服务。此外,亚马逊还发布了一些辅助的数据管理服务,例如最新发布的Redshift数据仓库,以及能够帮助用户整合多来源数据以方便管理的Data Pipeline。
2.EnterpriseDB
EnterpriseDB将重点放在了开源的PostgreSQL数据库上,不过让它名声鹊起的原因却是其与甲骨文数据库应用协同工作的能力。通过使用EnterpriseDB的Postgres Plus Advance Server,用户可以通过EnterpriseDB的使用为本地甲骨文数据库编写的应用。目前EnterpriseDB已能够在惠普和亚马逊Web服务的云服务上运行。此外,EnterpriseDB还具备二元复制及定期备份等功能。
3.Garantia Data
Garantia为用户提供了一个网关服务,通过这个服务,用户可以在亚马逊Web服务公有云上运行开源的Redis和Memcached内存非关系数据库服务。Garantia软件可以帮助开发者为这些开源数据平台自动扩展节点,创建集群以及容错模型。
4.谷歌Cloud SQL
谷歌的云数据库服务主要集中在谷歌Cloud SQL和BigQuery这两大产品上。前者被谷歌描述了一种类似MySQL的完全关系型数据库基础设施,而BigQuery则被塑造成在谷歌的云基础设施上运行大数据集查询的分析工具。
5.微软Azure
微软利用其SQL Server技术研发了一个关系型数据库,允许用户直接访问云中SQL数据库,或者在虚拟主机中托管SQL服务器实例。微软对混合型数据库也非常关注,该公司使用SQL Data Sync整合了用户本地及Azure云上的数据。微软还拥有一个名为Tables的服务,这一基于云的NoSQL数据库服务采用了Blobs(二进制大对象存储)算法,并专门针对视频和音频等媒体文件进行了优化。
6.MongoLab
在NoSQL的世界中,有各种各样的数据库平台可以选择,其中包括MongoDB。MongoLab允许用户通过亚马逊Web服务、微软Azure和Joyent等大型云服务提供商访问MongoDB。与其他网关类型服务一样,MongoLab同样在应用层整合了多种PaaS(平台即服务)工具。MongoLab既可以在共享的环境中访问,也可以在专用的环境中运行,不过后者的开销通常比前者稍大一些。
7.Rackspace
通过名为“Cloud Databases”的产品,Rackspace的数据库既可以成为一个云,也可以成为一个托管服务解决方案。Rackspace将重点放在了Cloud Databases基于容器的虚拟化上,他们认为这将赋予数据库服务远甚于基于纯虚拟化基础设施的性能。Cloud Databases还以OpenStack平台为基础整合了一个SAN网络存储。Rackspace在近期还在其云服务上发布一个由服务提供商Cloudant研发的NoSQL数据库。
8.SAP
企业软件巨头SAP目前正在通过基于内存技术的平台HANA进军云计算市场。来自HANA的云数据库与Sybase等其他本地数据库工具形成了互补。目前该数据库已经能够在亚马逊Web服务的云服务中使用。HANA同时还包括了其他非数据库应用,例如商业管理工具和应用开发工具。
9.StormDB
不同于其他的云数据库,StormDB是在实体服务器中运行其分布的关系型数据库,这意味着没有虚拟主机的存在。StormDB的官员指出,这样可以带来更好的性能和更简易的管理,因为用户不需要去给他们的数据库选择虚拟主机的容量。然而即使使用的是实体服务器,用户还是在共享使用集群中的服务器。不过StormDB承诺,所有用户的数据库都是独立的。此外,StormDB还能够在云中对数据库进行自动分片。目前该公司正在运行一个免费的测试版。
10.Xeround
Xeround是一个可以横跨多个云供应商及平台去部署可扩展MySQL数据库的管理工具。Xeround提供了很高的可访问性和扩展性,不仅能够横跨亚马逊Web服务、Rackspace、Joyent、惠普等不同云供应商,还能够在OpenStack和思杰(Citrix)平台上工作。