【Csdn.net 3月3日 报道】由CSDN和10gen主办的MongoDB开发者会议今天在北京丽亭华苑酒店隆重举行。10gen产品和工程高级副总裁Roger Bodamer、10gen企业工程与服务高级总监Alvin Richards、视觉中国CTO潘凡、Yottaa系统工程leader Xiangjun Wu、中国MongoDB小组创始人及安天高级产品经理程显峰、alivenotdead联合创始人兼CTO王传仁共同为近400名技术专家和技术爱好者 带来了一场MongoDB盛宴。
在活动现场,记者见到了数位来自盛大、淘宝、新浪等公司的技术专家,其中多人是从外地专程赶来参加此次会议。而据统计,本次会议网上注册人数为 600余人,最终参会人员总计将近400人,作为一场完全免费的会议,而且又是在工作日时间举办,能取得这样的成绩已相当不易。一图胜过千言万语,场面的 火爆程度,只看下面这张照片就能一目了然。
会场座无虚席,而且还有加座
下面我们来看看本次MongoDB会议的演讲展示。
Roger Bodamer从大局出发,结合实例介绍了MongoDB及数据库设计。内容涉及查询操作符、扩展架构、单表继承、一到多/多到多关系、树、祖先数组、变 量键等。另外,他还提到建模的目的:插入、更新或删除时避免异常;扩展架构时减少重新设计工作;使模型对于客户来讲更具信息量;避免偏向特定风格的查询。
Roger Bodamer介绍了MongoDB及数据库设计
Alvin Richards则从复制(Replication)和分片(Sharding)两种功能对MongoDB进行了解读。对于复制功能,MongoDB遵循 的是:从主库中读总是一致的、从从库中读最终是一致的、主库故障时自动容错移转、当节点加入集时自动恢复。而对分片功能,可以做到:不停机水平切分数据、 写数据时自动平衡、命令被路由转至正确分节点(插入操作和更新操作必须有水平切分键;查询操作当有水平切分键时被路由至节点,反之分散集中)。
Alvin Richards讲解了复制和分片两种功能
视觉中国是国内较早使用MongoDB的公司,其使用的情况必然是大家关注的焦点。潘凡现身说法,以视觉中国数据库从MySQL迁移到 MongoDB为例,分享了他的成果和感受。他将最大收获归结为:灵活和自由。MongoDB可以轻松面对不同数据源,随时调整变化的需求。对于正在开发 创新型互联网应用的公司来说,MongoDB的这些特性,正适合它们快速开发产品、快速迭代,适应用户迅速变化和更新的种种需求。
MongoDB给潘凡带来的最大收获是:灵活和自由
与其他公司一样,Yottaa对MongoDB也是经历了“从观望到运营”的过程。在这个过程中,Yottaa的收获是:必须提前考虑分片;升级时复查所有慢查询,并添加合适的索引;在生产环境中,必须小心添加索引;避免慢写操作等。
Yottaa使用MongoDB是经历了“从观望到运营”的过程
程显峰以他自己的一个项目——MongoKoans,详细解释了怎样用Ruby巧学MongoDB。
程显峰在介绍他的一个项目——MongoKoans
谈到alive.cn使用MongoDB的原因,王传仁说:“MongoDB对于不同的数据源可以使用灵活的数据模式;在处理大量数据 时,MongoDB有良好的伸缩性;MongoDB能够使用重复的数据集来保持数据在墙内外的一致性。”谈到未来,他认为开放API、自动主题提取和多怨 言的实时趋势分析都将是大势所趋。
王传仁深刻感受到MongoDB带来的好处
通过上面的介绍,相信你基本了解了大家对MongoDB趋之若鹜的原因。目前,NoSQL得到了广泛发展和应用,相信在开源大旗的指引下,MongoDB会有不错的前景。
关于MongoDB
MongoDB是一个高性能、开源、无模式的文档型数据库,它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发,提供了以下功能。
* 面向集合的存储:适合存储对象及JSON形式的数据。
* 动态查询:Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
* 完整的索引支持:包括文档内嵌对象及数组。Mongo的查询优化器会分析查询表达式,并生成一个高效的查询计划。
* 查询监视:Mongo包含一个监视工具用于分析数据库操作的性能。
* 复制及自动故障转移:Mongo数据库支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。复制的主要目标是提供冗余及自动故障转移。
* 高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)。
* 自动分片以支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器。