nosql可扩展性,nosql的技术特点-成都快上网建站

nosql可扩展性,nosql的技术特点

简述什么是nosql数据库,并列举两种常见的nosql数据库名称及其特点

NoSQL太火,冒出太多产品了,保守估计也成百上千了。

创新互联专注于南湖企业网站建设,成都响应式网站建设公司,商城网站制作。南湖网站建设公司,为南湖等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

互联网公司常用的基本集中在以下几种,每种只举一个比较常见或者应用比较成功的例子吧。

1. In-Memory KV Store : Redis

in memory key-value store,同时提供了更加丰富的数据结构和运算的能力,成功用法是替代memcached,通过checkpoint和commit log提供了快速的宕机恢复,同时支持replication提供读可扩展和高可用。

2. Disk-Based KV Store: Leveldb

真正基于磁盘的key-value storage, 模型单一简单,数据量不受限于内存大小,数据落盘高可靠,Google的几位大神出品的精品,LSM模型天然写优化,顺序写盘的方式对于新硬件ssd再适合不过了,不足是仅提供了一个库,需要自己封装server端。

3. Document Store: Mongodb

分布式nosql,具备了区别mysql的最大亮点:可扩展性。mongodb 最新引人的莫过于提供了sql接口,是目前nosql里最像mysql的,只是没有ACID的特性,发展很快,支持了索引等特性,上手容易,对于数据量远超内存限制的场景来说,还需要慎重。

4. Column Table Store: HBase

这个富二代似乎不用赘述了,最大的优势是开源,对于普通的scan和基于行的get等基本查询,性能完全不是问题,只是只提供裸的api,易用性上是短板,可扩展性方面是最强的,其次坐上了Hadoop的快车,社区发展很快,各种基于其上的开源产品不少,来解决诸如join、聚集运算等复杂查询。

什么是NoSQL,它有什么优缺点?

NoSQL,指的是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。

NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。

NoSQL的优点/缺点

优点:

- 高可扩展性

- 分布式计算

- 低成本

- 架构的灵活性,半结构化数据

- 没有复杂的关系

缺点:

- 没有标准化

- 有限的查询功能(到目前为止)

- 最终一致是不直观的程序 (BY三人行慕课)

nosql数据库的四种类型

nosql数据库的四种类型如下:

1.key-value键值存储数据库:

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

主要应用: 内容缓存,处理大量数据的高负载访问,也用于系统日志。

优点:查找速度快,大量操作时性能高。

2.列存储数据库:

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

主要应用: 分布式数据的储存与管理。

优点:查找速度快,可扩展性强,容易进行分布式扩展。

缺点:功能相对局限。

3.文档型数据库

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

主要应用: web应用,管理面向文档的数据或者类似的半结构化数据。

优点:数据结构灵活,表结构可变,复杂性低。

缺点:查询效率低,且缺乏统一的查询语言。

4.Graph图形数据库

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

主要应用: 复杂,互连接,低结构化的图结构场合, 专注构建关系图谱。

优点: 利用图结构相关算法, 可用于构建复杂的关系图谱。

缺点: 复杂度高。

常见NoSQL数据库的应用场景是怎么样的

文档数据库

源起:受Lotus Notes启发。

数据模型:包含了key-value的文档集合

例子:CouchDB, MongoDB

优点:数据模型自然,编程友好,快速开发,web友好,CRUD。

图数据库

源起: 欧拉和图理论。

数据模型:节点和关系,也可处理键值对。

例子:AllegroGraph, InfoGrid, Neo4j

优点:解决复杂的图问题。

关系数据库

源起: E. F. Codd 在A Relational Model of Data for Large Shared Data Banks提出的

数据模型:各种关系

例子:VoltDB, Clustrix, MySQL

优点:高性能、可扩展的OLTP,支持SQL,物化视图,支持事务,编程友好。

对象数据库

源起:图数据库研究

数据模型:对象

例子:Objectivity, Gemstone

优点:复杂对象模型,快速键值访问,键功能访问,以及图数据库的优点。

Key-Value数据库

源起:Amazon的论文 Dynamo 和 Distributed HashTables。

数据模型:键值对

例子:Membase, Riak

优点:处理大量数据,快速处理大量读写请求。编程友好。

BigTable类型数据库

源起:Google的论文 BigTable。

数据模型:列簇,每一行在理论上都是不同的

例子:HBase, Hypertable, Cassandra

优点:处理大量数据,应对极高写负载,高可用,支持跨数据中心, MapReduce。

数据结构服务

源起: ?

数据模型:字典操作,lists, sets和字符串值

例子:Redis

优点:不同于以前的任何数据库

网格数据库

源起:数据网格和元组空间研究。

数据模型:基于空间的架构

例子:GigaSpaces, Coherence

优点:适于事务处理的高性能和高扩展性

nosql数据库的几大类型

1. 键值数据库

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

应用:内容缓存

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

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

使用者:百度云(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

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

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

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

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

4. 图形数据库

图形数据库-使用图作为数据模型来存储数据。

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

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

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

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

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

NoSQL数据库是如何解决可扩展性问题的?

NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。也无形之间,在架构的层面上带来了可扩展的能力。


网站栏目:nosql可扩展性,nosql的技术特点
文章位置:http://kswjz.com/article/hcedoi.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流