Mongodb数据库提高查询速度 急啊,,,,,,,,, 30
我最近在做一个项目很着急我有60g的数据数据库采用mongodb把60g数据放到一台机器mongodb数据库服务器做一个模糊查询操作要一个小时,,想提高查询速度,而后我做...
我最近在做一个项目很着急 我有60g的数据数据库采用mongodb把60g数据放到一台机器mongodb数据库服务器做一个模糊查询操作要一个小时,,想提高查询速度,而后我做了分片效果还是不好,分片 配置服务器是192.168.1.12:30000 分片分别是192.168.1.113:27017 和192.168.1.12:27017 我在用php链接数据库的时候是不是链接这个192.168.1。12:30000这个端口啊,,还是分片就不能提高查询效率呢,,如果你有好方法请赐教下谢谢了,,
展开
3个回答
展开全部
分片是水平扩展的方式,你试试用replica set能不能提高读的效率,一个replica set里可以同时从每个副本读取数据,理论上应该可以提高一点速度。
另外那么大的数据,必须要建立索引,而且需要针对你的查询需求建立索引,你要怎么查,就得对那些项建立,否则查询的时候会遍历整个数据库,当数据库大于内存的时候速度会慢的难以忍受。
还有一点就是,如果索引大于内存,即使建立索引,速度也会大大降低。所以提高查询效率最好的方法还是先分析好你的查询需求,然后加大内存
另外那么大的数据,必须要建立索引,而且需要针对你的查询需求建立索引,你要怎么查,就得对那些项建立,否则查询的时候会遍历整个数据库,当数据库大于内存的时候速度会慢的难以忍受。
还有一点就是,如果索引大于内存,即使建立索引,速度也会大大降低。所以提高查询效率最好的方法还是先分析好你的查询需求,然后加大内存
美林数据技术股份有限公司
2023-07-25 广告
2023-07-25 广告
美林数据Tempo大数据分析平台,它是一款集数据接入、数据处理、数据挖掘、数据可视化、数据应用于一体的软件产品。它秉持“智能、互动、增值”的设计理念,面向企业级用户提供自助式数据探索与分析能力,为企业提供从BI到AI的一体化数据分析与应用解...
点击进入详情页
本回答由美林数据技术股份有限公司提供
展开全部
Mongodb的模糊查询本身就非常的差,不推荐使用。
解决方案:
1. 用最新版本的Mongodb,提供了全文索引的功能,比较新,但不知道是否好用。
2. 用Lucene、Solr作为模糊查询功能 (如果用Mongodb,那么是目前模糊查询比较好的解决方案)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的sharding key是不是设的不科学?如果mongodb可以根据你的query和sharding key来判断数据在哪一段,它根本就不会去其他地方搜索,速度能快不少。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询