位置: 编程技术 - 正文

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

  • 销售白酒是否要交消费税?
  • 小规模纳税人技术维护费可以抵扣吗
  • 购入不动产进项税额抵扣
  • 展会补贴收入会计处理
  • 车船税的收据什么样
  • 团建费用会计怎么写记账凭证
  • 天猫的费用一共17个分别是什么
  • 餐饮消费方式
  • 代持股 税收
  • 促销活动赠品应如何账务处理
  • 营业外收入不纳税?
  • 企业收付款流程图
  • 个体工商户开服务类型发票怎么开的
  • 收到工会经费怎样做账
  • 沙盘模型制作费用
  • php密码加密和解密
  • edge弹窗
  • php基础理论知识
  • PHP:imagepsloadfont()的用法_GD库图像处理函数
  • 特定业务预缴
  • 数字图像处理-应用篇
  • 实时视频功能
  • 核心书评价格
  • 计算机视觉项目文档
  • 狗能看懂的电视
  • btrfs 读取
  • 为什么股本溢价
  • opengl 帧率
  • java泛型方法的作用
  • 用于职工福利的进项税账务处理
  • python concat函数用法
  • 物业会计账务处理大全
  • sql server 2008设置角色
  • 货款分批付的会计分录
  • 定额的个体户怎么交税
  • 资产负债表坏账准备计入哪里科目
  • SQL Server 2008 R2 超详细安装图文教程
  • 烟丝缴纳消费税计算
  • 政府补助的界定
  • 清算时应交税金如何处理
  • 库存现金银行存款用什么凭证
  • 企业办税人员如何实名认证
  • 结转收入及成本费用
  • 小规模纳税人购入货物收到增值税专用发票
  • 置换补贴算在优惠价里吗
  • 公司利润如何提取避税
  • 员工食堂买菜怎么写分录
  • 银行存款利息如何计算
  • 买车险要先付钱再上牌吗
  • 企业尚未给予指定用途
  • 内部交易内部交易收益造成的当期折旧的多计额
  • 国税退回多缴税款
  • 公司购买垃圾袋纸巾摘要怎么写好
  • 产品出库检验报告单格式
  • 财政性银行的资金来源是什么
  • 把excel表格里的文字复制到word
  • win8系统升级到win 10
  • 一次性关闭所有窗口的快捷键
  • windowsxp删除所有内容
  • wlms.exe是什么
  • windows10已经阻止此软件
  • macbook os x
  • win10桌面右边没有了怎么弄出来了?
  • win10周年更新版是什么意思
  • scanregistry.exe - scanregistry是什么进程 有什么用
  • wmiex.exe是什么程序
  • 腾讯电脑管家免费安装下载
  • linux的安装教程
  • javascriptcsdn
  • linux shell $1
  • css做一个好看的网页
  • vue两个花括号
  • js绑定函数
  • jquery.css
  • jquery checkbox无法用attr()二次勾选问题的解决方法
  • jQuery animate easing使用方法图文详解
  • 有哪些推荐阅读的书
  • 个体逾期未申报一天会怎么样
  • 自然人扣缴端初始密码
  • 江苏国税电子网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设