当前位置: 首页 > news >正文

网站优化方案教程网络逻辑设计报告

网站优化方案教程,网络逻辑设计报告,网络商城推广方案,杭州网站建设zj net文章目录 一、索引1、说明2、原理3、相关操作3.1、创建索引3.2、查看集合索引3.3、查看集合索引大小3.4、删除集合所有索引#xff08;不包含_id索引#xff09;3.5、删除集合指定索引 4、复合索引 二、聚合1、说明2、使用 总结 一、索引 1、说明 索引通常能够极大的提高查… 文章目录 一、索引1、说明2、原理3、相关操作3.1、创建索引3.2、查看集合索引3.3、查看集合索引大小3.4、删除集合所有索引不包含_id索引3.5、删除集合指定索引 4、复合索引 二、聚合1、说明2、使用 总结 一、索引 1、说明 索引通常能够极大的提高查询的效率如果没有索引MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录。这种扫描全集合的查询效率是非常低的特别在处理大量的数据时查询可以要花费几十秒甚至几分钟这对网站的性能是非常致命的。索引是特殊的数据结构索引存储在一个易于遍历读取的数据集合中索引是对数据库表中一列或多列的值进行排序的一种结构。 2、原理 从根本上说MongoDB中的索引与其他数据库系统中的索引类似。MongoDB在集合层面上定义了索引并支持对MongoDB集合中的任何字段或文档的子字段进行索引。 默认_id已经创建了索引。 3、相关操作 3.1、创建索引 db.集合名称.createIndex(keys, options) db.集合名称.createIndex({title:1,description:-1})说明: 语法中 Key 值为你要创建的索引字段1 为指定按升序创建索引如果你想按降序来创建索引指定为 -1 即可。 createIndex() 接收可选参数可选参数列表如下 ParameterTypeDescriptionbackgroundBoolean建索引过程会阻塞其它数据库操作background可指定以后台方式创建索引即增加 “background” 可选参数。 “background” 默认值为false。uniqueBoolean建立的索引是否唯一。指定为true创建唯一索引。默认值为false.namestring索引的名称。如果未指定MongoDB的通过连接索引的字段名和排序顺序生成一个索引名称。sparseBoolean对文档中不存在的字段数据不启用索引这个参数需要特别注意如果设置为true的话在索引字段中不会查询出不包含对应字段的文档.。默认值为 false.expireAfterSecondsinteger指定一个以秒为单位的数值完成 TTL设定设定集合的生存时间。vindex version索引的版本号。默认的索引版本取决于mongod创建索引时运行的版本。weightsdocument索引权重值数值在 1 到 99,999 之间表示该索引相对于其他索引字段的得分权重。default_languagestring对于文本索引该参数决定了停用词及词干和词器的规则的列表。 默认为英语language_overridestring对于文本索引该参数指定了包含在文档中的字段名语言覆盖默认的language默认值为 language. 3.2、查看集合索引 db.集合名称.getIndexes()3.3、查看集合索引大小 db.集合名称.totalIndexSize()3.4、删除集合所有索引不包含_id索引 db.集合名称.dropIndexes() 3.5、删除集合指定索引 db.集合名称.dropIndex(索引名称)4、复合索引 说明: 一个索引的值是由多个 key 进行维护的索引的称之为复合索引 db.集合名称.createIndex({title:1,description:-1})注意: mongoDB 中复合索引和传统关系型数据库一致都是左前缀匹配原则 二、聚合 1、说明 MongoDB 中聚合(aggregate)主要用于处理数据(诸如统计平均值求和等)并返回计算后的数据结果。有点类似 SQL 语句中的 count(*)。 2、使用 db.test.insertMany([{title: MongoDB Overview, description: MongoDB is no sql database,by_user: runoob.com,url: http://www.runoob.com,tags: [mongodb, database, NoSQL],likes: 100},{title: NoSQL Overview, description: No sql database is very fast,by_user: runoob.com,url: http://www.runoob.com,tags: [mongodb, database, NoSQL],likes: 10},{title: Neo4j Overview, description: Neo4j is no sql database,by_user: Neo4j,url: http://www.neo4j.com,tags: [neo4j, database, NoSQL],likes: 750}]);现在我们通过以上集合计算每个作者所写的文章数使用aggregate()计算结果如下 db.test.aggregate([{$group : {_id : $by_user, num_tutorial : {$sum : 1}}}])注意此处的_id是分组表示不是文档的 _id. 常见聚合表达式 表达式描述实例$sum计算总和db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, num_tutorial : { s u m : sum : sum:likes}}}])$avg计算平均值db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, num_tutorial : { a v g : avg : avg:likes}}}])$min获取集合中所有文档对应值得最小值。db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, num_tutorial : { m i n : min : min:likes}}}])$max获取集合中所有文档对应值得最大值。db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, num_tutorial : { m a x : max : max:likes}}}])$push将值加入一个数组中不会判断是否有重复的值。db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, url : { p u s h : push: push:url}}}])$addToSet将值加入一个数组中会判断是否有重复的值若相同的值在数组中已经存在了则不加入。db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, url : { a d d T o S e t : addToSet : addToSet:url}}}])$first根据资源文档的排序获取第一个文档数据。db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, first_url : { f i r s t : first : first:url}}}])$last根据资源文档的排序获取最后一个文档数据db.mycol.aggregate([{KaTeX parse error: Expected }, got EOF at end of input: …roup : {_id : by_user, last_url : { l a s t : last : last:url}}}]) 总结 以上就是MongoDB之索引和聚合的相关知识点希望对你有所帮助。
http://www.hkea.cn/news/14365420/

相关文章:

  • 标准化班组建设网站集思吧网站怎么做问卷
  • 谁的网站模板利于优化国家企业信用信息网
  • 空间设计工作室网站南昌制作网站的公司
  • 知名做网站哪家好做网站的职业叫什么
  • 淄博网站制作定制视觉新网站建设 英文翻译
  • 怎么做短文网站上海营业执照查询系统
  • 开化网站建设音乐app界面设计
  • 私人定制平台网站怎么制作网站商城
  • 天津网站建设招标手机大全网站
  • 个人网站建设的方案做网站付钱方式
  • 建站之星官网 discuz陕西省住房城乡建设厅网站管理中心
  • 搭建网站论坛wap网站乱码
  • 锦州网站建设动态wordpress加载很慢
  • app开发cms网站开发网站公告建设方案
  • 网站还能赚钱吗.tel域名不可以做网站域名吗
  • 电子商务网站推广论文没有服务器如何做网站
  • 一键生成作文的网站页游网站如何做推广
  • 亚马逊是做什么的seo模拟点击算法
  • 海西州建设局网站库尔勒市建设路街道办网站
  • 网站开发与服务器匹配北京建设教育协会官方网站
  • 织梦 旅游网站模板正规app软件开发费用
  • 昆明哪些做网站建设的公司做淘宝优惠劵网站服务器配置
  • 聚美优品网站建设情况怎么做监控网站
  • 做网站开发有前途吗展台展览
  • 网站建设需要的框架结构微信管理助手
  • 基于php技术的小型企业网站开发怎么在网站后面做链接
  • 网站的层次搜一搜排名点击软件
  • 网站信息化建设什么意思新版wordpress谷歌字体
  • 校园文化建设网站素材百度开户推广
  • 网站续费做网站时如何上传图片