MongoDB数据模型-课件

上传人:痛*** 文档编号:245565967 上传时间:2024-10-09 格式:PPT 页数:37 大小:2.10MB
返回 下载 相关 举报
MongoDB数据模型-课件_第1页
第1页 / 共37页
MongoDB数据模型-课件_第2页
第2页 / 共37页
MongoDB数据模型-课件_第3页
第3页 / 共37页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第,页,封面页,文档型,NoSQL,系统,-MongoDB,报告人:阮榕城,导师:林子雨,厦门大学数据库实验室,2015,年,7,月,17,日,2,目录,第一章,第二章,第三章,第四章,第五章,第六章,第七章,第八章,什么是面向文档的数据库?,国内使用的案例,为什么要使用,MongoDB,?,是否需要迁移?,MongoDB,数据模型,简单的,MongoDB,操作,MapReduce,索引,第,页,目录页,第九章,Sharding,分片,3,第,页,什么是面向文档的数据库?,什么是面向文档的数据库?,第一章,4,第,页,第一章,文档,数据库,集合,文档(,Document,),:,每一个文档都是自包含的数据单元,是一系列数据项的并集。每个数据项都有一个名称与对应的值,可以是简单的数据类型,如字符串、数字、日期;也可以是复杂的类型,如有序列表等。,文档很类似,JSON,的字段和值对,。,什么是面向文档的数据库?,集合(,Collection,):一组相关的文档,他们拥有一套共享的通用索引。,集合与关系型数据库中的表是类似的,。,5,第,页,什么是面向文档的数据库?,第一章,MongoDB,6,MongoDB,MongoDB,是,10gen,公司开发一款以高性能和可扩展性为特征的开源软件,是面向文档的数据库。它,介于关系型和非关系型数据库之间的产品,。,MongoDB,最大的特点是支持的查询语句非常强大,其语法类似面向对象的查询语句,类似关系数据库,单表查询,的绝大部分功能,支持对数据,建立索引,。它是面向集合,模式自由的文档型数据库。,第一章,第,页,什么是面向文档的数据库?,7,第,页,国内使用的案例,国内使用的案例,第二章,8,第,页,国内使用的案例,第二章,1,视觉中国,资讯数据库,2,优酷,在线评论业务,3,奇虎,360,“,HULK”,云平台上,每天都运行着,1,500,多个实例以及共计,200,亿次查询,4,百度,百度云的,MongoDB,数据库支持,9,第,页,为什么要使用,MongoDB,?,为什么要使用,MongoDB?,第三章,10,表字段:,”,love_cycle,”,”,love_cook,”,”,love_guitar,”,不能确定的表结构,表结构过于复杂,JSON,序列化和反序列化并不能解决全部问题,第三章,第,页,为什么要使用,MongoDB,?,?,key1-,骑行,key2-,下厨,key3-,吉他,11,MongoDB,的优势,无表结构,容易扩展,性能卓越,简便管理,功能丰富,第三章,第,页,为什么要使用,MongoDB,?,第一点,无表结构,正文,第三章,第一节,MongoDB,的优势,为什么要使用,MongoDB?,第,页,1,、不用关心表结构和程序之间的一致性。,2,、减少了增加字段的开销,“,welcome,”,:,“,Beijing,”,“,age,”,:,“,25,”,共存一个集合,13,第二点,容易扩展,正文,第三章,第一节,MongoDB,的优势,为什么要使用,MongoDB?,第,页,升级(购买更好的机器)?,扩展(将数据分散到很多机器上)?,1,、自动分散数据,2,、平衡集群数据和负载,3,、自动重排文档,14,第三点,丰富功能,正文,第三章,第一节,MongoDB,的优势,为什么要使用,MongoDB?,第,页,索引,丰富的功能,存储,JavaScript,聚合,固定集合,文件存储,15,第四、五点,性能卓越,便捷管理,正文,第三章,第一节,MongoDB,的优势,为什么要使用,MongoDB?,第,页,服务器自动配置简化数据库的管理,性能卓越,便捷管理,预分配数据文件空间,,存储引擎中使用内存映射文件,16,事务查询,Join,查询,空间需求,不足,需要进行,join,的地方不能使用,MongoDB,由关系型数据库查询,空间换取性能,对硬盘空间逐渐增大!,第三章,第,页,为什么要使用,MongoDB,?,17,第,页,是否需要迁移?,是否需要迁移?,第四章,18,如果有,2,个以上的需求在关系型数据上无法满足,就应该,考虑,迁移到,MongoDB,?,第四章,第,页,是否需要迁移?,Tips:,项目开发中请不要试图去使用一些开发人员不熟悉的技术,也要考虑后期维护成本,经常,debug,的风险!,19,第,页,是否需要迁移?,MongoDB,数据模型,第五章,20,第,页,MongoDB,数据模型,第五章,21,第,页,MongoDB,数据模型,第五章,22,第,页,MongoDB,数据模型,第五章,引用,内嵌,文档结构,存储链接或者,引用,信息来实现两个不同文档之间的关联。,把相关联的数据保存在同一个文档结构之内,23,正文,第五章,第,页,第,1,节,文档结构,-,引用,MongoDB,数据模型,第五章,文档结构,-,引用,24,正文,第五章,第,页,第,2,节,文档结构,-,内嵌,MongoDB,数据模型,第五章,文档结构,-,内嵌,25,正文,第五章,第,页,第,3,节,使用场景,-,引用,MongoDB,数据模型,第五章,文档结构,-,引用,一般如下情况建议使用引用文档结构:,2,当内嵌数据会导致很多数据的重复,并且读性能的优势又不足于盖过数据重复的弊端时候。,需要表达比较复杂的多对多关系的时候。,3,大型多层次结构数据集。,1,引用比内嵌要更加灵活一些。 但客户端应用必须使用二次查询来解析文档内包含的引用。,26,正文,第五章,第,页,第,4,节,使用场景,-,内嵌,MongoDB,数据模型,第五章,文档结构,-,内嵌,一般如下情况建议使用引用内嵌结构:,2,数据对象之间有 “,contains” (,包含,),关系。,数据对象之间有一对多的关系。 这些情况下 “多个”或者子文档会经常和父文档一起被显示和查看。,1,引用比内嵌要更加灵活一些。 但客户端应用必须使用二次查询来解析文档内包含的引用。,27,第,页,简单的,MongoDB,操作,简单的,MongoDB,操作,第六章,28,正文,第六章,第,页,第,1,节,启动数据库,简单的,MongoDB,操作,第一点,启动数据库,D:MongoDBServermongod.exe -dbpath D:MongoDBDatadb,29,正文,第六章,第,页,第,2,节,连接数据库,简单的,MongoDB,操作,第二点,连接数据库,D:MongoDBServermongo.exe,客户端:,服务端:,30,正文,第六章,第,页,第,3,节,插入文档,简单的,MongoDB,操作,第三点,插入文档,db.users.insert(,JSON,);,客户端:,31,正文,第六章,第,页,第,3,节,插入文档,简单的,MongoDB,操作,第三点,插入文档,Var documents = ,name:”ruanrc”,addr:”dblab 303”,hobby;”riding”,name:”luodw”,addr:”dblab 303”,hobby;”coding”,;,插入:文档数组,db.users.insert(documents);,32,正文,第六章,第,页,第,3,节,插入文档,简单的,MongoDB,操作,第三点,插入文档,_id key,_id,是,MongoDB,自有产物,存储在集合中的,每个文档都有一个默认的主键,_id,,名称固定,,类型可以是,MongoDB,支持任何类型,但默认是,ObjectId,,但是,同一个集合中文档的,_id,的值必须是唯一的,,不能重复。,即使插入文档的时候没有指定,_id,,,MongoDB,也会自动生成。同样,不支持自增主键。,33,正文,第六章,第,页,第四节,更新文档,简单的,MongoDB,操作,第四点,更新文档,将,name,是,ruanrc,的文档的,hobby,字段修改成,riding_bak:,db.users.update(,name:”ruanrc”,$set:hobby:”riding_bak”,);,remove,:,find,:,34,正文,第六章,第,页,第五节,删除文档,简单的,MongoDB,操作,第五点,删除文档,将,name,是,luodw,的文档从,users,集合删除,:,db.users.remove(,name:”luodw”,);,update,:,find,:,35,正文,第六章,第,页,第六节,复杂查询和修改,简单的,MongoDB,操作,第六点,复杂查询和修改,更新内嵌的字段,db.users.update(name:”ruanrc”,$set,:“hobby.num”:”9527”,);,返回指定的字段,db.users.find(name:”ruanrc”,_id:0);,1,Sort,排序,db.,users,.find,(,).sort(age:1),;,或查询,db.,users,.find( $or: name:”ruanrc”, addr:”dblab 303” );,2,3,4,36,第,页,MapReduce,MapReduce,第七章,欲知详情,请听下回分解!,37,第,页,封面页,谢谢聆听!,导师:林子雨,演讲者:阮榕城,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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