nosql的分类

Posted 郭大侠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nosql的分类相关的知识,希望对你有一定的参考价值。

1 键值数据库

   相关产品:Redis、Riak、SimpleDB、Chordless、Scalaris、Memcached

   形式:Key 指向 Value 的键值对,通常用hash table来实现 

 应用:内容缓存

   优点:扩展性好、灵活性好、大量写操作时性能高

   缺点:无法存储结构化信息、条件查询效率较低

   使用者:百度云(Redis)、GitHub(Riak)、BestBuy(Riak)、Twitter(Ridis和Memcached)

2 列族数据库

   相关产品:BigTable、HBase、Cassandra、HadoopDB、GreenPlum、PNUTS

   形式:以列簇式存储,将同一列数据存在一起

   应用:分布式数据存储与管理

   优点:查找速度快、可扩展性强、容易进行分布式扩展、复杂性低

   缺点:功能相对局限

   使用者:Ebay(Cassandra)、Instagram(Cassandra)、NASA(Cassandra)、Facebook(HBase)

3 文档数据库

   相关产品:MongoDB、CouchDB、ThruDB、CloudKit、Perservere、Jackrabbit

   形式:Key-Value对应的键值对,Value为结构化数据

   应用:存储、索引并管理面向文档的数据或者类似的半结构化数据

   优点:性能好、灵活性高、复杂性低、数据结构灵活

   缺点:缺乏统一的查询语言

   使用者:百度云数据库(MongoDB)、SAP(MongoDB)

4 图形数据库

   相关产品:Neo4J、OrientDB、InfoGrid、GraphDB

   形式:图结构

   应用:大量复杂、互连接、低结构化的图结构场合,如社交网络、推荐系统等

   优点:灵活性高、支持复杂的图形算法、可用于构建复杂的关系图谱

   缺点:复杂性高、只能支持一定的数据规模

   使用者:Adobe(Neo4J)、Cisco(Neo4J)、T-Mobile(Neo4J)

 

5、图解

分类

Examples举例

典型应用场景

数据模型

优点

缺点

键值(key-value) 

Redis、Riak、SimpleDB、Chordless、Scalaris、Memcached

列存储数据库

Cassandra, HBase,Riak

分布式的文件系统

以列簇式存储,将同一列数据存在一起

查找速度快,可扩展性强,更容易进行分布式扩展

功能相对局限

文档型数据库

CouchDB, MongoDb

Web应用(与Key-Value类似,Value是结构化的,不同的是数据库能够了解Value的内容)

Key-Value对应的键值对,Value为结构化数据

数据结构要求不严格,表结构可变,不需要像关系型数据库一样需要预先定义表结构

查询性能不高,而且缺乏统一的查询语法。

图形(Graph)数据库 

Neo4J, InfoGrid, Infinite Graph

社交网络,推荐系统等。专注于构建关系图谱

图结构

利用图结构相关算法。比如最短路径寻址,N度关系查找等

很多时候需要对整个图做计算才能得出需要的信息,而且这种结构不太好做分布式的集群方案。 

<span color:#136ec2;"="" style="word-wrap: break-word; font-size: 1pt;">

以上是关于nosql的分类的主要内容,如果未能解决你的问题,请参考以下文章

Redis-nosql数据库的四大分类

NoSQL数据库的四大分类的分析

Nosql数据库的四大分类及分布式数据库CAP原理

微服务数据架构:数据分类及存储特性——NoSQL数据存储

与 NoSQL 数据库的多对多关系

NoSQL数据库初步认识

(c)2006-2024 SYSTEM All Rights Reserved IT常识