四类nosql数据库适用场景总结

四类nosql数据库适用场景总结

ID:27172754

大小:77.17 KB

页数:5页

时间:2018-12-01

四类nosql数据库适用场景总结_第1页
四类nosql数据库适用场景总结_第2页
四类nosql数据库适用场景总结_第3页
四类nosql数据库适用场景总结_第4页
四类nosql数据库适用场景总结_第5页
资源描述:

《四类nosql数据库适用场景总结》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、:据库适用案例现在讲几个适合使用键值数据库的情况。1存触会话信息通常来说,每一次网络会话都是唯一的,所以分配给它们的sessionid值也各不相同。如果应用程序原来要把sessionid存在磁盘上或关系型数据库中,那么将其迁移到键值数据库之后,会获益良多,因为全部会话内容都可以用一条PUT请求来存放,而且只需一条GET请求就能取得。由于会话屮的所有信息都放在一个对象中,所以这种〃革请求操作〃(single-requestoperation)很迅速。许多网络应用程序都使用像Memcached这样的解决方案。如果"

2、可用性"较为重要,可使用Riak.2用户配置信息几乎每位用户都有userid、username或其他独特的属性,而且其配置信息也各自独立,诸如语言、颜色、时区、访问过的产品等。这些内容可全部放在一个对象里,以便只用一次GET操作即获取某位用户的全部配罝信息。同理,产品信息也可如此存放。3购物车数据电子商务网站的用户都与其购物车相绑定。由于购物车的内容要在不同时间、不同浏览器、不同电脑、不同会话中保持一致,所以可把购物信息放在value属性中,并将其绑定到userid这个键名上。此类应用程序最宜使用Riak集群了

3、。不适用场合键值数据库在某些场合下并不是最佳方案。1数据间关系如果要在不向数据集之间建立关系,或是将不同的关键字集合联系起来,那么即使某些键值数据库提供了"链接遍历"等功能,它们也不是最佳选择了。2含有多项操作的事务如果在保存多个键值对时,其中有一个关键字出错,而你又需要复原或回攘其余操作,那么键值数据库就不是最好的解决方案。3查询数据如果要根据键值对的某部分值来搜寻关键字,那么键值数据库就不是很理想了。我们无法直接检视键值数据库屮的值,除非使用某些类似RiakSearch的产品或是像Lucene、Solr这样

4、的"检索引擎"(indexingengine)o4操作关键字集合由于键值数据库一次只能操作一个键,所以它无法同时操作多个关键字。假如需要操作多个关键字,那么最好在客户端处理此问题。文档数据库适用案例1事件记录应用程序对事件记录各有需求。在企业级解决方案中,许多不同的应用程序都需要记录事件。文档数据库可以把所有这些不同类型的事件都存起来,并作为事件存储的"屮心数据痺〃(centraldatastore)使用。如果事件捕获的数掘类型一直在变,那么就更应该用文档数据库了。可以按照触发事件的应用程序名"分片飞也可以按照

5、orderprocessed或customerjoggede等事件类型〃分片2内容管理系统及博窑平台由于文档数据库没有"预设模式〃(predefinedschema),而且通常支持JSON文挡,所以它们很适合用在"内容管理系统"(contentmanagementsystem)及网站发布程序上,也可以用来管理用户评论、用户注册、用户配景和面向Web文档(webdocument)。3网站分析与实时分析文档数据库可存储实时分析数据。由于可以只更新部分文档内容,所以用它来存储〃页面浏览量〃(pageview)或"独立

6、访客数〃(uniquevisitor)会非常方便,而且无需改变模式即可新增度量标准。4电子商务应用程序电子商务类应用程序通常需要较为灵活的模式,以存储产品和订单。同时,它们也需要在不做高戚本数据库重构及数据迁移的前提下进化其数据模型。不适用场合某些场合文档数据库井非最佳方案。1包含多项操作的复杂事务文档数据库也针•不适合执行"跨文挡的原子操作〃(atomiccross-documentoperation),然而像RavenDB等文档数据痺其实也支持此类操作。2查询持续变化的聚合结构灵活的模式意味着数据库对模式不

7、施加任何限制。数据以"应用程序实体"(applicationentity)的形式存储。如果要即时查询这些持续改变的实体,那么所用的查询命令也得不停变化(用关系型数据库的术语讲,就是:用JOIN语句将数据表按杳询标准连接起来时,待连接的表一直在变)。由T数据保存在聚合中,所以假如聚合的设计持续变动,那么就需要以"最低级别的粒度"(lowestlevelofgranularity)来保存聚合了,这实际上就等于要统一数据格式了。在这种情况下,文档数据库也许不合适。列族数据库适用案例现在讨论几个适合用列族数据库解决的问

8、题。1事件记录由于列族数据库可存放任意数据结构,所以它很适合用来保存应用程序状态或运行中遇到的错误等事件信息。在企业级环境下,所有应用程序都可以把事件写入Cassandra数据库。它们可以用appname:timestamp(hk用程序名:吋间戳)作为行键,并使用自己需要的列。由于Cassandra的写人能力可扩展,所以在事件记录系统中使用它效果会很好。2内容管理系统与博窑平台使用列族

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。