NoSQL
-
分布式计算( Distributed computing)
- 分布式计算是一种计算方法,和集中式计算是相对的。随着计算技术的发展,有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高计算效率。
- #参考 百度百科
-
NoSQL的优点/缺点
- 优点:
- - 高可扩展性
- - 分布式计算
- - 低成本
- - 架构的灵活性,半结构化数据
- - 没有复杂的关系
- 缺点:
- - 没有标准化
- - 有限的查询功能(到目前为止)
- - 最终一致是不直观的程序
- #参考https://edu.aliyun.com/lesson_478_4795?spm=5176.8764728.0.0.SMm9eW#_4795
- 优点:
-
RDBMS vs NoSQL
- RDBMS
- - 高度组织化结构化数据
- - 结构化查询语言(SQL) (SQL)
- - 数据和关系都存储在单独的表中。
- - 数据操纵语言,数据定义语言
- - 严格的一致性
- - 基础事务
- NoSQL
- - 代表着不仅仅是SQL
- - 没有声明性查询语言
- - 没有预定义的模式
- -键 - 值对存储,列存储,文档存储,图形数据库
- - 最终一致性,而非ACID属性
- - 非结构化和不可预知的数据
- - CAP定理
- - 高性能,高可用性和可伸缩性
- #参考https://edu.aliyun.com/lesson_478_4795?spm=5176.8764728.0.0.SMm9eW#_4795
- RDBMS
-
NoSQL 数据库分类
- 列存储: Hbase、Cassandra、Hypertable
- 特点:顾名思义,是按列存储数据的。最大的特点是方便存储结构化和半结构化数据,方便做数据压缩,对针对某一列或者某几列的查询有非常大的IO优势。
- 文档存储: MongoDB、CouchDB
- 特点:文档存储一般用类似json的格式存储,存储的内容是文档型的。这样也就有有机会对某些字段建立索引,实现关系数据库的某些功能。
- key-value存储: Tokyo Cabinet / Tyrant、Berkeley DB、MemcacheDB、Redis
- 特点:可以通过key快速查询到其value。一般来说,存储不管value的格式,照单全收。(Redis包含了其他功能)
- 图存储:Neo4J、FlockDB
- 特点:图形关系的最佳存储。使用传统关系数据库来解决的话性能低下,而且设计使用不方便。
- 对象存储:db4o、Versant
- 特点:通过类似面向对象语言的语法操作数据库,通过对象的方式存取数据。
- xml数据库:Berkeley DB XML、BaseX
- 特点:高效的存储XML数据,并支持XML的内部查询语法,比如XQuery,Xpath。
- #参考https://edu.aliyun.com/lesson_478_4795?spm=5176.8764728.0.0.SMm9eW#_4795
- 列存储: Hbase、Cassandra、Hypertable
你只管努力,其他的交给天意~