Grundidee von ASM ist die komfortable, sichere, flexible und

Werbung
$XWRPDWLF6WRUDJH0DQDJHPHQW$60
8ZH+HVVH3ULQFLSDO,QVWUXFWRU25$&/(8QLYHUVLW\
Grundidee von ASM ist die komfortable, sichere, flexible und performante
Verwaltung aller Datenbank-Dateien ohne zusätzliche Kosten.
Oder um es mit Tom Kyte (ORACLE) zu sagen: -XVWWKLQNRILWDVD'DWDEDVH
)LOHV\VWHP
Vor ASM war die optimale Konfiguration der Datenbank-Dateien alles andere als
trivial. Einen guten Einblick in die Problematik bietet das Whitepaper $XWRPDWLF
6WRUDJH0DQDJHPHQW±7KH1HZ%HVW3UDFWLFH von Steve Adams (IXORA) und
Richard Long (ORACLE) in dem Kapitel &XUUHQW%HVW3UDFWLFH.
Mit ASM ist hohe Performance (Juni 2005 TPC-H Weltrekord) bei gleichzeitig
einfacher Implementierung und Adminstration (komplett GUI-gestützt) möglich.
Einzelne Platten werden zu 'LVNJURXSV zusammengefaßt, auf die dann die
Datenbank-Dateien automatisch verstreut und (auf Wunsch) gespiegelt werden.
Diese 6SLHJHOXQJJHVFKLHKWDXI6WULSH%DVLV, nicht auf Platten-Basis. Anstelle einer
Spare-Disk kann daher Spare-Kapazität eingesetzt werden. Das hat den Vorteil, daß
alle Platten der Diskgroup zur I/O-Bandbreite aktiv beitragen.
bQGHUXQJHQLQGHU6WRUDJH.RQILJXUDWLRQ sind bei laufender Datenbank
möglich.Um z.B. die Speicherkapazität zu steigern, können neue Devices hinzugefügt
werden. Dann findet automatisch eine Neuverteilung (Rebalancing) der vorhandenen
Stripes über alle Devices statt. Dieses Rebalancing ist vom Umfang her proportional
zur hinzugefügten bzw. entfernten Kapazität. Es müssen also NICHT alle Stripes neu
verteilt werden.
$607HPSODWHV bestimmen, ob die Stripe-Größe einer Datei COARSE (1 MB) oder
FINE (128 KB) ist und ob eine Datei gespiegelt wird.
Damit kann auch erreicht werden, daß auf derselben Diskgroup bestimmte Dateien
(z.B. Online Logs und Controlfiles) gespiegelt werden und andere (z.B. Tempfiles)
nicht.
Die zur Verwaltung der Diskgroups nötige $60,QVWDQFH kann, ebenso wie die
Diskgroups selbst, auf einfache Weise durch den Database Configuration Assistant
erzeugt werden, bevor er die Datenbank erstellt.
Die Stärken des Zusammenspiels von 'DWDEDVH$UHD5HFRYHU\$UHDXQG$60
zeigen sich am deutlichsten, wenn bereits beim Anlegen der Datenbank mit
Diskgroups gearbeitet wird. init.ora vor dem CREATE DATABASE :
DB_CREATE_FILE_DEST=’+DGROUPA’ #Database Area
DB_RECOVERY_FILE_DEST=’+DGROUPB’ #Recovery Area
In der Recovery Area soll alles zu finden sein, was im Falle einer Beschädigung von
Dateien in der Database Area für das Recovery benötigt wird. In der Recovery Area
liegen also idealerweise
x
x
x
x
Spiegel der Online Logfiles,
Spiegel der Controlfiles,
Archivelogs,
Backups (Datafiles, Controlfile, Spfile)
Ohne weiteren Konfigurations-Aufwand ist das bei obiger Vorgehensweise
automatisch der Fall.
Die schon aus 9i bekannte OMF-Methode arbeitet perfekt mit ASM zusammen und
sorgt für eine Vereinfachung bei Anweisungen wie z.B.
CREATE DATABASE...
CREATE TABLESPACE...
ALTER TABLESPACE ... ADD DATAFILE...
ALTER DATABASE ADD LOGIFLE...
Wird zusätzlich das 10g R1 Feature %,*),/(7$%/(63$&(6 eingesetzt, muß der
DBA nie mehr einen (ASM-)Datendateinamen angeben:
SQL> create bigfile tablespace biggo;
SQL> alter tablespace biggo resize 10g;
RMAN> backup tablespace biggo;
RMAN> restore tablespace biggo;
Neu in 10g R2 ist $60&0', das einen UNIX-artigen Umgang mit ASM-Dateien
ermöglicht:
pwd, cd, ls, rm, mkdir, du
Diese Befehle funktionieren in der ASMCMD-Shell analog zu den bekannten UNIXBefehlen. Damit sollen wohl auch Hemmschwellen der DBAs („Ich kann die Dateien
ja gar nicht mehr im Filesystem sehen!?“) abgebaut werden.
Siehe auch8WLOLWLHV'RNXPHQWDWLRQ.DSLWHO
In 10g R2 ist das Package '%06B),/(B75$16)(5 nun auch verwendbar, um
Dateien von einer Diskgroup aufs Filesystem zu kopieren:
connect system/oracle@kw33
create
create
select
select
or replace directory dat_dir as ’+DGROUPA/kw33/datafile’;
or replace directory home_dir as ’/home/oracle/’;
directory_name from dba_directories;
name from v$datafile;
alter tablespace users read only;
host expdp transport_tablespaces=users directory=HOME_DIR
begin
dbms_file_transfer.copy_file
(’DAT_DIR’, users.263.566386159’,’HOME_DIR’,’users01.dbf’);
end;
/
alter tablespace users read write;
Hat man XML DB installiert, kann man in 10g R2 die ASM Dateien noch einfacher
über IWS oder :HE'$9 zugreifen, wie im 2UDFOH;0/'%'HYHORSHU¶V*XLGH
.DSLWHO beschrieben.
Abschließend ein Zitat aus $XWRPDWLF6WRUDJH0DQDJHPHQW7KH1HZ%HVW
3UDFWLFH
%HFDXVH$60LVKLJKO\DXWRPDWHGDQGGHOLYHUVH[FHOOHQWSHUIRUPDQFHEHWWHUWKDQ
PRVWFXVWRPHUVKDYHEHHQDEOHWRDFKLHYHSUHYLRXVO\XVLQJHVWDEOLVKHGEHVWSUDFWLFHV
XVLQJ$60LVWKHQHZEHVWSUDFWLFHIRUDOOGDWDEDVHVXQGHU2UDFOHJ
/LQNV
In der Online-Doku steht (wie immer) fast alles
http://www.oracle.com/pls/db102/portal.portal_db?selected=1
ASM Homepage im Oracle Technologie Network
http://www.oracle.com/technology/products/database/asm/index.html
ASM Internal Homepage
http://asm.us.oracle.com/
TPC-H Weltrekord
http://biz.yahoo.com/prnews/050621/sftu040.html?.v=15
Herunterladen