ASM 翻譯系列第三十四彈:ASM磁碟組重要屬性介紹

沃趣科技發表於2017-02-28

原作者:Bane Radulovic

譯者:    邱大龍

稽核:    魏興華

DBGeeK社群聯合出品

原文連結:http://asmsupportguy.blogspot.sg/2014/05/disk-group-attributes.html

ASM Disk Group Attributes

磁碟組的屬性是ASM 11.1版本引入的,是磁碟組層面而非ASM例項層面的。磁碟組的屬性有一些只能在建立磁碟組時指定,有一些只能在建立之後指定,還有一些可以在任何時候指定。

本篇內容是對本系列文章-【ASM Attributes Directory】的展開。

ACCESS_CONTROL.ENABLED

ACCESS_CONTROL.ENABLED屬性指定了一個磁碟組的ASM File Access Control是否啟用,引數的值可以設定為true或者false(預設)。

如果這個屬性設定為true,ASM檔案的訪問許可權就會受到控制。如果設定為false,任何使用者都可以訪問磁碟組上的任意檔案。該屬性隻影響檔案的訪問,不影響其他操作。

這個屬性可以用alter disk group語法來修改。

ACCESS_CONTROL.UMASK

ACCESS_CONTROL.UMASK屬性與通常os層面的umask類似。用來設定ASM檔案的屬主,屬組和其他使用者的許可權。這個特性對磁碟組中所有檔案生效。

屬性的值是3位數的組合,每一位可以是0,2,6數字中的一個。預設情況下為066.

某一位的值設定為0表示不排除任何許可權;設定為2,表示排除掉寫許可權;設定為6表示把讀寫許可權都排除。

在設定該屬性之前,要先設定ACCESS_CONTROL.ENABLED為true。

這個屬性只能使用alter diskgroup 語法設定。

AU_SIZE

AU_SIZE屬性控制了磁碟組au的大小,只能在建立磁碟組時指定。值得一提的是每個磁碟組可以有不同的au_size。

CELL.SMART_SCAN_CAPABLE [Exadata]

在Exadata環境下,使用來自儲存節點的磁碟建立的磁碟組可以設定CELL.SMART_SCAN_CAPABLE屬性。對於磁碟組中的物件,這個屬性可以開啟smart scan功能。

COMPATIBLE.ASM

COMPATIBLE.ASM屬性指定了可以使用磁碟組的ASM例項的最低軟體版本。

這個屬性也會影響ASM後設資料結構的格式。

當使用create diskgroup語法,asmcmd mkdg命令和EM中的create disk group頁面時,COMPATIBLE.ASM預設為10.1。在ASM版本11gR2中,當使用asmca建立磁碟組時,預設為11.2,在版本12.1中,預設為12.1.

COMPATIBLE.RDBMS

COMPATIBLE.RDBMS屬性指定了可以使用磁碟組的db例項的最小COMPATIBLE引數值。

在修改該屬性的值之後,要確保所有正在訪問磁碟組的db例項COMPATIBLE引數大於等於這個值。

COMPATIBLE.ADVM

COMPATIBLE.ADVM屬性指定了磁碟組是否可以包含ASM卷,其值要不小於11.2.

要設定該屬性,COMPATIBLE.ASM必須在11.2(含)以上,環境中需要載入ADVM卷驅動。預設情況下,該屬性的值為空。

CONTENT.CHECK [12c]

CONTENT.CHECK屬性的作用是控制磁碟組在rebalance時,是否進行內容校驗。該屬性的值可以設定為true或者false。

內容校驗包括使用者資料的HARD(Hardware Assisted Resilient Data)校驗,檔案目錄中檔案型別和檔案目錄資訊的校驗,以及映象內容的對比。

該屬性設定為true以後,將啟用所有rebalance操作的邏輯校驗。內容校驗也被稱為磁碟清理特性。

CONTENT.TYPE [11.2.0.3, Exadata]

CONTENT.TYPE屬性將磁碟組指定為幾種型別:DATA, RECOVERY或者SYSTEM。它還決定了到最近的partner磁碟或者failgroup的距離。預設值是DATA,同時指定了距離為1;值為RECOVERY則指定了距離為3;值為SYSTEM指定了距離為5.

