MongoDB的简单了解

一、背景介绍

MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。

在高负载的情况下,添加更多的节点,可以保证服务器性能。

MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。


主要特性:

面向集合存储,易于存储对象类型的数据

模式自由

支持动态查询

支持完全索引,包含内部对象

支持复制和故障恢复

使用高效的二进制数据存储,包括大型对象

文件存储格式为BSON(一种JSON的扩展)


二、知识剖析

文档(document)是MongoDB中数据的基本单元,非常类似于关系型数据库系统中的行(但是比行要复杂的多)

集合(collection)就是一组文档,如果说MongoDB中的文档类似于关系型数据库中的行,那么集合就如同表

MongoDB的单个计算机可以容纳多个独立的数据库,每一个数据库都有自己的集合和权限

MongoDB自带简洁但功能强大的JavaScript shell,这个工具对于管理MongoDB实例和操作数据作用非常大

每一个文档都有一个特殊的键"_id",它在文档所处的集合中是唯一的,相当于关系数据库中的表的主键



基本的命令:

1.创建数据库:use mydb1

2.删除当前数据库:db.dropDatabase()

3.查看所有数据库:show dbs

4.查看当前的数据库:db

5.查看当前所有数据库中的集合:show tables  || show collections

6.创建集合两种方式:

      显示创建:db.createCollection("集合名成");

  隐式创建:db.集合名称.insert({name:"李四",age:22});

7.向集合添加文档:db.集合名称.insert({name:"李四",age:22});

8.删除集合文档:db.集合名称.remove({删除条件});

                db.集合名称.remove(); --删除了所有文档

9.查询集合中的文档:db.集合名称.find({条件});

                    db.集合名称.findOne(); -- 查出第一个



三、常见问题

Mongodb命令不习惯


四、解决

看操作


五、扩展思考

Mongodb还支持一些额外的参数选项:有时候我们返回特定的参数

  //返回除了age所有字段

db.集合名称.find({},{age:0});

//返回tags=ten除了comments的所有列

db.集合名称.find({tags:'ten'},{comments:0});

//返回id=16 的nane 字段

db.集合名称.({id:16},{name:1});

注意:——id字段始终都会返回。

六、参考文献

菜鸟编程


问答阶段:

谭道霄:现在MongoDB是不是没人使用了

答:看具体场景使用。


IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧 !

师兄带你入门!

你可能感兴趣的:(MongoDB的简单了解)