
spring data mongodb
南熏门前一只喵
这个作者很懒,什么都没留下…
展开
-
spring-data-mongodb从2.x升级至3.x版本,aggregate group操作,分组字段出现_id前缀的解决方式
背景由于Spring boot安全漏洞,须将项目中Spring boot升级至2.3.4版本,2.3.4版本集成了spring-data-mongodb 3.x版本,项目中原spring-data-mongodb 2.x版本被替换成spring-data-mongodb 3.x版本,须进行兼容性适配。spring-data-mongodb从2.x升级至3.x版本部分api变化见官网项目链接问题描述适配过程中发现,项目中存在大量aggregate group操作,例如:TypedAggregatio原创 2020-09-22 20:04:50 · 3631 阅读 · 2 评论 -
mongodb $lookup设置多个join条件,实现关联来源表(from)的查询结果集
从mongodb 3.6开始支持为$lookup操作的来源表指定多个查询条件。实现类似如下sql的效果:SELECT a.x1,a.x2...,a.xn, b.x1,b.x2...b.xnFROM aWHERE a.x1 IN (SELECT b.x1,b.x2...b.xn FROM b WHERE a.x1 = b.x1 AND b.x2 = 'xxxx' );业务场景:zw原创 2020-09-14 19:24:32 · 4747 阅读 · 0 评论 -
超简单mongodb 4.2分片集群搭建指南
本文以三台虚拟机为例搭建mongodb分片集群实验环境。由于config节点和mongos路由节点为单实例方式,所以现网部署不推荐此方式部署,仅供参考。现网部署应考虑config节点和mongos路由节点的高可用。部署环境:三台虚拟机 16核 32GB 200GB硬盘centos 6.9mongodb 4.2.0整体集群结构计划创建三个分片,每个分片采用一主一副已仲裁构建副本集,搭建...原创 2020-03-19 17:44:28 · 3115 阅读 · 2 评论 -
mongodb获取aggregate处理结果的总数
对mongodb执行aggregate操作命令得到结果集,前端页面展示时有时需要做分页这类场景,需要获得结果集的总数。将整个结果集都查询出来往往需要耗费很大网络io和内存。本文介绍一种方法返回经aggregate处理后结果集的记录总数。对3.4之前的mongodb版本,aggregate的stages并没有提供$count算子返回结果集记录数,可通过如下方式获得,对一个结果集记录中存在的key或...原创 2020-03-07 14:43:33 · 12364 阅读 · 0 评论 -
Spring Data MongoDB aggregate添加allowDiskUse属性
mongo对大数据集进行aggregate集合操作,处理各stage阶段中,为了避免 pipeline 的 stage 的内存使用超过 100 MB 而报错。需要设置allowDiskUse为true使用系统缓存,以临时文件进行存储。Spring Data MongoDB api不同版本对allowDiskUse设置的操作写法不同。对于Spring Data MongoDB 1.5.x以上2....原创 2019-07-29 16:54:51 · 9942 阅读 · 0 评论