mongodb简要教程.docx

上传人:lao****ou 文档编号:136928 上传时间:2023-04-10 格式:DOCX 页数:53 大小:779.85KB
下载 相关 举报
mongodb简要教程.docx_第1页
第1页 / 共53页
mongodb简要教程.docx_第2页
第2页 / 共53页
mongodb简要教程.docx_第3页
第3页 / 共53页
mongodb简要教程.docx_第4页
第4页 / 共53页
mongodb简要教程.docx_第5页
第5页 / 共53页
亲,该文档总共53页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《mongodb简要教程.docx》由会员分享,可在线阅读,更多相关《mongodb简要教程.docx(53页珍藏版)》请在第一文库网上搜索。

1、mongodb简要教程初学 mongodb新学一个技术应该做什么?官方文档,来,我们一起来看看官方文档是怎么说的遇事不决,先看简介MongoDB 简介在本页 文档数据库 主要特性欢迎使用MongoDB 4.2手册! MonqoDB是一个文档数据库,旨在简化开发和扩展。该手册介绍了MongoDB中的关键概念,介绍了查询语言,并提供了操作和管理上的注意事项和过程以及全面的参考章节。MongoDB提供数据库的一社区一版和一企业_版: MongoDB社区版是MongoDB的可用源和免费版本。 MongoDB企业版作为MongoDB高级企业版订阅的一部分提供,并且包括对MongoDB部署的全面支持。Mo

2、ngoDB企业版还添加了以企业为中心的功能,例如LDAP和Kerberos支持,磁盘加密和审核。这里第一句话很关键,文档上说,mongoDB是一个文档型数据库,旨在简化开发和扩展。这里很明显的确定了 mongoDB的部分优势,那就是简化开发和扩展,那它是怎么简化开发和扩展的呢?这就是需要我们后面认真的去研究了。然后,又提到了一个关键的词,文档型数据库,好了,到这里没有听过的朋友就蒙了,所以,我们往下看什么是文档型数据库?文档数据库MongoDB中的记录是一个文档,它是由字段和值对组成的数据结构。MongoDB文档类似于JSON对象。字段的值可以包括其他文档,数组和文档数组。(name: sue

3、, field:valueage: 26, field:valuestatus: A, field:valuegroups: news , sports field: value)A MongoDB document使用文档的优点是: 文档(即对象)对应于许多编程语言中的内置数据类型。 嵌入式文档和数组减少了对昂贵连接的需求。 动态模式支持流畅的多态性。集合/视图/按需实例化视图MongoDB将文档存储在集合中。集合类似于关系数据库中的表。除集合外,MongoDB还支持: 只读视图(从MongoDB 3.4开始) 按需实例化视图(从MongoDB 4.2开始)。紧接着官方就给了说明,Mongo

4、DB中的记录是一个文档,它是由字段和值对组成的数据结构。MongoDB文档类似于JSON对象。字段的值可以包括其他文档,数组和文档数组。这句话其实讲的已经非常明了了,它记录的是一个文档,所以相比Mysql这种关系型数据库来说,moon第一个想到的就是,I不用写DDL语句来维护表字段的关系了,文档里面,你想怎么存就怎么存。后面官方这里提到了文档数据库的优点:1 .文档(即对象)对应于许多编程语言中的内置数据类型。也就是说说文档内的I数据类型是自己定义的,可以对应不同编程语言中的各种内置数据类型2 .嵌入式文档和数组减少了对昂贵连接的需求。最直白的说就是类似于Mysql当中的Join语句少了3 .

5、动态模式支持流畅的多态性。这句话的moon是这样理解的,由于文档内容是自定义的,所以会有各种格式,比如下面这种格式就体现了其多态性普通电话,具有打电话发短信的功能iphone,具有打电话发短信的功能,并且还能玩游戏集合/视图/按需实例化视图集合/视图/按需实例化视图MongoDB将文档存储在集合中。集合类似于关系数据库中的表。除集合外,MongoDB还支持:只读视图(从MongoDB 3.4开始)按需实例化视图(从MongoDB 4.2开始)。MongoDB将文档存储在集合中。集合类似于关系数据库中的表。这句话就很好理解了,我就不解释了除集合外,MongoDB还支持:只读视图(从MongoDB

6、 3. 4开始),和SQL的视图没有什么差异,视图是基于表/集合之上进行动态查询的一层对象,可以是虚拟的,也可以是物理的(物化视图)。按需实例化视图。从4. 2版本开始,MongoDB为aggregation pipel ine添加了$merge阶段。此阶段可以将管道结果合并到现有集合中,而不是完全替换现有集合。此功能允许用户创建按需物化视图,每次运行管道时都可以更新输出集合的内容。主要特性主要特性高性能MongoDB理哄高性能的数据持久化.特星, 对表入式细模型的支持减少了数据奉系统上的I / 0搂作. 索引支持更快的查询,并且可以包含来自表入式文档和数组的漫.丰富的查询语言MongoDB支

