通过standard reports查看Disk Usage,选中Database,右击,选择Reports->Standard Reports->Disk Space Usage,截图如下

在Disk Usage 报表中,Data Files Space Usage分为4部分:Index , Data,Unallocated 和 Unused。

  • Index 是Index 结构实际占用的space
  • Data 是table objects实际占用的space
  • Unused 是已经allocate 给db objects(index or table),但是objects未实际占用的space
  • Reserved 是table objects实际占用的space +Index Objects所占用的space + Unused space,可以理解为已经 allocate 给数据库objects使用的space。
  • Unallocated是没有allocate给任何db object的space,这部分space不属于任意object,没有被任何数据库object使用。如果有object需要space,可以从这部分space中allocate。
  • database file的total size = Reserved Space+Unallocated Space。

Unallocated space是预留的存储空间,在DB运行时,如果有 object 需要空间,那么Sql Server直接将这部分space分配给object,而不用向OS申请额外的disk space。向OS申请额外的disk space会导致data file的grow,由于申请额外的disk space需要耗费一定的时间对space进行初始化,可能会导致transaction timeout,导致transaction失败而rollback。所以,良好的DB Design都会预留足够的disk space,即保持一定量的Unallocated space。

如果Unallocated Space 过大,会导致Disk space exhaust,这时就需要shrink file,以free space。命令dbcc shrinkfile 释放的空间就是Unallocated space,释放之后,这部分空间返回给OS。

数据库文件的存储空间分为两部分:

  • Unallocated  space:虽然数据库文件的空间,但是没有分配,无法使用。只有已经分配的空间才能用于存储数据;
  • Allocated space:已分配的空间,已分配的空间分为已使用的空间(used space)和未使用的空间(unused space)。
    • Unused space:已分配(allocated)的空间,但是没有存储任何数据,
    • used space:已使用的空间,分为数据空间和索引空间,分别用于促成你数据和索引。

参考文档:

Difference between unallocated and unused space

硬盘空间术语:unallocated, unused and reserved的更多相关文章

  1. Disk Space Usage 术语理解:unallocated, unused and reserved

    通过standard reports查看Disk Usage,选中Database,右击,选择Reports->Standard Reports->Disk Space Usage,截图如 ...

  2. 释放Linux系统预留的硬盘空间【转】

    http://www.cnblogs.com/ggjucheng/archive/2012/10/07/2714294.html 前言 大多数文件系统都会保留一部分空间留作紧急情况时用(比如硬盘空间满 ...

  3. Linux学习之CentOS(十七)-----释放 Linux 系统预留的硬盘空间 与Linux磁盘空间被未知资源耗尽 (转)

    释放 Linux 系统预留的硬盘空间  大多数文件系统都会保留一部分空间留作紧急情况时用(比如硬盘空间满了),这样能保证有些关键应用(比如数据库)在硬盘满的时候有点余地,不致于马上就 crash,给监 ...

  4. Linux  释放Linux 系统预留的硬盘空间

    释放 Linux 系统预留的硬盘空间 by:授客 QQ:1033553122   大多数文件系统都会保留一部分空间作为紧急情况时用(比如硬盘空间满了),这样能保证有些关键应用(比如数据库)在硬盘满的时 ...

  5. 【代码笔记】iOS-获得当前硬盘空间

    一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. ...

  6. 扩大ubuntu虚拟机硬盘空间

    一.背景: 出于测试的需要,在ubuntu 14.04系统中通过virtualbox虚拟机安装了额ubuntu 14.04系统(guest os).安装过程采用ubuntu 14.04的默认分区方法. ...

  7. Macbook SSD硬盘空间不够用了?来个Xcode大瘦身吧!

    原文转自:http://www.jianshu.com/p/03fed9a5fc63    日期:2016-04-22 最近突然发现我的128G SSD硬盘只剩下可怜的8G多,剩下这么少的一点空间连X ...

  8. 由于log太多导致ubuntu硬盘空间满了,进入不了系统解决办法

    具体现象是在图形界面输入用户名和密码之后,再次提示需要输入用户名和密码. 步骤一:按快捷键进入命令行界面.ctrl+alt+f1. 步骤二:清空文件 clear log cd /var/log sud ...

  9. VMware 虚拟机Red Hat 5.9 交换区及硬盘空间调整

    首先要通过VMware设置简单实现内存扩大.但是系统中的/swap应该如何设置呢? 1. 创建swap 文件 使用如下命令: #dd if=/dev/zero of=/swap/swapfile bs ...

随机推荐

  1. [翻译] ALMoviePlayerController

    ALMoviePlayerController ALMoviePlayerController is a drop-in replacement for MPMoviePlayerController ...

  2. WDS使用捕获映像制作企业自定义映像

    来源:http://www.07net01.com/linux/WDSshiyongbuhuoyingxiangzhizuoqiyezidingyiyingxiang_545749_137448761 ...

  3. python2.7与3.5共存windows平台安装

    文:铁乐与猫 2018-3-18 周日 01.首先是安装python2.7: 官网下载 https://www.python.org 点击安装包进行安装 可以选择自定义的路径 将默认打x的[add p ...

  4. 用HashSet存储自定义对象

      案例 package cn.itcast_02; import java.util.HashSet; /* * 需求:存储自定义对象,并保证元素的唯一性 * 要求:如果两个对象的成员变量值都相同, ...

  5. MVC5开发环境的配置

    如果你打算在VS2012上开发MVC5,请通过WPI来安装此组件:ASP.NET and Web Tools 2013.1 version

  6. CSS控制列表与导航的制作

    <style type="text/css"> /*body默认是有边距的*/ body{ margin:0;} /*ul默认是有边距的所以先将边距去掉IE78只要加上 ...

  7. Joinpoint继承体系-笔记

    Joinpoint继承层次图: 由上图可以知道的所有的接口的实现都在ReflectiveMethodInvocation这个类中.ConstructorInvocation接口只有一个方法,这个方法的 ...

  8. HBase学习之路 (十一)HBase的协过滤器

    协处理器—Coprocessor 1. 起源 Hbase 作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执 行求和.计数.排序等操作.比如,在旧版本的(<0.92)Hba ...

  9. Alpha冲刺(5/10)——追光的人

    1.队友信息 队员学号 队员博客 221600219 小墨 https://www.cnblogs.com/hengyumo/ 221600240 真·大能猫 https://www.cnblogs. ...

  10. cascade rcnn论文总结

    1.bouding box regression总结: rcnn使用l2-loss 首先明确l2-loss的计算规则: L∗=(f∗(P)−G∗)2,∗代表x,y,w,h    整个loss : L= ...