MongoDB MongoMapper Cucumber 和其他 近一段时间的主干方向

阅读更多
   更新:攒了一份基础情况的说明
   MongoDB基础情况简介
   2010.3.3再更新 MongoDB 和 MongoMapper的示例用法简介

   终于有段专门的时间回归Rails,在以后不短的时间里,主要的方向有两个:
   MongoDB和MongoMapper
   Cucumber和Rspec
  
   数据处理上,是从mysql向更适合云处理的非关系数据库转变。选中MongoDB多少和 肉饼老大的鼓吹有关,当然也有一些机会原因。下面的偷来的。
  
肉饼老大 写道
1、MongoDB
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

Mongo主要解决的是海量数据的访问效率问题,根据官方的文档,当数据量达到50GB以上的时候,Mongo的数据库访问速度是MySQL的 10倍以上。Mongo的并发读写效率不是特别出色,根据官方提供的性能测试表明,大约每秒可以处理0.5万-1.5次读写请求。对于Mongo的并发读写性能,我(robbin)也打算有空的时候好好测试一下。

因为Mongo主要是支持海量数据存储的,所以Mongo还自带了一个出色的分布式文件系统GridFS,可以支持海量的数据存储,但我也看到有些评论认为GridFS性能不佳,这一点还是有待亲自做点测试来验证了。

最后由于Mongo可以支持复杂的数据结构,而且带有强大的数据查询功能,因此非常受到欢迎,很多项目都考虑用MongoDB来替代MySQL来实现不是特别复杂的Web应用,比方说why we migrated from MySQL to MongoDB就是一个真实的从MySQL迁移到MongoDB的案例,由于数据量实在太大,所以迁移到了Mongo上面,数据查询的速度得到了非常显著的提升。

MongoDB也有一个ruby的项目MongoMapper,是模仿Merb的DataMapper编写的MongoDB的接口,使用起来非常简单,几乎和DataMapper一模一样,功能非常强大易用。


       关于上面的主题有以下资源:

       MongoDB的官方主页: http://www.mongodb.org/display/DOCS/Home
       MongoDB的一个指南: http://www.mongodb.org/display/DOCS/Ruby+Tutorial
       MongoDB的一个幻灯片: http://www.fuchaoqun.com/2010/01/mongodb-in-action/      
       MongoMapper的git官网: . http://github.com/jnunemaker/mongomapper
       MongoMapper的一个例子: http://railstips.org/blog/archives/2009/06/27/mongomapper-the-rad-mongo-wrapper/

       晓夜( 夜鸣猪,嘿嘿跟老大学的,以后每篇都加个这个)的第二部分,是加强行为驱动和测试的能力。有关资源如下:
        cucumber: http://cukes.info/
        RSpec:  http://rspec.info/
      
      
        在后继的有关帖子里,有可能涉及 YSlow ( http://developer.yahoo.com/yslow/)

你可能感兴趣的:(MongoDB,DataMapper,rspec,MySQL,数据结构)