距離為1的意思是ASM認為所有的磁碟都具有partner關係。

距離為3的意思是每第三個磁碟具有partner關係。距離為5的意思是每第五個磁碟具有partner關係。

該屬性可以在建立磁碟組時指定,也可以透過alter diskgroup語法指定。如果用alter diskgroup語法修改 ,新配置將在下一次顯式地指定了rebalance之後生效。

該屬性只在normal或者high冗餘的磁碟組中可用。並且COMPATIBLE.ASM要設定為11.2.0.3及以上才能啟用該屬性。

DISK_REPAIR_TIME

DISK_REPAIR_TIME的值指定了ASM保持磁碟offline狀態的時間,超過這個時間之後,將該盤drop。和fast mirror resync特性一樣,COMPATIBLE.ASM屬性要設定為11.1或者更高。 該屬性只能使用alter diskgroup語法修改。

FAILGROUP_REPAIR_TIME [12c]

FAILGROUP_REPAIR_TIME屬性指定了磁碟組中failgroup的修復時間。當ASM判定一整個failgroup發生故障時,這個引數就會啟用。預設值為24小時。如果在alter diskgroup offline disk語句中加入drop after子句,指定的repair time會覆蓋FAILGROUP_REPAIR_TIME。

這個屬性只能透過alter fiskgroup設定,並且只對normal和high冗餘的磁碟組可用。

IDP.BOUNDARY and IDP.TYPE [Exadata]

這兩個屬性用來配置Exadata儲存,和Intelligent Data Placement 特性相關。

PHYS_META_REPLICATED [12c]

PHYS_META_REPLICATED屬性用來跟蹤磁碟組後設資料的複製狀態。當磁碟組的ASM相容性設定為12.1或者更高時,每個磁碟的物理後設資料會做複製。這些後設資料包括此盤頭,FST表和AT表。

後設資料的複製是線上非同步做的。如果磁碟組中每個磁碟的後設資料都做了複製,那麼該屬性的值就會被ASM設定為true.

該屬性只有在COMPATIBLE.ASM設定為12.1或者更高的磁碟組中才可以定義。使用者無法設定或者修改該屬性的值,只是用來提供後設資料複製狀態的資訊,要麼為true,要麼為false.

SECTOR_SIZE

SECTOR_SIZE屬性指定了磁碟組中磁碟的扇區大小,只能在建立磁碟組時指定。

SECTOR_SIZE可以設定為512,4096或者4k(如果磁碟支援這些值)。預設值依平臺而定。如果要修改該屬性的值,需要把COMPATIBLE.ASM和COMPATIBLE.RDBMS設定為11.2或者更高。

注意:ACFS不支援扇區為4KB的裝置。

STORAGE.TYPE

STORAGE.TYPE屬性指定了磁碟組中磁碟的型別。屬性的值可以是EXADATA,PILLAR,ZFSAS和OTHER。如果設定為 EXADATA|PILLAR|ZFSAS,那麼磁碟組中所有的磁碟型別必須和設定的吻合。如果設定為OTHER,那麼磁碟組中可以加入任意型別的磁碟。

如果屬性值設定為PILLAR或者ZFSAS,那麼對於磁碟組中的物件可以啟用HCC(Hybrid Columnar Compression)功能。Exadata本身已經支援HCC。

注意:ZFS型別的儲存必須是透過dNFS(Direct NFS)提供;Pillar Axion型別的儲存必須是透過SCSI或者光纖通道提供。

要設定STORAGE.TYPE屬性,COMPATIBLE.ASM和COMPATIBLE.RDBMS屬性都要設定為11.2.0.3或者更高。

如果要支援ZFS儲存,COMPATIBLE.ASM和COMPATIBLE.RDBMS屬性要設定為11.2.0.4或者更高。

STORAGE.TYPE屬性可以在建立磁碟組時設定,也可以透過alter diskgroup語法修改。當有客戶端連線到磁碟組時,屬性是無法修改的。比如說,當磁碟組上有ADVM卷啟用時,無法修改該磁碟組的STORAGE.TYPE屬性。

在修改該屬性之前,無法在V$ASM_ATTRIBUTE檢視或者透過ASMCMD lsattr命令看到它。