7、持丰富的查询语言以支持读写搽作(CRUD)以及:数据糜合文本搜莉理空间查询.也可以看看 SQL到MongoD毗映射图 SQL到聚合的映射图高可用MongoDB的复制工具(称为副本集)提供: 一自动.改漳转移副本集是一组维护相同数据集合的mongod实例,提供了冗余和提高了数据可用性.水平柘展MongoDB徨供水平可伸缩性作为臬核心.功能的一部分: 分片将W分布在一个集群的机器上. 从3.4开始,MongoDB支持基亍分片键创建数娼区域.在平衡群集中,MongoDB仅将区域费差的读写定向到区域内的那些分片.有关更多信息,请参见区域章节。支持多种存储引擎MongoDB支持多个存储引擎: Wired

8、Tiger一弓厚(刨钠却)瞪的一) 内存存储引擎.另外,MongoDB理供可描拔的存储弓擎API,允许第三方为MongoDB开发存储引挈_ MongoD洋册内容原文链接:https:后面就介绍到了 mongoDB的一些主要特性高性能1.对嵌入式数据模型的支持减少了数据库系统上的I /。操作。I什么是嵌入式的数据模型呢?MongoDB提供高性能的数据持久化。特别是,对嵌入式数据模型的支持减少了数据库系统上的I / 0操作(不用连表查询了)。索引支持更快的查询,并且可以包含来自嵌入式文档和数组的键。为什么嵌入式模型可以减少数据库系统上的I / 0操作?丰富的查询语言MongoDB支持丰富的查询语言

9、以支持读写操作(CRUD)以及:数据聚合文本搜索和地理空间查询。其实数据库的核心作用就是两个,存储+查询,各种不同的数据库几乎都是围绕着这两个点去设计的,所以查询方式也是非常重要的,MongoDB并不支持sql语句查询,但是对于己经熟悉sql语句查询的人来说,官方给了我们一个很简单的理解方式,就是sql查询和mongo查询的对照C doc* can . tr A ei Mwob fi3 I 白 tlA d HI B92一个白 63 4A S3 & D-oorcH. M*heoduOionP pvMaOabonThe none。Moo9cOB CHUD OpMont,Hr1 DocxvYwnte

10、ULBCT 4d.S.3%itatua0 K4pldb.pple.fnd(.( u“J”: 2etau: 1 )Query Docvnerts Updane Documtnts、d.ruiMMUKCT usar.d, tfatvtron popdb.people.fnd(.X, _4ds )BiA OperMomRm7sMl WmmSQL to M009CO6 Maocxng Chart |SflBCT ron popMRt statu -db.people.find( *)T1 $向GooapwID -Read taoiabon Red Concern)Ac&n7d9*nMICCT s”.、

11、d 5“e*FMM pMpltMRC- *A- status:2 MorwjoOB CVD ConcptA/vws.mHICCT *FtOM4b.p9le.nM( Sn*r *ViS HO“0 X如上图 https:/docs. mongodb. com/v4. 2/reference/sq 1 -comparisonSELECT * FROM people = db. people, findSELECT user_id, status FROM peopledb. people, find( user_id: 1, status: 1, _id: 0 SELECT userid, stat

12、us FROM people WHERE status = A user i cl: 1, status:1, id: 0 JI这样是不是就很容易去理解了高可用MongoDB的复制工具(称为副本集)提供:1. I自动一故障转移2. |数据冗余。副本集是一组维护相同数据集合的mongod实例,提供了冗余和提高了数据可用性。水平拓展MongoDB提供水平可伸缩性作为其核心一功能的一部分:分片将数据分布在一个集群的机器上。从3.4开始,MongoDB支持基于分片键创建数据区域。在平衡群集中,MongoDB仅将区域覆盖的读写定向到区域内的那些分片。支持多种存储引擎WiredTiger存储引擎(包括对静

13、态加密的支持)内存存储引擎。MongoDB支持多个存储引擎:另外,MongoDB提供可插拔的存储引擎API,允许第三方为MongoDB开发存储引擎。这其实也是类似于mysql存储引擎可拔插的设计,比较容易理解架构作为一个新学习的数据库,架构图也是我们了解其信息的重要手段之一我们可以看到,在mongoDB的架构中,核心的有三个组件数据分片(Shards)分片用于存储真正的集群数据,可以是一个单独的Mongod实例,也可以是一个副本集。生产环境下Shard一般是一个Replica Set,以防止该数据片的单点故障。对于分片集合(sharded collection)来说,每个分片上都存储了集合的一部分数据(按照分片键切分),如果集合没有分片,那么该集合的数据都存储在数据库的Primary Shard 中。配置服务器(Config Servers)保存集群的元数据(metadata),包含各个Shard的路由规则,也包括了chunk (分片数据块)的信息。查询路由(Query Routers)Mongos是Sharded Cluster的访问入口,其本身并不持久化数据。Mongos启动后,会从Config Server加载元数据,开始提供服务,并将用户的请求正确路由到对应的Shard oSharding集群

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 汇报材料

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服