1. 程式人生 > >【翻譯自mos文章】使用asm來部署 超大數據庫(10TB到PB 範圍)--針對oracle 10G

【翻譯自mos文章】使用asm來部署 超大數據庫(10TB到PB 範圍)--針對oracle 10G

2個 數值 acl 5.1 transport after 例如 clas rain


使用asm來部署 超大數據庫(10TB到PB 範圍)

參考原文:
Deployment of very large databases (10TB to PB range) with Automatic Storage Management (ASM) (Doc ID 368055.1)


範圍:
本文適用於在全部平臺上的asm配置。包含使用rac 和單實例 環境。
本文適用於超大數據庫的創建。而且該數據庫會增長到超過10TB級別。


挑戰:
asm 元數據存儲

解決方式:

au(分配單元) 是asm磁盤組中的主要的分配單位。默認情況下。asm au的大小被設置為1MB

asm data extents 裸設備,該裸設備來存放asm file的內容。
在oracle database 10g裏邊,每個data extent 是一個單獨的au(分配單元)
因為這個extent 和au 的 1對1的映射(map)關系。在一個超大的數據庫中。一個asm file extent map 能夠增長到GB。在這個情況下。內存使用和打開文件的性能上,效率是及其低下的。

asm 提供了2個隱含參數,這兩個參數同意你創建au大小為16MB 和 fine grain striping 大小為1MB(之前為128KB) 的 asm 磁盤組
這降低extent map size 到原來的1/16. au 參數僅僅能用在磁盤組 建立的時候。當一個磁盤組被建立後,你不能改變這個磁盤組的au的大小

為了改變au size(也就是data extent size),你必須reset 以下的asm 隱含參數:從1MB改為16MB,fine grain stripe size 改為1MB
asm實例必須被關閉。_asm_ausize and _asm_stripesize 必須在asm實例的init.ora參數文件裏被重置(reset),然後asm實例被重新啟動,以繼承該參數的新值。
o _asm_ausize=16777216
o _asm_stripesize=1048576
--->註意:以上值的單位為Byte

你必須改動asm file template 。為全部的file types 設置 stripe type 為‘FINE’,以使用1MB的striping。
這必須在asm diskgoup 被創建完之後做。


為了讓這兩個參數值生效,asm實例必須被重新啟動。

當設置了這個兩個隱含參數並重新啟動了asm 實例之後,不論什麽被創建的asm 磁盤組將會使用新的au size 和FINE stripe size

為了在創建asm 磁盤組時。使用正常的1MB au size 和 128K FINE stripe size。這兩個隱含參數應該被移除而且asm 須要被重新啟動。


樣例:
以下的樣例建立 了一個au size(即:data extents size ) 為16MB的asm 磁盤組,而且對全部的datafile 來說,FINE striping size 為1MB

1. 關閉 asm 實例

2. 在asm 的init.ora文件裏加入例如以下參數:
_asm_ausize=16777216
_asm_stripesize=1048576
3.重新啟動asm 實例。

4.建立一個磁盤組:
CREATE DISKGROUP diskgroup_name disk ‘/devices/diska1‘,‘/devices/diska2‘;

5. 將all asm file 模板 改為 FINE grained:
o ALTER DISKGROUP diskgroup_name ALTER TEMPLATE <tmpl> ATTRIBUTES (FINE);
o Repeat this command for all ASM file types. Attributes types are listed
below:
o CONTROLFILE, DATAFILE, ONLINELOG, ARCHIVELOG, TEMPFILE, BACKUPSET,
PARAMETERFILE, DATAGUARDCONFIG, FLASHBACK, CHANGETRACKING, DUMPSET,
XTRANSPORT, AUTOBACKUP


16MB的 ausize 和 1MB的FINE grain striping 能有效的提供 1MB的 data striping 。同一時候。減少了asm file extent的過載。


這個配置 能在打開 asm file時更快,而且更有效的支持10TB 到PB 範圍內的asm database

註意:
Apply the fix for Bug 5100163 in 10.2.0.4

This patch should be applied if you have created ASM Diskgroups with the AU size greater than 1MB and have fewer than 3585 user files.
The following command must be ran on each Diskgroup after applying the patch:
ALTER DISKGROUP <DG_NAME> CHECK ALL REPAIR


【翻譯自mos文章】使用asm來部署 超大數據庫(10TB到PB 範圍)--針對oracle 10G