Oracle Database Management System


Oracle Database Management System


Arsitektur oracle

Instance adalah struktur proses dan memory yang menjalankan sistem database (DBMS, database management system). Tidak-tetap.

Database adalah sekumpulan file yang menyimpan data (yang terdiri atas datafile, controlfile, dan redo log file). Tetap.
Kebanyakan instalasi Oracle hanya terdiri dari satu "Instance" dan single "Database" .

System Global Area
terdiri dari beberapa struktur memory yang meliputi :

  • Shared pool Dipergunakan untuk menyimpan informasi seperti statement SQL yang baru saja dieksekusi dan data dari data dictionary yang baru saja dipergunakan.
  • Database buffer cache : Dipergunakan untuk menyimpan data yang baru saja dipergunakan.
  • Redo log buffer : Untuk meyimpan perubahan yang dibuat pada saat mengoperasikan database mnggunakan instance tersebut.
  • Java pool : Digunakan untuk menampung kode-kode program Java(*dari namanya udah keliatan :P).
  • Large pool : Digunakan untuk menampung I/O request dan sebagai penampung dari backup yang dilakukan recovery manager (RMAN).
  • Streams Pool : Digunakan untuk oracle streams, misalnya mengeluarkan pesan error, peringatan, pembersihan proses yang salah atau sudah tidak berguna lagi.


Background Proses

  • Database Writer (DBWR) Bertanggung jawab terhadap penulisan untuk melakukan perubahan data terhadap database.
  • Log Writer (LGWR) Merekam perubahan yang terjadi dan merekamnya dalam redo log buffer dalam database.
  • System Monitor (SMON) Memiliki fungsi utama sebagai pengecekan terhadap konsistensi maupun permulaan pembukaan database pada saat database dibuka. Instance recovery
  • Process Monitor (PMON) Bertugas menutup (membersihkan) segala macam resource jika salah satu dari processes mengalami kegagalan.
  • Checkpoint Process (CKPT) Bertanggung jawab untuk meng-update informasi status database jika terjadi perubahan pada buffer cache secara permanent tersimpan dalam database.


Physical storage yang ada dalam database 

- Data file
Dipergunakan untuk menyimpan  data-dictionary, obyek-obyek yang dimiliki user, serta before-images dari data yang dilakukan modifikasi oleh transaksi yang sedang berlangsung.

- Redo log file
Berisi rekaman perubahan yang dilakukan pada database untuk meyakinkan jika terjasi rekonstruksi terhadap data jika mengalami kasus kegagalan. Database memerlukan sekurang-kurangnya dua redo log file.

- Control file
Berisi informasi yang diperlukan untuk melakukan perawatan dan memriksa integritas database. Database memerlukan sekurang-kurangnya dua control file.

- Parameter File
File yang berisi parameter-parameter dari database.

- Backup File Berisi file-file hasil backupan dari datafile atau database.

- Archive log File Berisi perintah-perintah DDL dan DML setelah dari online redo log file waktu menjalankan switch.

Contoh soal

Sebutkan 2 memori utama oracle ?

SGA (System Global Area) 

memori yang dialokasikan ketika  instance startup
merupakan komponen dasar dari Oracle Instance.

PGA (Program Global Area).
memori yang dialokasikan ketika user proses yang melakukan koneksi database.
Dialikasikan saat server proses start up.

PGA terdiri dari data dan kontrol informasi Oracle server proses

Apakah yang kamu ktahui tentang instance ?

Instance adalah struktur proses dan memory yang menjalankan sistem database (DBMS, database management system).

Database adalah sekumpulan file yang menyimpan data (yang terdiri atas datafile, controlfile, dan redo log file).

Memory yang bertugas saat server oracle started ?

PGA


Di dalam shared pool terdapat dua cached, sebut dan jelaskan fungsi utamanya ?

Library Cached 

Menyimpan informasi tentang SQL dan PL / SQL yang paling baru digunakan

Data Dictionary Cache
Menyimpan file data dari tabel dan index sehingga pencarian akan suatu tabel akan lebih cepat

Sebutkan komponen memori yang bertugas memparsing perintah java ?

Java pool


Apakah tugas redo log buffer ?

Untuk meyimpan perubahan yang dibuat pada saat mengoperasikan database mnggunakan instance tersebut.


Sebut dan jelaskan 3 strukur proses yang ada pada oracle ?

user process

terjadi waktu menjalankan koneksi atau meminta SQL , saat di execute akan dikirim ke server proses

server process
dilakukan ketika melakukan koneksi eksekusi ke oracle instance

background process
Dimulai saat instance Oracle dimulai

Background proses yang bertugas menuliskan ke dalam database oracle ?

Database Writer (DBWR) Bertanggung jawab terhadap penulisan untuk melakukan perubahan data terhadap database.


Background proses yang bertugas recovery instance ?

SMON

Sebutkan minimal 4 komponen yang ada pada SGA ?


Shared pool
Dipergunakan untuk menyimpan informasi seperti statement SQL yang baru
saja dieksekusi dan data dari data dictionary yang baru saja dipergunakan.

Database buffer cache
Dipergunakan untuk menyimpan data yang baru saja dipergunakan.

Redo log buffer
Untuk meyimpan perubahan yang dibuat pada saat mengoperasikan database
mnggunakan instance tersebut.

Java pool
Digunakan untuk menampung kode-kode program Java(*dari namanya udah keliatan :P).

Large pool
Digunakan untuk menampung I/O request dan sebagai penampung dari backup yang dilakukan recovery manager (RMAN).

