发布者:上海IT外包来源:http://www.lanmon.net点击数:1420
蓝盟IT小贴士,来喽!
键值的存储可能是最简单的面向任务的NoSQL数据库。 其初始数据模型并不复杂:主要是基于亚马逊在每两年一次的ACM操作系统研讨会(amcsyposimumonoperatingsystempriciples )上发表的白皮书,论文名为Dynamo。 在此讨论的数据模型是亚马逊购物车系统(Amazon's shopping cart system ),要求高可用性和高负荷。 因此,键值很容易存储数据库的基础数据模型。 键值存储为无模式的数据模型。 实际上,该系统使用大量的商业硬件构筑集群,扩展性非常高,搭载了Amazon等高端应用程序。 存储在键值中的产品包括DynamoDB、Riak、Project Voldemort、Redis和Aerospike。
列式存储是面向任务的另一个数据库解决方案。 数据模型比键值的存储稍微复杂,并且包含一个大的稀疏表结构,其中包含多个存储键列。 与Dynamo系统一样,列式存储也基于特定公司的特殊需求。 谷歌提出的解决方案在2006年OSDI会议(opissdesignandimplementationsymposium,操作系统设计与实现研讨会)上发表在BigTable论文中。 除谷歌产品外,还实现了像apachecassa和HBase这样有趣的开源。 在大多数情况下,这些系统可以与Map/Reduce批处理结合使用来处理高级查询。
文件存储—随着网页和应用程序的爆炸式增长,文档存储可能是最有名、最常见的NoSQL数据库类型。 如名称所示,文档存储的重要概念——文档可以是半结构化信息单元,XML、JSON、YAML、OpenOffice、MS Office或者其它可用文档。 其记忆和检索是一种简单的无模式方式。 文档存储产品包括流行的MongoDB、Apache CouchDB、MarkLogic和Virtuoso。
分享到: