企业为何选择在AWS上部署NoSQL数据库

日期: 2014-10-28 作者:George Lawton翻译:杨宏玉 来源:TechTarget中国

由于亚马逊Web服务(AWS)易于部署和扩展,它为NoSQL数据库替代传统关系型数据库提供了背后的支撑。在近期举行的NoSQLNow大会上,参会者表示,当涉及到NoSQL系统时,使用AWS的一个好处是多数系统在设计时考虑到了水平扩展性(Scale out)和轻量级的性能分析。

从水平扩展的角度来看,亚马逊提供了足够的容量以减少对硬件选购与节点需求数量之间的错误评估。从性能的角度来看,AWS允许企业重建运行中的节点,或增加新的节点,而不用担心某个特定系统的性能。

这些机构也发现,AWS非常适合物联网应用以及后端数据库的需求。当需要额外的数据库产品时,企业客户正在为某些产品添加新特性。这些产品在以前由于成本或时间而受到限制

简单且廉价

现在,很多企业都在AWS上构建自己的应用程序,因为将服务器启动并运行起来非常容易,且价格低廉。随着业务的发展,有些企业可能会选择其他基础设施和专用服务器供应商,但是仍然会有很多客户会继续使用亚马逊的基础设施服务进行扩容。

这里举一个例子,Vizury公司提供了数字化客户关系管理(CRM)服务,他们使用在AmazonR3实例下运行的Aerospike数据库服务器(Amazon EC2的内存优化实例的高级版本)来加强大数据平台。通过使用Aerospike,Vizury已经扩展了其规模,能够处理跨四个数据中心、每天五十多亿的申办请求,并在毫秒内响应及返回用户特定的投标值。同时,Vizury只使用了其四分之一数量的服务器来提供相同级别的服务。

为了充分利用SQL,很多企业可能会考虑采用新架构,如实时大数据或包括三个层次内容的驱动程序,这些层包括:

  1. 一个Web应用程序层必须根据消费者的需求弹性扩展。
  2. 实时层或前端内存NoSQL数据库,保存着实时内容或者关于用户行为的“热”数据,例如会话ID、cookie、设备ID、位置和页面访问量。
  3. 一个Hadoop分布式文件系统或者Hadoop集群含有对消费者行为存档或历史信息,如点击流。像Web应用程序层,这些集群也随着分析作业运行的时间发生变化。

NoSQL的优势

在很多情况下,企业应该考虑使用NoSQL数据库来替代关系数据库,以减少故障、提高性能和可扩展性。Couchbase高级产品营销经理ShaneJohnson表示,NoSQL数据库采用“无共享(shared nothing)”架构,它使用单点类型且没有单点故障。它以横向扩展为设计原则,这与传统关系数据库正好相反。 AWS提供了一个弹性的基础设施,非常适合横向扩展的NoSQL服务器,以满足用户和数据的持续增长创造了性能和可扩展性要求。

对于那些在动态环境或预定义模式以外环境的开发者来说,实施NoSQL数据库是十分理想的选择。Redis实验室的联合创始人兼总裁OferBengal表示,可扩展性是另一个关键性的驱动,因为SQL数据库很难超越单机。NoSQL数据库的横向扩展,使得开发人员能够添加更多节点,以满足不断增长的需求。

NoSQL数据库还让企业应用能够处理不同类型的数据。这可以包括键/值数据存储、文档、图表和高级的字典服务器。这使得开发者创建应用程序时更容易表达自己的意愿。

企业架构师还必须考虑到NoSQL的一些局限性。过去几年内,其开发的NoSQL数据库都有明确的权衡。当在云中设计应用程序时,很容易就能够充分利用这一点。例如,如果对于一个团队来说数据集太大,系统工程师和应用开发人员就需要在一致性基础上建立数学模型,而不是选择关系型数据库那样可以维持全局状态的数据存储。

这可以由传统的关系数据库管理系统(RDBMS)通过在独立的数据库实例之间共享数据而实现。建议企业架构师使用较弱的数据类型模型,诸如Hadoop或者Cassandra,如果那样可以提供一个更简单的操作模式,以解决集群调整和数据丢失处理等问题。

Couchbase的Johnson建议企业考虑使用特定的AWS服务,以获得最大NoSQL数据库收益。AWS DirectConnect 可以帮助企业将数据从AWS部署复制到本地部署,并且降低网络成本、享受更高的带宽速率和一致的网络性能。

AWS CloudFormation模板可以帮助完成服务器实例的配置以及自动化部署。CloudWatch可以为数据库提供EC2实例的高级监控。Couchbase公司还开发了各种工具对其进行补充。例如,对于位于集群上实际分布分散的各个服务器组来说,其机架感知工具可以确保数据复制到多个可用区(即一个区域的某特定物理位置)、实现跨数据中心的复制并提供在多个地点数据的一致性服务,以保证数据复制到多个区域。

随着NoSQL数据库的普及和发展,优于传统RDBMS应用的新工具不断涌现。 为了确定NoSQL方案的正常运行,AWS生态系统牺牲了若干特性,并提供了一系列来构建可扩展性数据库应用的解决方案。例如,AWSSimpleDB只支持有限的数据类型和合理的实例,而且不提供并发控制。使用工具为AWS数据库增加功能或服务,可以帮助企业降低营销和开发成本。

NoSQL技术肯定不会完全取代所有的传统数据库。对于老客户来说,传统的RDBMS有着良好的声誉。然而,介于一致性和可靠性问题可以在特殊实例下加以解决,NoSQL数据库承诺向各种的新应用程序打开大门,并提供了一个可行的替代方案。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

翻译

杨宏玉
杨宏玉

TechTarget特邀编辑。北京邮电大学计算机科学与技术专业硕士。熟悉软件开发流程,对系统管理,网络配置,数据库应用等方面有深入的理解和实践经验。现就职于IBM(中国)投资有限公司,从事IBM服务器相关软件的开发工作。业余时间喜欢游泳登山,爱健身,喜欢结交朋友。

相关推荐