-
地理位置索引: 1、2d索引,用于存储和查找平面上的点 2、2dsphere索引,用于存储和查找球面上的点 查找方式: 1、查找距离某个点一定一定距离内的点 2、查找包含在某个区域内的点 创建方式: 2d索引:db.集合名.ensureIndex({w:"2d"}) 2dsphere索引: db.集合名.ensureIndex({w:"2dsphere"}) 位置表示方式:经纬度[精度,纬度] 取值范围:精度[-180,180],纬度[-90,90] 查询方式: $near: 查询距离某个点最近的点 $goWithin: 查询某个形状内的点 例子: db.集合名.find({w:{$near:[1,1]}}) db.集合名.find({w:{$near:[1,1], $maxDistance:10}}) 查找距离[1,1]最大距离为10的点 db.集合名.find({w:{$geoWithin:{$box:[[0,0],[3,3]]}}}) 查找在矩形[0,0] [3,3]范围内的点 db.集合名.find({w:{$geoWithin:{$center:[[0,0],5]}}}) 查找以[0,0]为圆心半径为5的园内的点 db.集合名.find({w:{$geoWithin:{$polygon:[[0,0],[1,1],[4,5],[6,6]]}}}) 查找以[0,0],[1,1],[4,5],[6,6]为多边形内的点 geoNear查询: db.runCommand({ geoNear:集合名, near:[x, y], minDistance: (对2d索引无效) maxDistance: num: })查看全部
-
比较重要的索引属性: 1、名称name:指定索引名称 db.集合名.ensureIndex({age:1}, {name:"age_index"}) 2、唯一性unique db.集合名.ensureIndex({age:1}, {unique: true/false}) 类似关系型数据库字段的唯一约束 3、稀疏性sparse db.集合名.ensureIndex({age:1}, {sparse: true/false}) 默认不稀疏即false 4、是否定时删除expireAfterSeconds,过期索引 db.集合名.ensureIndex({time:1}, {expireAfterSeconds: 30}) 30秒过期,数据将删除。查看全部
-
全文索引使用限制: 每次查询只能指定一个$text查询 $text查询不能出现在$nor查询中 查询中如果包含了$text,则hint不再起作用 全文索引还不支持中文。(在3.2版本开始支持中文检索)查看全部
-
创建索引: 1、db.集合名.ensureIndex({age:1}) 单键索引 2、db.集合名.ensureIndex({name:1,age:1}) 复合索引 3、db.集合名.ensureIndex({time:1},{expireAfterSeconds:30}) 过期索引(30秒后过期,数据也随之删除) 存储在过期索引字段的值必须是指定的时间类型,必须是ISODate或者是ISODate数组,不能使用时间戳,否则不能被自动删除。 如果指定了ISODate数组,则按照最小的时间进行删除。 过期索引不能是复合索引。 删除时间不是精确的,删除过程是由后台程序每60s跑一次,而且删除也需要一些时间,所以存在误差。 4、全文索引:对字符串与字符串数组创建全文可搜索的索引 试用情况:{author:"", title:"", article:""} 创建索引: db.集合名.ensureIndex({key:"text"}) db.集合名.ensureIndex({key_1:"text",key_2:"text"}) db.集合名.ensureIndex({"$**":"text"}) 为所有字段创建一个索引 如何使用全文索引查询: db.集合名.find({$text:{$search:"aa"}}) 查询包含aa的数据 db.集合名.find({$text:{$search:"aa bb"}}) 查询包含aa或bb的数据 db.集合名.find({$text:{$search:"aa bb -cc"}}) 查询包含aa或bb且不包含cc的数据 db.集合名.find({$text:{$search:"\"aa\" \"bb\" \"cc\""}}) 查询同时包含aa、bb、cc的数据 全文索引相似度: db.集合名.find({$text:{$search:"aa bb"}}, {score:{$meta:"textScore"}}) db.集合名.find({$text:{$search:"aa bb"}}, {score:{$meta:"textScore"}}).sort({score:{$meta:"textScore"}})按相似度排序查看全部
-
新建项目的多行命令查看全部
-
配置文件查看全部
-
支持的查询方式查看全部
-
mongodb不支持事务; 不支持join;查看全部
-
开源NoSql查看全部
-
MongoDB优点查看全部
-
你的时候就查看全部
-
sql与NoSql的不同 sql:实时一致性,支持事务,可多表联查,限制较多,对表的应用不够灵活,(在没有特别多的事务需求情况下)额外的特性比较消耗性能 NoSQL:操作简单,方便扩展,更好的性能查看全部
-
1、Mongodb的概念 mongodb、mongo、索引、集合、复制集、分片、数据均衡 2、学会mongodb的搭建 部署数据库服务: 搭建简单的的单击服务--》 搭建具有冗余容错功能的复制集--》 搭建大规模数据集群--》 完成集群的自动部署 3、熟悉mongodb的使用 最基本的文档的读写更新删除 各种不同类型的索引的创建与使用 复杂的聚合查询 对数据集合进行分片,在不同的分片间维持数据均衡 数据备份与恢复 数据迁移 4、简单运维 部署mongodb集群 处理多种常见故障 单节点失效,如何恢复工作? 数据库意外被杀死如何进行数据恢复? 数据库发生拒绝服务是如何排查故障? 数据库磁盘快满时如何处理?查看全部
-
mongodb 搭建查看全部
举报
0/150
提交
取消