数据即服务(DaaS):云的数据结构
Ruby 发表于:10年05月25日 11:31 [转载] 51CTO
数据存储和检索从未像现在这样处于令人兴奋的新技术最前沿,并且它是一个早已应该来临的重大更新。让我们细想一下,在过去二十年里,文件系统或关系数据库真正改变了多少?
Web2.0:在新技术里,这是一个被过度使用、被过度宣传并且被赋予过多意义的词汇。现在人们在每个场合都会谈到它。过去,Web 2.0 曾被视为年轻的PHP高手玩弄的宝贝玩意儿,现在,从这一概念里已经孵化出各种各样的应用程序。这些大规模分布、社会化传播的系统,为数据存储系统的容量带来了前所未有的压力。
AJAX 和其他类似的富客户端技术的出现,让人们期待看到更为敏捷漂亮的用户界面,这对数据访问和低延迟提出更高的要求。此外,随着富媒体(视频、高清图片)的迅速增加,数据容量出现爆炸式增长,并且这一趋势也将继续下去。最终,过去只有在高度专业化的系统中(比如电信和某些军用系统)才会出现的数据可用性需求,随着丰富的移动设备和互相连接平台(比如智能电话、上网本和平板电脑)的增加,现在已普及到更为广泛的应用类型中。
令人关注的地方在于,这种类型的互动已经不再局限于社交网站上用户交流,比如在Facebook上跟踪好朋友的漂亮女友。这种充满粘性并具有病毒式传播效果的互动正在慢慢入侵主流应用,因为它能够让用户参与进来,给他们一种“我的地盘我做主”的感觉。SalesForce公司提供的Chatter云协作工具就是一个很好的示例。或者也可以以下事实为例,在很多企业的局域网里已经具备了这种社交化的功能,比如共享书签或分享“心情”。甚至提供金融的公司也开始利用丰富的视觉化机制对基金进行比较,然后还可以将个人的观点与“好友”分享。对于新闻和媒体网站,除了新闻本身,这些网站还可以从用户评论和交流中收集更多有趣的信息。
回到技术。这给我们带来了什么?大容量,应用方面的高要求,低延迟访问的需求,数据存储系统不间断的高可用性,那些困扰着传统关系型数据库管理系统(RDBMS)的所有因素。于是,这个世界开始求助于一项名为“内存数据网格”的技术。
内存数据网格(In-memory Data Grid)
内存数据网格并不是新技术,已经出现一段时间了。随着应用程序不断成长,需要适应快速增加的数据以及满足增加更为快速的预期和要求,内存数据网格被用于大型或任务重大的应用程序中,以此缓解RDBMS系统的工作量。你可以会将数据网格的这种应用成为分布式缓存(distributed cache)——逐渐过时的 RDBMS 系统中附带的一个pacemaker工具。
但是,即使使用这种技术仍然不足以解决问题,因为RDBMS 仍会成为的最大的障碍,尤其在具备真正灵活性的云式部署中,在这种部署中,为了能够在任一时刻能够最高效地处理荷载,将按需增加或减少虚拟接节点(virtual node)。正是在这里,NoSQL出现了。
