`
ppxieppp
  • 浏览: 50707 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

详解MongoDB的Compact操作(转)

阅读更多

转自 http://blog.nosqlfan.com/html/3282.html

在过去,我们只能通过repairDatabase()命令来对数据进行压缩,而repairDatabase()命令只能对整个DB进行压缩,新的压缩命令(compact command)可以针对单个Collection分别进行压缩,其好处是显而易见的。

  • 由于只压缩需要的Collection,所以压缩期间产生的临时文件会小很多
  • 压缩会去除Collection所在文件的碎片
  • 同样,其重建索引的代价也变小了,对内存的需求也就变小了

具体用法:

> db.yourCollection.runCommand("compact");
> db.runCommand({ compact : 'yourCollection' });

对于compact命令,有两点需要注意:

  • Compact操作进行中,会blocks掉所有在当前Collection上的操作,所以Compact操作最好在业务低估的时候进行。
  • 你可以在一个Replica Sets的secondary上进行数据压缩,不过在压缩过程中,这个节点会变成不能服务的recovery模式。
  • 运行Compact操作后,当前Collection的Padding Factor会变成1,后续如果有使数据变长的更新操作,可能会在一段时间内比较慢。
  • Capped Collection是不能进行Compact操作的,原因嘛,因为Capped Collection本身就没有碎片存在。

这里有一个脚本,提供对Primary节点的压缩,自动完成了stepDown,压缩操作。

分享到:
评论

相关推荐

    11、MongoDB聚合操作及索引使用详解-ev.rar

    11、MongoDB聚合操作及索引使用详解_ev.rar11、MongoDB聚合操作及索引使用详解_ev.rar11、MongoDB聚合操作及索引使用详解_ev.rar11、MongoDB聚合操作及索引使用详解_ev.rar11、MongoDB聚合操作及索引使用详解_ev.rar...

    Mongodb时间类型转换

    Mongodb时间格式转换以及时间的运算和获取当前时间的毫秒值

    MongoDB之conf配置文件详解

    MongoDB之conf配置文件详解 MongoDB的配置文件是服务器的核心组件之一,它控制着MongoDB服务器的各种设置和行为。在本文中,我们将详细介绍MongoDB的配置文件的各个部分,并解释每个设置的作用和意义。 一、数据库...

    详解MongoDB管理命令

    MongoDB 是一种流行的开源文档...在日常操作中,MongoDB 的管理命令是管理员进行数据管理、备份、恢复、性能优化以及问题排查的关键工具。熟练掌握这些命令,能够有效地管理和维护 MongoDB 集群,确保系统的稳定运行。

    MongoDB详解加实例

    MongoDB详解加实例 MongoDB是一款高性能、开源、无模式的文档型数据库,它属于NoSQL数据库的一种。MongoDB的设计理念是为了解决大规模数据存储问题,尤其适用于处理大量非结构化或半结构化数据。在本文中,我们将...

    nosql实验六- MongoDB的安装与基本操作.docx

    MongoDB 安装与基本操作 MongoDB 是一款流行的 NoSQL 数据库,广泛应用于大数据和实时 Web 应用程序。在本实验中,我们将学习如何在 Windows 和 Linux 环境下安装 MongoDB,并了解 MongoDB 的基本操作。 一、...

    mongodb 数据库基本操作.doc

    ### MongoDB数据库基本操作详解 #### 一、连接MongoDB数据库 MongoDB是一个广泛使用的开源文档数据库,支持多种编程语言。为了能够与MongoDB交互并执行各种数据库操作,首先需要通过官方提供的驱动程序或其他第三...

    Springboot整合MongoDB进行CRUD操作的两种方式(实例代码详解)

    Springboot整合MongoDB进行CRUD操作的两种方式 在分布式和微服务架构中,Springboot和MongoDB是非常流行的技术栈。 Springboot是最简单的使用Spring的方式,而MongoDB是最流行的NoSQL数据库。两者在实际应用中使用...

    MongoDB之查询详解

    ### MongoDB查询详解 #### 一、引言 在NoSQL数据库的世界里,MongoDB因其灵活的数据模型、高性能和可扩展性而备受青睐。查询作为数据库操作中最基础也是最重要的功能之一,在MongoDB中同样有着丰富的语法支持。...

    MongoDB文档操作详解:插入、查询、更新与删除技术指南

    内容概要:本文详细介绍了MongoDB中的文档操作,涵盖插入、查询、更新和删除等基本操作及其高级特性。具体内容包括:MongoDB的基本概念、BSON格式的文档结构、文档的插入方法(insertOne、insertMany)、查询方法...

    MongoDB基本操作指南

    MongoDB 使用类似于JSON的BSON格式存储数据,这使得数据模型更具表现力,同时也简化了数据操作。MongoDB 的核心特性包括其无模式(Schema-free)的设计,允许动态schema,这意味着文档可以拥有不同的结构,极大地...

    MongoDB基本操作.docx

    ### MongoDB基本操作详解 #### MongoDB简介 MongoDB是一款开源的NoSQL数据库系统,以其灵活性、高性能及可扩展性著称,特别适用于Web应用的开发。MongoDB的数据模型基于文档,这意味着它存储的数据形式类似于JSON...

    记录MongoDB管理操作

    ### MongoDB管理操作详解 #### 一、概述 随着NoSQL技术的发展,MongoDB因其灵活性、扩展性和高性能成为了众多企业的首选数据库之一。对于大型系统来说,MongoDB的管理和维护至关重要。本文将详细介绍在过去一年多...

    springboot整合mongodb详解

    SpringBoot整合MongoDB详解 MongoDB是一款高性能、无模式的分布式文档型数据库,适用于处理大量数据的场景,尤其适合处理半结构化或非结构化的数据。SpringBoot是Spring框架的一个轻量级模块,旨在简化Spring应用的...

    .net平台(C#)MongoDB最新版操作类

    .net平台(C#)MongoDB最新版操作类 MongoDB操作类源码包括添加、修改、删除和查询(包括分页)等同步及异步操作类完整的代码。 本项目是以最新版的MVC结合MongoDB呈现,对MongoDB有兴趣的朋友很有参考价值。 可以...

    MongoDB若基本操作

    在这个“MongoDB基本操作”的主题中,我们将深入探讨如何使用MongoDB进行数据的增删改查以及其它关键操作。 1. **安装与启动MongoDB** - 在不同的操作系统(如Windows、Linux或macOS)上安装MongoDB的步骤略有不同...

    MongoDB 数据库基本操作与功能详解

    #### MongoDB 基本操作详解 ##### 1. 数据库操作 - **创建数据库** 在 MongoDB 中,数据库是数据的逻辑存储单元。如果需要创建一个新的数据库,可以通过 `use` 命令指定数据库名。如果该数据库尚未存在,则会在...

    详解MongoDB数据库基础操作及实例

    本文将详细讲解MongoDB数据库的基础操作,并通过实例来帮助理解和应用这些概念。 首先,我们来看如何插入数据到MongoDB。在上述代码中,`addDBObject`方法展示了如何向数据库中插入一个`DBObject`。`DBObject`是...

    Mongodb安装部署操作资料

    本资料包涵盖了MongoDB的安装、部署以及相关的操作知识,旨在帮助用户全面理解和掌握MongoDB的基本使用。 首先,让我们从MongoDB的安装开始。MongoDB提供了适用于多种操作系统(如Windows、Linux和macOS)的二进制...

Global site tag (gtag.js) - Google Analytics