什么是NoSQL

前端之家收集整理的这篇文章主要介绍了什么是NoSQL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_502_0@Nosql,指的是非关系型的数据库目前Google的 BigTable 和Amazon 的Dynamo使用的就是Nosql数据库

@H_502_0@传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如:

@H_502_0@  1、High performance - 对数据库高并发读写的需求

@H_502_0@ 2、Huge Storage - 对海量数据的高效率存储和访问的需求

@H_502_0@ 3、High Scalability && High Availability- 对数据库的高可扩展性和高可用性的需求

@H_502_0@而对于web2.0网站来说,关系数据库的很多主要特性却往往无用武之地,例如:

@H_502_0@  1、数据库事务一致性需求

@H_502_0@ 2、数据库的写实时性和读实时性需求

@H_502_0@ 3、对复杂的SQL查询,特别是多表关联查询的需求

@H_502_0@Nosql 数据存储不需要固定的表结构,通常也不存在连接操作。在大数据存取上具备关系型数据库无法比拟的性能优势。非关系型数据库以键值对存储,它的结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。

特点

@H_502_0@  它们可以处理超大量的数据

@H_502_0@  它们运行在便宜的PC服务器集群上

@H_502_0@  PC集群扩充起来非常方便并且成本很低,避免了“sharding”操作的复杂性和成本。

@H_502_0@  它们击碎了性能瓶颈

@H_502_0@  Nosql支持者称,通过Nosql架构可以省去将Web或Java应用和数据转换成sql友好格式的时间,执行速度变得更快。

@H_502_0@  “sql并非适用于所有的程序代码,” 对于那些繁重的重复操作的数据,sql值得花钱。但是当数据库结构非常简单时,sql可能没有太大用处。

@H_502_0@  没有过多的操作

@H_502_0@  虽然Nosql支持者也承认关系数据库提供了无可比拟的功能集合,而且在数据完整性上也发挥绝对稳定,他们同时也表示,企业的具体需求可能没有那么多。

@H_502_0@  Bootstrap支持

@H_502_0@  因为Nosql项目都是开源的,因此它们缺乏供应商提供的正式支持。这一点它们与大多数开源项目一样,不得不从社区中寻求支持

猜你在找的NoSQL相关文章