NoSQL的技术选型参考

本文的思维导图如下:


1、催生动因

1)可伸缩

2)成本

3)可扩展

4)可用性

传统的关系型数据库在上述表现较差,从而催生了nosql,nosql和关系型数据库互为补充


2、种类

1)键值对数据库,如Redis,Riak,Oracle Berkeley DB

2)文档数据库,如Mongodb,CouchDB,CouchBase

3)列族数据库,如Cassandra,HBase

4)图数据库,如Neo4j,Titan


3、术语

键值数据库的术语

建模相关:键,值,命名空间,无纲要的模型

架构相关:集群,环,复制,分区,分区键

实现相关:哈希函数,冲突,压缩


文档数据库的术语

建模相关:文档,集合,嵌入式文档,无纲要,多形

架构相关:集群,分区键,分区(垂直,水平)


列族数据库的术语

建模相关:键空间,行健,列族,列

架构相关:集群,分区键,分区,复制

实现相关:反熵,gossip协议,提示移交,提交日志,bloom过滤器,副本数量,一致性级别



图数据库的术语

元素相关:顶点,边,路径,自环

属性相关:同构性,阶与尺寸,度数(顶点距离),接近中心性(传播速度),中介性(图的瓶颈)

类型相关:无向,有向,流动网络,二分,多重,加权



4、技术选型参考

键值数据库的用途(适用于频繁读多并写入少量数据)

1)缓存关系型数据库中的数据,以改善程序性能

2)追踪web应用程序中容易发生变化的一些属性,如用来保存购物车中的货品

3)存储移动应用程序中的配置信息和用户数据信息

4)存放图像文件及音频文件等大型对象


文档数据库的用途(适用于读多写多的情况,存储比较大量的数据,数据富于变化)

1)读取量和写入量比较大的网站提供后端支持

2)对属性多变的数据类型进行管理,如管理产品信息

3)记录各种类型的元数据

4)使用JSON数据结构的应用程序

5)需要通过在大结构里面嵌套小结构来进行去规范化处理的应用程序


列族数据库的用途(适用于处理大量数据,多数据中心)

1)应用程序总是需要向数据库中写入数据

2)应用程序分布在地理位置不同的多个数据中心里面

3)应用程序能够允许副本之间出现短暂的数据不一致的现象

4)应用程序所使用的字段经常会变化

5)应用程序有可能要处理巨量的数据,如数百TB的数据


图数据库的用途(适用于处理相互连接的实体所构成的网络)

1)网络与IT的基础设施管理

2)身份及访问 管理

3)商务流程管理

4)推荐产品及服务

5)社交网络


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值