位置: 编程技术 - 正文

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进阶与实战下载)

  • 营业税金及附加包括哪些
  • 一般纳税人的做账流程
  • 增值税附加税的会计处理
  • 境外代扣代缴增值税
  • 一般纳税人条件要求2020
  • 汇兑损益一般是多少
  • 增值税和个人所得税都要交吗
  • 法人章和财务章谁保管
  • 邀请客户参加公司会议
  • 公积金需要每月缴纳吗
  • 企业所得税从业人数包括临时工吗
  • 酒店出租会议室增值税税率
  • 单位缴纳的社保在哪里查询
  • 公司支付宝扣的钱去哪了
  • 金税盘减免税额
  • 房地产预缴土地增值税的账务处理
  • 营改增怎么还有机打发票吗
  • 无形资产进项税计入成本吗?
  • 全年一次性奖金税收优惠政策2024
  • 赠送的商品怎么入账
  • 原始凭据
  • 企业间借款利息开票税目
  • 利润分配的余额
  • 实际销售金额是含税还是不含税
  • 建筑业预交增值税最新政策
  • 什么人适用131419手机号码
  • 企业所得税季度申报表A类
  • 什么叫电鳗鱼
  • 从农民手中收购农产品增值税处理
  • 银行自动扣费用是什么
  • 分配的水电费属于什么会计要素
  • 如何解决WIN10系统文件夹只读属性不能更改
  • 联想昭阳k41笔记本
  • 民间非营利组织会计账务处理
  • 在php中,字符串有哪些表示形式
  • 撤销银行账户
  • 结转出租包装物报废的残料价值计入
  • 固定资产一次性扣除申报表怎么填
  • mac apache php
  • 租金计入主营业务成本吗
  • 工资计提和发放能不能在一个月
  • 开发商需要缴纳保证金
  • 买汽车计算公式
  • 建筑公司是可以开在住宅小区吗
  • MySQL入门教程
  • 经营活动的现金流量占全部现金流量的比重越大
  • 计提本月应交增值税
  • 银行收到客户货款会计分录
  • 分支机构与总机构怎么纳税?
  • 无奖有票是什么意思
  • 公司销售二手车怎么申报增值税
  • 不属于投资性房地产项目有自用房地产作为存货的
  • 公允价值举例说明
  • 红字冲销法可能会涉及的摘要有
  • sql拆分函数
  • mysql5.7主从配置 博客园 my cnblog
  • windows service 2003
  • win7双声道
  • linux系统ll
  • win7自动休眠怎么取消
  • 如何解决windows不是正版的问题
  • win10正式版多少钱
  • css spirit
  • 图像而已
  • 我吐槽你
  • 触摸按钮失灵怎么回事
  • js拖拽元素到另一个元素
  • 批处理设置文件夹添加user组权限
  • 如何用unity
  • jquery中如何获取元素?
  • 置顶聊天的人怎么不见了
  • javascript文本框获得焦点
  • java对象怎么比较
  • Python 基于豆瓣电影的可视化
  • 堆实现栈
  • 如何将python中的列表与数据对齐
  • 江苏社保退工办理流程
  • 地税怎么查个人所得税
  • 河南濮阳市供电公司何文中个人简历
  • 伊川娘娘山传说
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设