位置: 编程技术 - 正文

mongoDB实现分页的方法(mongodb如何分片)

编辑:rootadmin

推荐整理分享mongoDB实现分页的方法(mongodb如何分片),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mongotemplate 分页查询,mongo 分页查询,mongodb分页查询count太慢,mongodb如何分片,mongotemplate 分页查询,mongodb 分页,mongo 分页查询,mongodb分页查询语句,内容如对您有帮助,希望把文章链接给更多的朋友!

mongoDB的分页查询是通过limit(),skip(),sort()这三个函数组合进行分页查询的。

下面这个是我的测试数据

db.test.find().sort({"age":1});

第一种方法

查询第一页的数据:db.test.find().sort({"age":1}).limit(2);

查询第二页的数据:db.test.find().sort({"age":1}).skip(2).limit(2);

查询其他页数以此类推。。。

第二种方法

查询第一页的数据:db.test.find().sort({"age":1}).limit(2);

跟上面的第一种方法一样的。

查询第二页的数据:

这个是获取第一页最后一条记录的值,然后排除前面的记录,就能获取到新的记录了

总结来说,如果数据量不是很大的话,可以使用第一种方法,毕竟比较简单,如果数据量比较大的话,使用第二种方法比较好,因为这样就可以不用到skip()这个函数,skip跳过太多的记录,效率有点低

经过认真的考虑,第二种方法确实不适合跳页,而且效率也不是很高

mongoDB实现分页的方法(mongodb如何分片)

对于海量数据的话,我们要做些特殊的处理,

有以下2种方法

第一种方法

限制分页的页数,类似百度的百度的分页处理,只是显示前面的七百多条记录,这样的就不用考虑性能的问题了,毕竟一般人都只是翻到前面十页,就找到自己需要的了

后面的统计结果应该是估算出来的,根据查出来的这些记录所占的比例估算出总的记录数

第二种方法

我们可以这样做,假设是根据id排序的,我们可以id跟id所在的页数的序号存到redis/MemberCached中,

就像这样,假设每一页有条记录

id page

1 1

2 1

。。。

1

2

2

。。。。

2

这样我们查第一页的时候就能直接取出十条数据

假设有1亿条数据,一条记录id占4个字节,其他信息的占一个字节,一条记录就占5个字节

1 *5/(*)=MB

这种做法使用空间换时间,一般数据库查询的时间大多花在跟数据库的连接上,放在缓存中,可以大大加快查询的速度

标签: mongodb如何分片

本文链接地址:https://www.jiuchutong.com/biancheng/312642.html 转载请保留说明!

上一篇:mongoDB 多重数组查询(AngularJS绑定显示 nodejs)(mongodb 分组计数)

下一篇:MongoDB进阶之动态字段设计详解(mongodb进阶与实战下载)

  • 递延所得税计算题
  • 工伤在门诊的收据能报销吗
  • 公司租用其他公司车辆能报销保险费吗,发票怎么开
  • 工资社保缴纳计算器
  • 个税全员全额扣缴申报指什么
  • 公司银行未开户税务也没开需要做工商年报吗
  • 用友t6如何生成当月的财务报表
  • 税务局三代手续费政策
  • 暂估资产会计处理
  • 企业所得税的利润总额是利润表中的哪个数
  • 开仓库需要营业执照吗
  • 废旧物资回收经营范围
  • 注册资本认缴与实缴会计如何做账
  • 公司员工出差发工资吗
  • 预缴的所得税怎么做分录
  • 公司购买的绿植普票怎么抵扣
  • 砂石开采销售需什么资质
  • 年底增值税有余额吗
  • 外汇风险怎么规避
  • 劳务外包业务外包的区别
  • 开户许可证复印件是什么
  • 小规模纳税人不开票收入填在哪里
  • 已认证的发票对公司影响
  • 小区保安有收物业费的权利和义务吗?
  • 房屋维修费属于固定资产吗
  • 腾讯电脑管家游戏模式
  • rancher2教程
  • win11 组策略
  • 政府拨款经费会计分录
  • win10任务栏快捷图标不见了
  • mac 10.11系统
  • 高新技术企业在哪申报年报
  • PHP:mcrypt_list_algorithms()的用法_Mcrypt函数
  • 固定资产抵债账务怎么处理
  • win10iis安装配置
  • 增值税的法律法规最新
  • 数据库管理框架
  • vuex iframe
  • js 切面
  • win11更新22468
  • 浅析企业坏账产生的原因及对策
  • 预缴所得税可以调减吗
  • 帝国cms视频教程
  • python3 zipfile模块
  • 购买汽车相关费用标准
  • 应收账款收不回来做坏账处理分录
  • 接受现金资产投资会引起实收资本增加吗
  • 计提提成是什么意思
  • 怎么结转未交增值税
  • 农产品收购发票使用范围
  • 房产税和土地使用税什么时候申报
  • 机场员工家属机票
  • 卖旧固定资产计入哪个科目
  • 工资计提多了冲账怎么办
  • 用盈余公积弥补亏损的会计分录是
  • 建立固定资产管理台账
  • 有发票还要填写领款单吗
  • 其他业务收入在利润表中怎么填写
  • 微型创新是什么
  • fedora怎么安装软件
  • centos6.5mini安装教程
  • winxp系统控制面板
  • xp系统蓝屏解决
  • centos 安装源设置出错
  • bd是什么文件
  • win10更换登陆账号
  • linux yum安装apache
  • frontpage软件
  • win8无法关机一直转圈
  • win7怎么禁止程序自启动
  • js代码执行顺序简单介绍
  • perl语句
  • Bullet(Cocos2dx)之优化PhysicsDraw3D
  • 获取本地ip地址失败
  • 浅谈python中的实例方法、类方法和静态方法
  • shell 读取
  • document对象常用方法
  • jquery事件处理有哪些
  • 大气污染物环保税计算
  • 国税实名制信息采集
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设