Streams Pool
Digunakan untuk oracle streams, misalnya mengeluarkan pesan error, peringatan, pembersihan proses yang salah atau sudah tidak berguna lagi.


Contoh soal 2 

Basic storage dalam oracle ada 2, sebut dan jelaskan ?

Tablespace
Logical,  yang hanya diketahui oleh Oracle File

Data Files
Physical, yang mungkin (biasanya) dilihat dari sistem operasi
Apakah dalam database oracle jika telah parsing statement pasti akan ditulis dalam database ?
Iya, karena setiap perubahan akan di simpan dalam memory SGA yaitu shared pool
Semua sql statement akan ditampung di dalam library cache , benar atau salah? Jelaskan jika benar ?
Benar, karena library cached berfungsi Menyimpan informasi tentang SQL dan PL / SQL yang paling baru digunakan.

Ada 2 tipe table space, sebut dan jelaskan ?

Tabelspace yang dibutuhkan oleh Oracle untuk operasi normal

Tablespace yang berisi data dan indeks yang mendukung aplikasi

Pada required tablespace terdapat 4 modul, sebut dan jelaskan?

Sistem - Berisi Kamus Data Oracle
Sysaux - Baru sampai 10g; mendukung pemantauan / penyetelan bersejarah
Temporary - Digunakan untuk sortasi data berbasis disk (pilih ... dari ... order by)
Undo - Digunakan untuk konsistensi transaksi saat Insert / Update / Delete statements. Berguna untuk menyimpan row yang diubah namun belum dicommit atau diroll back.

Apakah yang terjadi saat commit dilakukan pada sql statement ?

Commit digunakan untuk membuat data tidak dapat diubah kembali meskipun menggunakan perintah rollback.
Fungsi COMMIT untuk membuat seluruh perubahan data menjadi permanen.
Hal-hal yang mengikuti COMMIT: – Seluruh perubahan data ditulis ke database – Keadaan data sebelumnya secara permanen hilang – Seluruh user dapat melihat hasil dari transaksi – Penguncian terhadap baris-baris data yang diubah akan dibebaskan, baris-baris data tersebut sekaran tersedia kembali bagi user lain untuk melakukan perubahan data berikutnya. – Seluruh savepoints dihapus.

Modul tablespace apa sajakah yang bekerja pada saat perintah rollback saat sql statement ?

Undo - Digunakan untuk konsistensi transaksi saat Insert / Update / Delete statements. Berguna untuk menyimpan row yang diubah namun belum dicommit atau diroll back.

TABLESPACES
Hanya bisa satu database sekaligus
Terdiri dari satu atau lebih file data
Selanjutnya dibagi menjadi unit penyimpanan logis

2 Tipe Tablespaces :
Tabel yang dibutuhkan oleh Oracle untuk operasi normal
Tablespace yang berisi data dan indeks yang mendukung aplikasi

Required Table Spaces :
Sistem - Berisi Kamus Data Oracle
Sysaux - Baru sampai 10g; mendukung pemantauan / penyetelan bersejarah
Temporary - Digunakan untuk sortasi data berbasis disk (pilih ... dari ... order by)
Undo - Digunakan untuk konsistensi transaksi saat Insert / Update / Delete statements

DATA FILES
Bisa hanya milik satu tablespace dan satu database
Merupakan repositori untuk data objek skema

Connect to Oracle – What Happens First?

Apakah definisi dan privileges "User" di SGA "Dictionary Cache"?

Jika tidak, coba ambil dari tablespace "System"
Jika di sana, validasikan Pwd dan Hak akses untuk login
Izinkan koneksi jika semuanya benar; jika tidak menolak koneksi

Select” – What Happens First?

Apakah pernyataan ini di "Library Cache"?

Jika pernyataan di-cache maka baru-baru ini telah "diurai" dan "dieksekusi"
Jika tidak di-cache maka "parse" pernyataan tersebut
Jika di-cache maka lewati tahapan parsing dan jalankan statement
Select” – Parsing the Statement

Apakah "MyTab" ada?

Apakah pengguna memiliki Privs untuk memilih dari "MyTab"
Kolom apa yang ada di "MyTab"
Apa kolom pertama di "MyTab"
“Select” – Executing the Statement

Apakah data "MyTab" di SGA "Buffer Cache"?

Jika tidak, ambil data ke Buffer Cache
Urutkan data di "MyTab" pada kolom pertama
Jika bisa mengurutkan record di memori maka lakukanlah
Jika tidak bisa mengurutkan di memori maka gunakan tablespace "Temporary" sebagai area pementasan berbasis disk
Kembalikan record ke proses klien

I/U/D” – What Happens First?

Apakah pernyataan ini di "Library Cache"?

Jika pernyataan di-cache maka baru-baru ini telah "diurai" dan "dieksekusi"
Jika tidak di-cache maka "parse" pernyataan tersebut
Jika di-cache maka lewati tahapan parsing dan jalankan statement
I/U/D” – Executing the Statement
Validasi nilai yang akan dimasukkan
Jalankan pernyataan itu
Simpan versi DB dari catatan di tablespace "Undo" sampai Commit or Rollback
Catat perubahan dalam SGA "Redo Log Buffer"
Mengubah catatan di SGA "Buffer Cache"
DBWn menulis catatan yang diubah ke file data (s) sebagai bagian dari manajemen cache buffer


*Untuk download di pintukos, hindari menggunakan UCbrowser, karena bisa jadi link download bisa error.

Post a Comment

0 Comments