最新活动:柏林的NoSQL(非关系数据库) 大会
越来越多的Web应用程序需要数据存储,传统的关系数据库已经不能完全满足要求。面向对象和面向文档的数据库提供了一个选择,最近这个发展领域的发生很多活动,10月22日柏林举办了一次NoSQL大会:
Happenings: NoSQL Conference, Berlin
几十年来,关系数据库提供了对许多应用程序的所有数据类型的持久存储。基本的数据模型(图式与明确的约束)(预先确定变量的取值范围)提供所需的数据的一致性,确保交易和锁定原子访问,并提供多种方便用户访问。此外,SQL还是可靠的灵活的查询语言,特别是在数据挖掘领域最多样化的情况下。
然而,随着开发的应用越来越多,对性能的不断渴求,需要更新的持久存储解决方案,传统关系型数据库(RDBMS)已经不能满足这样的要求。有大量的系统像亚马逊,网络商店,因为放弃了数据库管理系统的锁定机制和执行客户端代码冲突的解决机制,结果大大增加了吞吐量。
二十多年前,面向对象的数据库已经建立了一支替代数据存储解决方案,更接近的面向对象,而不是一个僵化,不灵活的数据表架构。最近,“非关系型”数据库的继续发展,大有回升势头。这些数据库通常着眼于处理高数据吞吐量,并优化,高度并行,全球分布式访问情景。这样的数据库模式往往是免费:数据是关键,而不是预先确定的表,这意味着数据结构可以用较少的努力大大改变值对存储。
在10月22日,第一NoSQL发布会上对在欧洲的非关系型数据库在柏林举行。 70多个开发人员,用户包括(Peritor,nugg.ad,StudiVZ)和学术研究人员(楚泽研究所柏林,代替标准的应用科学大学法人代表NoSQL爱好者,柏林)。在Tucholskystraße聚会,newthinking商店演示概述了当前NoSQL项目的发展。
Paxos, Redis
第一个演讲这是Monika Moser, 她是Scalaris的事务存储层的开发者,现在是Erlang/Ruby/Hadoop开发者。分析了key-value存储的一致性问题。Brewer's CAP定理:只有对一致性,可用性和分区容错三个属性中两者可以在分布式系统的保障。按照沃纳福格尔斯(亚马逊)意思,该协议指出:一致性在高度可扩展系统中迟早会成为瓶颈。Moser提出Paxos:容错,可扩展的协议,协议已经应用在key-value存储中。
下面Mathias Meyer介绍了Redis,一个侧重ACID key-value存储,Redis使用基于文本的协议。该数据库支持类似字符串的基本数据类型,列表和设置以及原子操作各自的内容。数据保存在内存中,但也可以存储在转储文件的新局面。贮存场是时间依赖性,可以作出调整,以在数据库中作出的一些改变。
Redis可以通过垂直伸缩进行主从配置;水平伸缩是通过额外的库是可以实现的。Redis主要适用于高速缓存,适合工作队列和储存的统计数据。 Redis是不适合的情况:该数据不适合到主内存中。
CouchDB:
是一个面向文本数据库。文本采取以JSON格式保存,查询采取类似Hadoop和google的 Map/Reduce API ,采取的是乐观锁。
MongoDB:
融合了面向文本数据库和面向对象数据库特点,是带有HTTP/REST API的分布式key-value存储。提供javascript实现复杂查询,支持主从复制,应用在SourceForge 项目上。
这次演讲的视频和PPT可见:http://nosqlberlin.de/
专门的非SQL官方网站:
http://www.nosqloakland.org/
[该贴被admin于2009-10-30 21:38修改过]