MongoDB
文章平均质量分 97
MongoDB数据库知识汇总
来一杯龙舌兰
学识尚浅,懂得很少,能写出来的更少
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【MongoDB】使用 MongoDB 存储日志、审批、MQ等数据的案例及优点
在 64 位系统上,使用 ext4 文件系统,文件大小可以达到 16TB(这只是文件系统层面的限制,实际情况还会受到磁盘空间等因素影响)。MongoDB 单个文档大小限制在 16MB(这是为了保证性能和避免过度复杂的文档结构)原创 2024-12-21 12:50:24 · 2133 阅读 · 0 评论 -
【MongoDB】MongoDB的集群,部署架构,OptLog,集群优化等详解
MongoDB在主节点应用数据库操作后将其记录到optlog中,从节点通过异步进程复制和应用(数据同步)这些操作。所有复制集成员都在local.oplog.rs集合中有op log的副本以维护数据库当前状态。MongoDB 4.4支持以小时为单位指定最小操作日志保留期,仅在oplog达到最大大小或oplog条目早于配置小时数时删除操作日志条目。原创 2024-11-13 17:05:01 · 2070 阅读 · 0 评论 -
【MongoDB】MongoDB的核心-索引原理及索引优化、及查询聚合优化实战案例(超详细)
建立索引后,MongoDB会额外存储一份按age字段升序排序的索引数据,索引结构类似如下,索引通常采用类似btree的结构持久化存储,以保证从索引里快速(O(logN)的时间复杂度)找出某个age值对应的位置信息,然后根据位置信息就能读取出对应的文档。需要注意的是,索引并不是越多越好,集合的索引太多,会影响写入、更新的性能,因为每次写入都需要更新所有索引的数据。当集合文档数量较少时,全表扫描的开销可能不大,但当文档数量达到百万、千万甚至上亿时,全表扫描的开销会非常大,一个查询耗费数十秒甚至几分钟都有可能。原创 2024-11-12 22:19:10 · 2079 阅读 · 0 评论 -
【MongoDB】MongoDB的存储引擎及Wiredtiger的读/写缓存、数据结构设计、Page生命周期等实现原理(超详细)
pages的状态是在不断变化的,因此,对于读操作来说,它首先会检查pages的状态是否为WT_REF_MEM,然后设置一个hazard指针指向要读的pages,如果刷新后,pages的状态仍为WT_REF_MEM,读操作才能继续处理。它与 B-Tree 的主要区别是,B+ Tree 的叶子节点不仅存储数据的键(key),还存储实际的数据(值,value)。:随着数据的插入和删除,B-Tree 需要做一些额外的操作(比如节点的分裂、合并),这些操作虽然能保持数据的有序性,但也会带来性能开销。原创 2024-11-08 16:55:20 · 2128 阅读 · 0 评论 -
【MongoDB】MongoDB的Java API及Spring集成(Spring Data)
通过 Spring Data MongoDB,我们可以轻松地将 MongoDB 数据库的操作与 Spring 应用集成,并且能够以声明式的方式进行数据访问,而无需直接编写大量的 MongoDB 操作代码。以下是一个使用 Spring Data MongoDB 的基本示例,展示了如何将 MongoDB 集成到 Spring Boot 应用中,执行 CRUD 操作。以上一个简单的MongoDB使用就完善了,在业务中更多的也是如此的CRUD,后续文章会写一些关于MongoDB的底层原理,毕竟面试要造火箭。原创 2024-11-07 13:50:15 · 2030 阅读 · 0 评论 -
【MongoDB】MongoDB的聚合(Aggregate、Map Reduce)与管道(Pipline) 及索引详解(附详细案例)
Map Function: 对于每个文档,emit 函数将 customerId 作为键,amount 作为值发射出去。Reduce Function: 对于每个唯一的 customerId,reduceFunction 接收一个键和与该键相关联的所有值的数组,并返回这些值的总和。Output: 结果存储在 order_totals 集合中,每个文档包含一个 customerId 和该客户的总订单金额原创 2024-11-05 22:52:22 · 1767 阅读 · 0 评论 -
【MongoDB】Windows/Docker 下载安装,MongoDB Compass的基本使用、NoSQL、MongoDB的基础概念及基础用法(超详细)
NoSQL是“Not Only SQL”的缩写,代表了一类非关系型数据库,主要用于处理大规模数据存储和高并发访问。与传统的关系型数据库(如MySQL、PostgreSQL)不同,NoSQL数据库没有固定的表结构,能够灵活存储多种数据类型,包括结构化、半结构化和非结构化数据。这里可以按需选择安装MongoDB Compass,选择会稍微慢一些,但为了方便还是建议直接顺手安装。安装完会自动打开如下界面,开启你的MongoDB操作。按需选择下载,我这里下载的是Windows x64。给创建的数据库添加数据。原创 2024-11-01 15:47:02 · 1612 阅读 · 0 评论
分享