MongoDB使用教程系列文章--开篇

本文涉及的产品
云原生多模数据库 Lindorm,多引擎 多规格 0-4节点
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 MongoDB,通用型 2核4GB
简介: 根据DB-Engines的排名统计,MongoDB综合排名第四(2016年1月数据,前三名分别是Oracle,MySQL,SQL Server),NoSQL领域(非RDBMS)里排名第一。尤其是在2015年里,一口气发布了两个大版本,3月发布了3.0版本,11月发布3.2版本。 在3.2版本中开始

根据DB-Engines的排名统计,MongoDB综合排名第四(2016年1月数据,前三名分别是Oracle,MySQL,SQL Server),NoSQL领域(非RDBMS)里排名第一。尤其是在2015年里,一口气发布了两个大版本,3月发布了3.0版本,11月发布3.2版本。
1

在3.2版本中开始突破NoSQL的枷锁,提供了Join操作,可见其并不满足于NoSQL“独角兽”的称呼,目标早已定位成NewSQL,向RDBMS发起挑战。
2

但MongoDB毕竟不是RDBMS,甚至在数据建模上有很多相反的原则,比如MongoDB更提倡反范式化。而人的惯性思维作用,是更原因相信“传统”,比如MongoDB:逐渐变得无关紧要这篇文章,作者并不习惯于使用MongoDB的文档模型,并不肯定文档模型带来的开发效率的提升,而更依赖传统数据库结构带来的沉淀,我怀疑作者对MongoDB的数据建模上还是采用着范式化结构,所以才如此依赖多文档事务,并且对MongoDB带来强烈的不满。也没有关注到最新的MongoDB已经开始采用WiredTiger存储引擎,正式步入高性能数据库行列。

还有那篇著名的讨论“Don’t use MongoDB”,这篇文章发表于11年,原文很多内容并不属实(作者承认那篇文章只是个玩笑),而且10gen(MongoDB公司之前的名称是10gen) CTO对此还进行了回复,可是直到今天,很多人还是只知前者,甚至深信不疑,在社区中反复抛出同样的观点,比如:“MongoDB会丢数据”。

造成各种个样的误解,最大的原因还是“不了解”或者说MongoDB大过于神秘,不像MySQL,Oracle已经有大量的文章,大量的解惑教程,MySQL甚至还有各种的源码分析。MongoDB社区生态上还非常年轻,相关的技术文章或者书籍还不丰富,回顾我自己学习MongoDB的过程,一方面来自官方文档,另一方面来自各种博客书籍。但内容上大部分只是叫你HOW,而不是WHY,不能知其所以然。随着云服务的起步,运维模式的变化,出现了越来越多的DEV+DBA角色,仅仅会用API,也早已跟不上时代,更多的还要做到会管。比如什么时候要建立索引?查询语句是怎么执行的?哪里会有潜在的问题?这些都是作为数据操作者应该掌握的知识。但并不是每个人都有时间从源码上一点点学习。

3

就在前几天,阿里云作为中国第一的云计算公司,正式开始提供MongoDB SAAS服务。作为MongoDB生态圈中的一员,有义务做出一个更深入的教程,MongoDB用户可以通过文章提升自身的操作管理水平,开源爱好者也可以将该列文章作为源码阅读的辅助。

系列第一部分重点在“用”好MongoDB,第二部分重点是“管”好MongoDB,第三部分是案例的收集。

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
6月前
|
NoSQL 数据可视化 MongoDB
mongoDB从入门到实战最全小白教程
mongoDB从入门到实战最全小白教程
309 0
|
存储 JSON NoSQL
MongoDB从入门到实战之MongoDB快速入门
MongoDB从入门到实战之MongoDB快速入门
281 0
MongoDB从入门到实战之MongoDB快速入门
|
存储 JSON NoSQL
MongoDB :第一章:了解一下
MongoDB :第一章:了解一下
128 0
MongoDB :第一章:了解一下
|
存储 NoSQL MongoDB
MongoDB基础知识笔记
MongoDB基础知识笔记
155 0
|
存储 JSON NoSQL
MongoDB最简单的入门教程之一 环境搭建
MongoDB最简单的入门教程之一 环境搭建
201 0
MongoDB最简单的入门教程之一 环境搭建
|
NoSQL JavaScript 前端开发
MongoDB最简单的入门教程之二 使用nodejs访问MongoDB
MongoDB最简单的入门教程之二 使用nodejs访问MongoDB
109 0
MongoDB最简单的入门教程之二 使用nodejs访问MongoDB
|
存储 JSON NoSQL
MongoDB 入门笔记
MongoDB 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。 MongoDB 的安装 我用的是 linux,因此可以用以下命令进行安装:
186 0
|
SQL NoSQL Linux
MongoDB学习记录-简介
MongoDB学习记录
1259 0