及时发现并解决空间问题是数据库运维的重要任务。通过数据库自治服务DAS的空间分析功能,您可以直观地查看数据库及表的空间使用情况,及时发现空间的异常情况。此外,DAS支持回收空间碎片,避免磁盘空间浪费和性能下降。
前提条件
目标数据库实例为:
自建MongoDB
云数据库MongoDB版
说明当前仅支持4.0及以上版本的副本集或分片集群实例。
目标数据库实例已接入DAS,且实例接入状态为接入正常,接入方法具体请参见接入数据库实例。
空间分析
登录DAS控制台。
在左侧导航栏中,单击实例监控。
找到目标实例,单击实例ID,进入目标实例详情页。
在左侧导航栏,单击空间分析,您可直观地查看该实例的空间概况、数据空间、异常列表、空间变化趋势。
页签
区域
说明
空间概况
库表空间概况
查看空间异常、近一周日均增长量,空间可用天数和已用空间等信息。
说明单击查看各项统计信息的详细说明。
异常列表
查看该实例表/集合的异常信息。
空间变化趋势
查看选定时间范围内的空间变化趋势。
说明时间隔间最大不能超过七天。
表空间
查看数据库实例中各个表的信息和空间使用情况,单击表名可查看对应表的字段和索引。
数据空间
查看该实例每个数据库的空间使用情况,以及数据库中表空间的使用情况。
单击表名可查看对应表的字段和索引。
回收空间碎片
仅支持Hidden节点回收空间碎片,如果需要回收Primary和Secondary节点的碎片,可以先进行主备切换,将Primary或Secondary节点切换到Hidden节点,再处理新Hidden节点的空间碎片;也可以参考回收磁盘碎片以提升磁盘利用率直接执行compact
,操作时请仔细阅读参考文档。
登录DAS控制台。
在左侧导航栏中,单击实例监控。
找到目标实例,单击实例ID,进入目标实例详情页。
在左侧导航栏,单击空间分析。
在表空间区域,单击碎片率列的回收。
在回收窗口中,回收空间碎片。
设置碎片回收计划。
对该实例设置回收计划后,DAS将在每天的可维护时间段自动检测隐藏节点(Hidden节点)的各个集合,并对满足索引空间和数据空间占用量之和大于1 GB且碎片率大于20%的集合执行
compact
。手动执行回收。
单击高碎片率集合操作列的执行回收,选择立即执行或在运维窗口执行,回收目标集合的空间碎片。
说明操作完成之后,不会立即完成空间碎片回收,请耐心等待。在实际情况下,
compact
命令会在后台运行一段时间,逐渐回收空间碎片。具体回收时间与可回收空间大小有关,空间越大,回收时间越长。建议避免一次回收过多的集合(建议控制在10个以内),完成当前任务后再进行下一轮空间碎片回收。
如果目标集合的可回收空间较小,碎片回收的效果可能不明显。
查看空间碎片回收结果
回收任务执行完成之后,请单击重新分析,查看回收后的效果。
相关文档
空间分析功能当前仅支持4.0及以上版本的副本集或分片集群MongoDB实例,如果您需要回收其他MongoDB实例的空间碎片,请参见回收磁盘碎片以提升磁盘利用率。
- 本页导读 (1)