位置: 编程技术 - 正文

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

  • 个体工商户税种认定
  • 新换财务软件如何登录
  • 社保缴费基数什么意思
  • 发票管理中的四流一致是指什么一致
  • 增值税发票丢了怎么办?
  • 纳税筹划成本支出怎么算
  • 物流辅助服务属于什么项目
  • 开具的增值税专用发票上注明的金额
  • 付给私人股权转让权怎么做分录?
  • 质量问题扣款账务处理
  • 个人保证金业务
  • 企业所得税期末贷方余额怎么办
  • 对公业务指什么
  • 钢结构制作安装合同
  • 关于330技术维护费
  • 不需要缴纳增值税的有
  • 企业资产损失会计处理
  • 直接快递到国外的货物如何收汇?
  • 不同行业的单位名称
  • 企业交纳房产税,土地使用税、车船使用税应借记( )账户
  • 现金日记账有哪几种
  • 未完工产品成本计算公式
  • 商贸流通企业的构成
  • 苹果的mac系统
  • 电脑经常重新启动是什么原因
  • 高速过路费抵扣进项怎么填报
  • 会计分录的正确书写格式图片
  • mac双系统切换键
  • wordpress相关文章插件
  • Proxmox ve(PVE) 显示CPU和硬盘温度、UPS信息
  • 代收代付的垃圾清运费没发票能入账吗
  • win7资源管理器叫什么
  • 年终奖一般发什么奖品
  • 企业为员工提供服务要交增值税吗
  • 公允价值变动损益属于什么科目
  • 融资租入固定资产的改建支出
  • 闲置的固定电话机怎么改装
  • thinkphp d
  • 材料成本差异属于流动资产吗
  • vue3配置文件
  • windowsserver2012r2远程协助灰色
  • 增值税发票已认证抵扣还可以进项税额转出吗
  • chkdsk.exe/f命令
  • 建筑业成本核算流程
  • css 3有哪些新特性
  • 工会经费没有交能买发票吗
  • 以前年度损益调整账务处理分录
  • 暂估入库价格是否含税
  • 合并资产负债表与母公司资产负债表要看那一个好
  • 住宿发票丢失
  • 工会疗养费用怎么做账
  • 专项应付款科目编码是多少
  • 应收账款贷方有余额说明什么
  • 一般纳税人支付的哪些增值税进项税额不能抵扣
  • 安装sql server 2008硬件要求
  • redhat6.5安装图形界面
  • 一句命令
  • apache not found
  • 文件夹字体变成蓝色怎么恢复
  • ubuntu20.04命令
  • centos6 service
  • win10更新后自动锁定
  • dreamweaver是干嘛的
  • vsftpd的配置文件
  • 如何删除win8系统
  • 如何限制用户只能使用
  • python如何用turtle
  • js date用法
  • js是函数式编程语言吗
  • django分层
  • unity rp
  • javascript视频教程
  • 友盟的功能
  • js 实现ajax
  • opencvandroid开发实战
  • 增值税发票税控开票软件卸载不了
  • 国税局黑龙江省
  • 小孩一卡通丢了去哪里补办,需要什么证件
  • 设区市是哪里
  • 网上订机票怎么取票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设