THIN_PROVISIONED [12c]

THIN_PROVISIONED屬性值用來控制在磁碟組reblance結束後,是否丟棄未使用的儲存空間。

支援thin provisioning的儲存產品可以重用丟棄的儲存空間,這樣可以有效提升物理儲存的利用率。

APPLIANCE.MODE [11.2.0.4, Exadata]

APPLIANCE.MODE屬性可以在磁碟組drop一塊或多塊ASM磁碟時,縮短磁碟rebalance的完成時間。這也就意味著在有(磁碟)故障發生後,資料冗餘可以更快的恢復。在Exadata中建立磁碟組可以自動開啟該屬性。已經建立的磁碟組必須使用ALTER DISKGROUP語法來設定該屬性。這個特性也被稱為fixed partnering。

只有滿足以下條件的磁碟組才能啟用該屬性:

  • COMPATIBLE.ASM設定為11.2.0.4或者更高

  • CELL.SMART_SCAN_CAPABLE屬性設定為true

  • 磁碟組中的磁碟是同一型別,比如都是普通硬碟或者都是快閃記憶體盤

  • 磁碟組中的磁碟大小相同

  • 磁碟組中所有failgroup有相同的磁碟數量

  • 磁碟組中沒有磁碟是offline狀態

  • 最低軟體版本要求: Oracle Exadata Storage Server Software release 11.2.3.3; Oracle Database 11g Release 2 (11.2) release 11.2.0.4 注意:在Oracle 12.1.0.1中該特性不可用。

Hidden disk group attributes

不是所有的磁碟組屬性都在官方文件中有記錄,下面列舉一些比較有意思的屬性。

_REBALANCE_COMPACT

_REBALANCE_COMPACT屬性和rebalance過程中的compact階段有關。屬性值可以為true(預設)或者false。設定為false則可以禁止磁碟組rebalance過程中做compact。

_EXTENT_COUNTS

_EXTENT_COUNTS屬性和可變區大小特性有關,它決定了區大小在何時會增加。

屬性值設定為“20000 20000 214748367”,意指前20000個區的大小為1個AU,接下來20000個區大小由_EXTENT_SIZES屬性的第二個值決定,剩下的區大小由_EXTENT_SIZES屬性的第三個值決定。

_EXTENT_SIZES

_EXTENT_SIZES屬性也和可變區大小特性有關,指定了區大小的增幅 -- 以AU為單位。

在ASM版本11.1,該屬性值為1 8 64,在11.2及更高版本中,屬性值為1 4 16。

V$ASM_ATTRIBUTE view and ASMCMD lsattr command

磁碟組的屬性可以透過V$ASM_ATTRIBUTE檢視或者ASMCMD lsattr命令檢視。

下面是檢視磁碟組PLAY的屬性的一個方法:

$ asmcmd lsattr -G PLAY –l

Posted by Bane Radulovic

Name Value

access_control.enabled FALSE

access_control.umask 066

au_size 4194304

cell.smart_scan_capable FALSE

compatible.asm 11.2.0.0.0

compatible.rdbms 11.2.0.0.0

disk_repair_time 3.6h

sector_size 512

$

可以透過SQL的ALTER DISKGROUP SET ATTRIBUTE語法,ASMCMD setattr命令和ASMCA來修改磁碟組屬性值。下面是使用ASMCMD setattr修改PLAY磁碟組的DISK_REPAIR_TIME屬性值的例子:

$ asmcmd setattr -G PLAY disk_repair_time '4.5 H'

Check the new value:

$ asmcmd lsattr -G PLAY -l disk_repair_time

Name Value

disk_repair_time 4.5 H

$

Conclusion

ASM 11.1推出的磁碟組屬性,可以用來最佳化磁碟組的使用。有些屬性值是專門針對Exadata,還有一些只在特定版本可用。(前文都有標註)

大部分屬性在官方文件中都有記錄,並且可以透過V$ASM_ATTRIBUTE檢視檢視。有一些沒有官方文件記錄的屬性前面也有所介紹,這些屬性值除非有Orcle Support,否則不要修改。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28218939/viewspace-2134409/,如需轉載,請註明出處,否則將追究法律責任。

相關文章