Kamis, 09 Desember 2010

Arsitektur Database Oracle



Secara umum Arsitektur database Oracle terdiri atas memory, proses, dan file-file. Komponen-komponen tersebut dikelompokkan sebagai berikut:

1. Instance
v System Global Area (SGA) merupakan bagian dari memory Oracle yang di-share bersama user. SGA terdiri atas:
· Database Buffer Cache
Berisi the most recently used datablock. Artinya Database Buffer Cache merupakan tempat bagi datablock yang sering dipanggil oleh instruksi SQL.
· Redolog Buffer Cache
Berisi data perubahan dari database. Perubahan sekecil apapun dicatat di Redolog Buffer Cache untuk selanjutnya dicatatkan ke file Online Redo Log.
· Java Pool
· Large Pool
· Shared Pool
* Data Dictionary Cache
Kumpulan objek database seperti table, view, synonym yang menyimpan catalog data dari database.
Informasi yang disimpan dalam Data Dictionary adalah:
o Informasi struktur table
o Informasi hak atau priveledge user
o Infromasi user yang sedang melakukan koneksi ke database
o Informasi ukuran storage table
o Informasi nama dan letak datafile
o Informasi nama dan letak controlfile
* Library Cache
Berisi the most recently used SQL statement, terdiri dari:
o Statement
o Text parsed code (text yang telah diperiksa keabsahannya sebagai perintah)
o Execution plan (rangkaian rencana Oracle untuk mengeksekusi perintah)
v Background process terdiri atas
· DBWR / DBWn (Database Writer)
* Menulis semua data yang telah berubah (dirty image) dari database buffer cache ke datafile
* Menyimpan the most recently used datablock dengan algoritma LRU (Least Recently Used).
* Menentukan apakah penulisan ditunda atau tidak guna optimasi I/O
· LGWR:
* Hanya ada 1 LGWR di 1 instance
* Melakukan penulisan isi redolog buffer ke file online redolog ketika terjadi:
o Commit
o Redolog buffer sudah 1/3 penuh
o DBWR selesai membersihkan database buffer block selama checkpoint
o Time out LGWR tercapai
· SMON (System Monitor)
* Melakukan automatic instance recovery.
* Melakukan merger contiguous area dari free space yang ada di datafile.
* Mengklaim kembali space temporary segment yang sudah tidak digunakan lagi.
· PMON:
* Membersihkan user session yang terhenti secara abnormal
* Me-roolback semua transaksi yang belum di commit
* Melepaskan lock yang dipegang oleh terminated process
* Me-restart failed shared server dan dispatcher process
* Mengidentifikasi deadlocks
· CKPT
* Proses checkpoint memberitahu DBWR untuk menulis dirty buffer ke disk dan kemudian mengupdate header dari datafile dan header control file dengan nilai SCN baru
* Checkpoint terjadi setiap terjadi log switch
* Untuk memaksa checkpoint :
o ALTER SYSTEM SWITCH LOGFILE
o ALTER SYSTEM CHECKPOINT
2. Database
v Datafile
· Tempat objek database (table, index dsb) disimpan
· Merupakan binary file (tidak dapat dibaca oleh text editor)
· Wajib di-backup
v Control file
· Suatu binary file yang menggambarkan struktur database
· Diperlukan untuk mount, open dan akses database
· Direkomendasikan terdapat minimal 2 control file yang disimpan di disk yang terpisah. (Konfigurasi Multiplex).
· Info sinkronisasi yang diperlukan bagi recovery disimpan di control file.
· Wajib di-backup
v Redo log file
· Berisi informasi perubahan database atau redo entry dari redolog buffer.
· Bersisi data perubahan yang dicommit maupun yang tidak di-commit.
· Minimal ada 2 redo group. Didalam 1 group minimal ada 1 file anggota atau member.
· Hubungan antara redolog buffer, online redolog file, dan archived redolog file.
* Redolog buffer adalah penampung informasi perubahan versi sementara.
* Online redolog file adalah file dokumentasi perubahan versi semi sementara.
* Archived redolog file adalah file dokumentasi perubahan versi permanen.
3. Komponen lain
v Process:
· Server Process adalah proses yang melayani User-Process. Proses server bekerja atas nama User proses.
· User process adalah proses yang dilakukan oleh program aplikasi akibat dari inputan yang diberikan user.
v Memory:
· Program Global Area (PGA)
PGA merupakan area memory Oracle yang tidak di-share . Oracle mengenalinya sebagai nonshared per process memory area. Memori ini digunakan oleh background process dan juga oleh Server Process. Bila ada User Process maka akan dialokasikan sejumlah memori untuk Server Process, setelah selesai akan di-dealokasikan kembali.
Pada mode standard dimana digunakan mode Dedicated Server, semua data mengenai session yang sedang connect ke database disimpan di PGA. Kecuali jika menggunakan mode MTS (Multi Threaded Server), info session disimpan di SGA.
v File:
· Archived log
· Password file.
* Menyimpan password untuk user dengan admin priviledge digunakan jika menggunakan metode otentikasi via database, bukan otentikasi via OS.
* Biasanya bernama ORAPWORA contoh ORAPWMINE.ORA. Untuk mengetahui nama user yang ada di file tersebut, gunakan view bernama V$PWFILE_USERS
· Parameter file
* Digunakan untuk mengatur ukuran SGA dan memberitahukan letak Control-File saat startup
* Berisi semua parameter inisiasi database, biasanya bernama INIT ORA contoh INITORCLORA
* Untuk melihat isi dari parameter file, buka file INITORCLORA di directory DATABASE di dalam ORACLE_HOME.

2 komentar:

Hasmawati mengatakan...

Tugas Database Administrator..

muezza mengatakan...

Nice post

Posting Komentar