位置: 编程技术 - 正文

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

  • 微信支付算库存现金还是银行存款
  • 小规模报企业所得税吗
  • 电子发票红字发票怎么开
  • 金融企业贷款损失准备金税前扣除计算
  • 出纳工人借支与贷款区别
  • 向境外销售货物交增值税吗?
  • 社保缴纳已超标准
  • 出差住宿普通发票进项税可以抵扣吗
  • 处置全资子公司税务处理
  • 商业折扣如何开票
  • 地税开发票为啥要交百分之二的企业所得税?
  • 收取线路维护费合法吗
  • 坏账准备税务处理办法
  • 水费分割单由哪一方出具
  • 酒生产车间
  • 小规模纳税人金额
  • 关于增值税报税的通知
  • 奖金个人所得税筹划
  • 股权转让能否低于股价
  • 农产品进项税抵扣计算例题
  • 所得税年报流程
  • 旧设备出口要交增值税吗
  • 软件企业收到即征即退分录
  • 公积金代扣时会扣多少
  • 采购过程中产生的物流成本案例分析
  • 个人租车给单位合同怎么写
  • linux关闭thp
  • 企业预付保险费怎么做账
  • php框架怎么写
  • 对公网银数字证书
  • 前期差错更正怎么计算
  • 销售折让负数会计分录
  • 固定资产减值判断标准
  • 其他存货包括哪些内容
  • 公网访问内网主机
  • php单例模式demo
  • 罂粟的花季
  • excel导出exe
  • 智能优化算法主要内容
  • 存货盘点调整表怎么做分录
  • 餐饮服务专票可以抵税吗
  • 超市的购物卡以什么为准
  • mongodb建立索引的命令
  • 2021发票认证
  • 撰写广告
  • 长期借款属于什么会计分录
  • SQL Server 2008 R2 超详细安装图文教程
  • 分红需要满足的条件包括
  • 个体户季报网上申报怎么填写
  • 生产企业成本核算案例
  • 商贸公司用购进产品吗
  • 固定资产报废怎么开票
  • 收据注明实际到账时间
  • 现金支付的范围包括
  • 建设项目开办费包括哪些
  • 资产减值的含义与应用范围
  • 不动产什么时候取得所有权
  • mysql从一个表导入记录到另一个表
  • win7桌面怎么设置到d盘
  • xp启动加速
  • linux获取操作命令的使用方法或参数选项内容
  • linux中ls命令的功能
  • tkmc.exe
  • win8.1中文版下载
  • linux记录操作记录
  • windows7鼠标设置在哪里
  • win7系统找不到蓝牙设备
  • js判断手机浏览器设置了电脑版浏览
  • jquery自定义
  • vue cli3 webpack配置
  • 后台实时分流文件的shell脚本
  • JQuery Ajax WebService传递参数的简单实例
  • 详解金球奖之争
  • angular卸载
  • linux查看shell脚本
  • jquery操作表单
  • 重庆平均缴费指数查询
  • 地域税收收入增长原因
  • 浙江职称评审网站官网
  • 国家税务总局简易征收最新文件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设