更新:攒了一份基础情况的说明
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时间格式转换以及时间的运算和获取当前时间的毫秒值
java springboot mongodb 通过mongotemplate获取mongo服务器当前时间。
MongoDB是一种流行的开源文档数据库系统,以其灵活性、可扩展性和高性能而受到许多企业和开发者青睐。在数据存储领域,特别是对于JavaScript开发,MongoDB提供了一种高效且易于集成的解决方案。本文将深入探讨如何...
MongoDB是一款开源、分布式、高性能的NoSQL数据库,它不使用传统的表格和列式结构来存储数据,而是采用键值对、文档、集合和图形数据模型。这种设计使得MongoDB在处理非结构化和半结构化数据时表现出色,特别适合大...
MongoDB是一种流行的开源、分布式文档型数据库,以其灵活性、高性能和易用性而备受开发者青睐。在"mongoDB内部分享和交流"这个主题中,我们可以深入探讨MongoDB的核心特性和在实际开发中的应用。 首先,MongoDB是...
MongoDB 是一个流行的 NoSQL 数据库,广泛应用于大数据存储和实时数据处理。在 Linux 环境下,配置和启动 MongoDB 需要遵循一定的步骤,本文将详细介绍在 Linux 下配置和启动 MongoDB 的过程。 第一步:设置 ...
在Spring框架中,Spring Data MongoDB是一个强大的库,它简化了与MongoDB数据库的交互。这个库允许开发者通过使用注解和基于Java的配置来处理MongoDB的操作。以下是对标题和描述中提到的知识点的详细说明: 1. **@...
Spring Data MongoDB是一个强大的Java库,它为开发人员提供了一种简单的方式来访问和操作MongoDB数据库。这个库是Spring Data框架的一部分,旨在简化数据访问层的实现,尤其在使用NoSQL数据库如MongoDB时。MongoDB...
MongoDB 的jar和源码,版本3.0.1
MongoDB是一种流行的开源、分布式文档数据库,常被用于构建高性能、可扩展的应用程序。这个“mongodb-测试数据”压缩包显然包含了一些用于测试MongoDB功能的样例数据集,特别是针对增、删、改、查(CRUD)操作的学习...
MongoDB 是一个文件数据库,其他 Linux 系统下安装也是类似的。 知识点 1:下载 MongoDB 在安装 MongoDB 之前,需要下载 MongoDB 的安装包。下载地址为 ...
MongoDB的配置文件是服务器的核心组件之一,它控制着MongoDB服务器的各种设置和行为。在本文中,我们将详细介绍MongoDB的配置文件的各个部分,并解释每个设置的作用和意义。 一、数据库文件位置(dbpath) MongoDB...
MongoDB 安装和实用命令 MongoDB 是一个基于分布式文件存储的开源数据库系统。它的主要特点是高性能、易扩展、灵活的数据模型等。下面是 MongoDB 的安装和实用命令。 安装 MongoDB 1. 下载 MongoDB 的安装包,...
MongoDB中的每一行记录就是一个文档,它是一个由键值对构成的数据结构,MongoDB文档与JSON对象类似。键的值可以包含其他的文档、数组、文档数组。 MongoDB的主要特点包括: 1. 高性能:MongoDB使用了高性能的存储...
MongoDB是一款开源、分布式、高性能的NoSQL数据库,以其灵活性、可扩展性和高可用性而备受开发者喜爱。本文将详细讲解MongoDB的安装过程,包括4.2.0和4.0.7两个版本,以及MongoDB Compass的安装与使用。 首先,我们...
MongoDB是一个流行的开源、分布式文档型数据库,设计用于处理大量数据并提供高可用性和高性能。在Java应用程序中,为了与MongoDB进行交互,我们需要使用Java MongoDB驱动程序。这个压缩包包含的就是Java连接MongoDB...
MongoDB是一个开源、分布式、高性能的NoSQL数据库,以其灵活性、可扩展性和高可用性而闻名。`mongodb.dll`是MongoDB数据库系统在Windows平台上运行所必需的一个动态链接库(DLL)文件,它包含了MongoDB客户端和...
MongoDB 是一款流行的 NoSQL 数据库,广泛应用于大数据和实时 Web 应用程序。在本实验中,我们将学习如何在 Windows 和 Linux 环境下安装 MongoDB,并了解 MongoDB 的基本操作。 一、MongoDB 安装 ### Windows ...
Geoserver MongoDB插件是Geoserver的一款插件,用于连接MongoDB数据库,实现矢量数据的读取和写入。Geoserver MongoDB插件提供了强大的功能,能够实现MongoDB矢量数据的读取和写入。 六、Conclusion 本文介绍了...
MongoDB是一种流行的开源文档数据库系统,它以JSON格式存储数据,具有高度的可扩展性和灵活性。这份"MongoDB离线手册"包含了两个版本,一个是简易版,另一个是完全版,旨在帮助用户深入理解和掌握MongoDB的各个方面...