位置: 编程技术 - 正文

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

  • 负债与所有者权益比率
  • 付钱给对方会计分录
  • 加油充值卡发票能入账吗
  • 现金流量表年报中的上年金额是什么
  • 网银发工资怎么增员的
  • 不能抵扣进项税额的发票类型
  • 企业外币账户怎么开通
  • 资产处置损益属于收入吗
  • 土地所有权可以出资吗
  • 二手房屋增值税税率
  • 存货呆滞是什么意思
  • 报废资产处置收入怎么计税
  • 别人的项目挂靠我公司怎么做账?
  • 税控盘上开完发票发的邮件在哪查看
  • 增值税预缴表填写模板
  • 附加税水利行政事业是否取消?
  • 水利建设专项收入怎么计算
  • 一般纳税人收取的下列款项中,应并入销售额
  • 啤酒消费税的计税基础
  • 哪些项目可以免征个人所得税
  • 文化事业建设费征收对象
  • 机票保险可以报销入账吗
  • 增值税纳税申报表在哪里打印
  • 商品期货交易会计核算
  • 一年内到期的应收质保金
  • 公司帮别人代缴社保
  • 年底分红如何计税
  • 工程回扣增值税如何处理?
  • 腾讯电脑管家流量监控不显示
  • 如何查看本机的ip 网关 和dns配置
  • 盈亏余额
  • 如何打开mac系统
  • 申报高新企业的当年一定要研发费用加计扣除吗
  • win8换成win7重装系统
  • 存货分类账目录填写样本图片
  • 买货没发票如何入账
  • php图形用户界面
  • 小型微利企业税收优惠2023
  • PHP自定义函数返回两个数中大的那个
  • 服务费发票怎么入账
  • 坏账准备税收调整
  • detr训练自己的数据集
  • 随货赠品会计处理
  • didstata命令
  • 补缴以前年度企业所得税如何做账
  • 什么是完税证明?完税证明丢了怎么办公司
  • python如何提取文件中的数据
  • 利息收入计入借方
  • 借款需要缴纳个人所得税吗
  • 生活服务的行业
  • mysql 重复记录查询
  • 药品进销差价会计科目
  • 网银转账退回来是怎么回事
  • 购进的材料没有发票可以入库吗?
  • 递延所得税资产和所得税费用的关系
  • 经营一家淘宝店需要多少钱
  • 主营业务收入需要减去增值税吗
  • 车辆购置税计入税金及附加吗
  • 出口货物退货流程
  • 固定资产清理费用账务处理
  • 差额清算系统与全额清算系统的区别
  • 施工企业内部管理制度
  • sql server用处
  • oracle分区大小建议
  • win2003出现各种硬件故障问题时的处理方法
  • ubuntu系统中安装微信步骤
  • ias.exe是什么程序
  • 无法安装osx
  • windows7 cpu使用率高
  • win7共享文件夹关闭密码保护
  • win8怎么禁止弹窗
  • windows.prompt用法
  • 网页设计css文字居中
  • jquery和html的关系
  • 浅谈 vue 中的 watcher
  • js右键菜单
  • javascript基础教程pdf
  • python的排序方法
  • 别墅与普通住宅的优缺点
  • 深圳沙井社保局在哪个位置
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设