NoSQL
来源:互联网 发布:数据库王珊第四版pdf 编辑:程序博客网 时间:2024/06/02 06:20
NoSQL,指的是非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。
“关系型数据库给你强加了太多东西。它们要你强行修改对象数据,以满足RDBMS (relational database management system,关系型数据库管理系统)的需要,”在NoSQL拥护者们看来,基于NoSQL的替代方案“只是给你所需要的”。
在计算机体系结构数据存储方面要求具备庞大的水平扩展性①,而NoSQL致力于改变这一现状。Google的 BigTable 和Amazon 的Dynamo使用的就是NoSQL型数据库。
水平扩展性(horizontal scalability)指能够连接多个软硬件的特性,这样可以将多个服务器从逻辑上看成一个实体。
随着互联网web2.0网站的兴起,非关系型的数据库成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如:
1、High performance - 对数据库高并发读写的需求
web2.0网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库应付上万次SQL查询还勉强顶得住,但是应付上万次SQL写数据请求,硬盘IO就已经无法承受了。其实对于普通的BBS网站,往往也存在对高并发写请求的需求。
NoSQL 是非关系型数据存储的广义定义。它打破了长久以来关系型数据库与ACID理论大一统的局面。NoSQL 数据存储不需要固定的表结构,通常也不存在连接操作。在大数据存取上具备关系型数据库无法比拟的性能优势。
当今的应用体系结构需要数据存储在横向伸缩性上能够满足需求。而 NoSQL 存储就是为了实现这个需求。Google 的BigTable与Amazon的Dynamo是非常成功的商业 NoSQL 实现。一些开源的 NoSQL 体系,如Facebook 的Cassandra, Apache 的HBase,也得到了广泛认同。从这些NoSQL项目的名字上看不出什么相同之处:Hadoop、Voldemort、Dynomite,还有其它很多。
- NOSQL
- NoSQL
- NoSQL
- NOSQL
- Nosql
- NoSQL
- nosql
- noSQL
- NoSQL
- NoSQL
- nosql
- NoSQL
- nosql
- NoSQL
- NoSQL
- NoSQL
- NOSQL
- NoSQL
- (转)Traceview的使用
- poj 2533(最长上升子序列)(n^2 ) 和 nlogn的算法
- LeetCode - First Missing Positive
- java核心技术阅读
- Android ListView A~Z快速索引(改进版)
- NoSQL
- GMap笔记
- iOS之多线程编程Grand Central Dispatch(GCD)介绍和使用
- HBASE介绍
- 【java内存泄漏的定位与分析】
- Hadoop NameNode启动之LeaseManager$Monitor(六)
- Java程序员应该了解的10个面向对象设计原则
- autoCompleteTextView输入完安输入法的“完成”按钮隐藏输入法
- 关于IE中getElementsByClassName不能用的问题