mongodb创建索引解决查询卡解决方案

mongodb创建索引解决mongodb查询卡

在使用mongodb进行读取数据是,查询时间较长。导致mongodb占用cpu过高,这里我才用索引的方式解决。
mongodb在服务器上,这里先说下怎么外网连接mongodb。

外网连接mongodb

这里我的mongodb配置文件路径:/www/server/mongodb/config.conf
1.vim /www/server/mongodb/config.conf
2.找到bindIp改为0.0.0.0(意为不限制ip)
3.服务器商(阿里云)安全组开放27017端口
4.本地mongodb工具连接mongodb。
在这里插入图片描述
我这里mongodb可视化工具用的 NoSQLBooster for MongoDB
下载地址:https://pan.baidu.com/s/1VD6ZQpEX6CyeVWlzP5_Q6w
提取码:2m1w

创建索引

语法:db.collection.createIndex();
或:db.collection.ensureIndex();

例:db.tab_spend.ensureIndex({promote:-1},{name:“promote”})
tab_spend为表名;promote_id为字段名;-1为索引类型。1代表升序,-1代表降序。
{name:“promote”}代表索引名为promote。也可以使用{unique:true,name:“promote”},代表索引类型是唯一的。
-1和1可以换成hashed。这里hashed为索引类型。
我理解的原理:
用1和-1相当于字段名作为目录名即为aaa:数据。
用hashed应为hash结构的目录名:数据。
hash结构若有aaa应该在下划分一级aaa/bbb:数据。

当然,欢迎各位评论探讨指导下!感谢观看

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值