Oracle ASM(Automatic Storage Management)的High冗余模式是一种提供高度数据保护的策略,它通过创建多个数据副本来确保数据的可用性和安全性。
以下是关于Oracle ASM High冗余的详细解释:
一、High冗余的特点
1.数据冗余度
在High冗余模式下,Oracle ASM会为每个数据块创建三份镜像,这意味着即使有两份数据损坏,仍然有一份可用的数据副本,从而保证了数据的持续可用性。
2.故障组要求
为了支持High冗余,至少需要三个故障组(failure group)。故障组是Oracle ASM中将磁盘逻辑上分组的一种方式,每个故障组内的磁盘在物理上应该是独立的,以减少单点故障的风险。
3.磁盘空间利用率
由于High冗余需要创建三份数据副本,因此磁盘空间的有效利用率是所有磁盘设备大小之和的1/3。这意味着相对于其他冗余级别,High冗余会牺牲更多的磁盘空间用于数据保护。
二、适用场景
High冗余模式适用于对数据安全性要求极高的场景,如金融行业、关键业务系统等。这些系统对数据的连续性和可用性有着极高的要求,即使发生硬件故障或磁盘损坏,也必须保证数据的完整性和可恢复性。
三、空间计算
在High冗余模式下,usable_file_mb(即磁盘组可用于新文件分配的剩余空间,以MB为单位)的计算大致可以基于以下公式(注意,这是一个简化的表示,实际算法可能更复杂,并且可能因Oracle版本而异):
Usable_file_mb = (Free_MB - Req_mir_free_mb) / 3
但需要注意的是,这里的/ 3是基于High冗余模式下通常的三份数据副本假设。然而,Oracle的ASM在计算时可能会考虑更多的因素,如故障组的数量、大小以及具体的冗余策略。
四、相关指标解释
1.Free_MB
表示磁盘组中当前未被分配或未被使用的空间量(以MB为单位)。
2.Req_mir_free_mb
在High冗余模式下,这个值代表了为了维持磁盘组在高冗余状态下的冗余度而必须保留的空闲空间量。
其计算通常基于故障组的大小和数量,以及Oracle内部对冗余策略的考虑。
在High冗余下,由于需要存储三份数据副本,Req_mir_free_mb的计算可能会更加复杂,并且可能会预留更多的空间以应对可能的故障情况。
3.故障组(Failgroup)
故障组是Oracle ASM用于管理冗余和故障恢复的一个逻辑单元。
在High冗余模式下,每个数据块都将被存储在至少三个不同的故障组中,以确保数据的可靠性和可恢复性。
故障组的大小和数量将直接影响Req_mir_free_mb的计算。