- 论坛徽章:
- 0
|
本帖最后由 锅铁做 于 2014-05-14 18:51 编辑
回复 3# ahocat
一个通用的原理:
其实您跟任何类型的文件系统,写入一部分数据,然后删除,在文件系统显示数据已经删除了,并且能看到释放的空间,其实底层并未删除,删除仅仅是一个“文件头”标记的过程,或者想想,为什么一笔数据经过格式化,还能够通过一些软件可以恢复呢?
这就解释了为什么文件系统空间释放了,而底层的存储却没有释放原因。
等到再次写入数据时候,不会再向存储阵列索要空间,会覆盖之前到标记文件头的空间.
(这部分内容有更权威,严谨的解释)
刚才所指的—底层,就是目前的存储系统-NETAPP阵列。
空间回收:
如果您这600GB,来自一个RAID-LUN,其实涉及不到空间回收,反正无论如何用,这600GB已然映射给了一个应用主机,空间也不会蒸发。
但是,如果来自一个RAID Group,或者一个磁盘池那就有点小麻烦。例如,这个RAID Group或者磁盘池就600GB,而现在没有空间了,即使我把应用主机数据都删掉还是不释放空间,又加入了一个新的应用主机,但已没有空间在划分LUN给新的主机,对吧?所以,用户投入的资产就没有发最大的效益。
所以厂商就提倡了空间回收,这个过程需要2个操作。第一个,在应用主机做“至零”操作,标记这些已经删除的数据空间为“零”,2014年的今天,各操作系统均支持,Windows Server操作是需要借助一个工具,我呈在附件中了。
第二个操作,需要存储阵列支持,我经验,只有中,高端存储才有这指标。是一个按钮,这个按钮就是为了回收,操作系统“至零的所有空间”,拿回到自己的RAID Group.
如果我讲的不明白,之前老外给我培训时讲了一个有趣的故事:一个开发商,像政府要了10块地皮盖楼房,现在,政府手里没有地皮了,都在开发商手里,即使开发商把10块地皮的楼盘都推倒,地皮仍然在开发商手里,可以选择继续盖新楼。
唯一的办法,开发商把楼推倒,然后亲自告诉政府,我这有6块地皮不要了,请收走吧,这时候政府开始回收6块地皮,准备给下一个开发商。:wink:
PS<如果使用带有精简配置技术的存储,而存储又无具备这个技术,这将是一个很大的败笔。我印象中,目前Widows Server2012能够支持实时回收了,但仍然需要存储支持。
SDelete.zip
(80.8 KB, 下载次数: 248)
|
|