Rabu, 24 Juli 2019

STRUKTUR RECOVERY DBMS ORACLE

Struktur Database Oracle
Secara garis besar, database oracle memiliki tiga buah struktur utama yaitu memory structure, process structure, dan strorage structure. Oracle Instance menggunakan memory dan process structure untuk dapat berjalan sedangkan oracle database menggunakan storage structure untuk dapat menyimpan data file maupun control file di dalam database tersebut. Tentu ketiga struktur utama ini sangat penting karena tanpa adanya salah satu komponen saja, maka oracle instance tidak dapat mengakses oracle database atau sebaliknya oracle database tidak dapat diakses oleh oracle instance.
Oracle Database dibangun menggunakan tiga struktur komponen, yaitu :
•         Struktur Memori
•         Struktur Porses
•         Struktur File(storage/penyimpanan)
Memory Stucture
Di dalam memory structure terdapat dua buah komponen yaitu :
A. System Global Area (SGA)
SGA merupakan shared memory yang dapat digunakan oleh seluruh server process dan background process. Di dalamnya tersimpan informasi-informasi yang berupa data file dan control file dari instance.
Di dalam SGA terdapat struktur data sebagai berikut :
-          Database Buffer Cache : berisi cache blok data yang berisi hasil pengembalian dari proses query database.
-          Redo log buffer : menyimpan redo information yang digunakan untuk instance recovery. Informasi tersebut akan disimpan hingga ditulis ke dalam physical redo log file di dalam storage disk.
-          Shared Pool : menyimpan berbagai macam konstruksi / informasi yang dapat dishare di antara user database.
-          Large Pool : merupakan area optional yang dibutuhkan jika ada proses-proses yang memakan memory cukup besar seperti backup and recovery dan proses server I/O.
-          Java Pool : digunakan oleh java code atau data yang menggunakan Java Virtual Machine (JVM).
-          Stream Pool : Digunakan oleh Oracle Stream untuk proses streaming.

            B. Process Global Area (PGA)
Berbeda dengan SGA, PGA lebih spesifik hanya digunakan secara khusus oleh masing-masing server dan background process. Minimal ada satu PGA yang dimiliki oleh tiap server process. Setiap PGA menyimpan data dan control information dari masing-masing proses yang menyediakan layanan dari tiap request oracle client.
-          stack-space: memori yang melakukan variabel session, arrays, dsb.
-          session-information: instance menyimpan informasi session di PGA. (Kecuali multithreaded server, informasi session disimpan di SGA.)
-          private SQL-area: area PGA yang menyimpan informasi seperti bind-variables dan runtime-buffers.
-          sorting area: area PGA yang menyimpan informasi mengenai sort, hash-joins, dsb.
Struktur Penyimpanan (Storage Structures)
Terdapat 2 tipe struktur penyimpanan pada oracle database, yaitu :
- Logical Storage
- Physical Storage
a. Logical Structure
Struktur Logical Storage ini memungkinkan Oracle Database untuk memiliki kontrolfine-grained terhadap penggunaan disk space. Struktur Logical Storage dapat dilihat pada gambar di bawah ini.
Logical Storage terbagi menjadi beberapa bagian, yaitu tablespace, segment, extent dandata
block.
-          Data Blocks
Pada tingkat terbaik dari granularity, data dari Oracle Database disimpan dalam data blocks. Satu data blocks berukuran sesuai dengan database fisik yang terdapat padaharddisk. Standar ukuran data block ditentukan oleh parameter inisialisasi DB_BLOCK_SIZE. Selain itu Anda dapat menentukan hingga empat ukuran blocklainnya. Database menggunakan dan mengalokasikan ruang bebas database di data blocks milik Oracle Database.
-          Extent
Tingkat berikutnya dari logical database space adalah extent. Extent adalah sejumlah tertentu dari data block yang berhubungan, diperoleh alokasi tunggal, yang digunakan untuk menyimpan jenis informasi khusus
-          Segment
Di atas extent, level selanjutnya dari logical database storage adalah segment. Segmentadalah gabungan dari extent yang dialokasikan untuk tabel, index, rollback segment, atau untuk
sementara digunakan oleh session, transaction, atau SQL parser. Dalam kaitannya dengan physical structure, semua extent milik salah satu segment berada di tablespaceyang sama, tetapi mungkin berada dalam file data yang berbeda. Ketika extent dari sebuah segment terisi penuh, Oracle Database secara dinamis mengalokasikan extent lain untuk segment tersebut. Karena extent dialokasikan sesuai kebutuhan, extent dari sebuahsegment mungkin berhubungan atau tidak dalam harddisk.
-          Tablespace
Sebuah database dibagi menjadi unit penyimpanan logis yang disebut tablespace, merupakan gabungan dari data block, extent, dan segment yang berhubungan. Misalnya,tablespace umumnya dikelompokkan bersama semua objek aplikasi untuk menyederhanakn beberapa operasi administrasi. Setiap database secara logis dibagi menjadi dua(2) atau lebih
tablespace. Satu atau banyak datafile secara eksplisit dibuat untuk setiap tablespace untuk menyimpan data dari semua logical structure dalam tablespace secara fisik. Gabungan ukuran dari datafile di tablespace adalah kapasitas penyimpanan total daritablespace tersebut. Setiap database Oracle berisi tablespace SYSTEM dan tablespaceSYSAUX. Oracle Database membuat dua(2) tablespace tersebut secara otomatis ketika database dibuat. Standar sistem di Oracle adalah untuk menciptakan sebuah tablespaceyang bersifat smallfile, yang merupakan tipe tradisional dari Oracle tablespace.Tablespace SYSTEM dan SYSAUX dibuat sebagai tablespace yang bersifat smallfile.
b. Physical Structure
Bagian berikut ini menjelaskan Physical Database Structure dari Oracle Database, termasuk di dalamnya terdapat datafile, control file, redo log file, archived redo log file, parameter file, alert dan trace log file, dan backup file.

Berikut ini pembahasan tentang bagian-bagian dari Physical Database Structure:
-          Datafile
Setiap Oracle Database memiliki satu atau lebih datafile fisik, yang berisi semua data database. Data dari Logical Database Structure, seperti tabel dan index, secara fisik tersimpan dalam datafile yang dialokasikan untuk database.
Datafile memiliki karakteristik sebagai berikut:
-          Satu atau lebih datafile membentuk logical unit dari database
-          yang disebut tablespace.
-          Datafile hanya dapat dengan satu tablespace saja.
-          Datafile dapat didefinisikan untuk memperluas secara otomatis ketika datafile tersebut sudah penuh.
-          Control File
Setiap Oracle database memiliki control file. Sebuah control file berisi tentang informasi struktur fisik dari database, termasuk informasi berikut:
-          Nama database
-          Nama dan lokasi dari datafile dan redo log file
-          Catatan waktu dari pembuatan database
Oracle database dapat memperbanyak control file, yaitu, secara bersamaan membuat beberapa salinan control file yang sama persis, ini dilakukan untuk melindungi database dari kegagalan
sistem yang melibatkan control file.
-  Online Redo Log File
Setiap database Oracle memiliki dua atau lebih online redo log file. Online Redo Log File, bersama dengan archived redo log file, secara kolektif dikenal sebagai redo log untuk database. Sebuah redo log terdiri dari beberapa masukkan(juga disebut redo record),
yang merekam semua perubahan yang terjadi pada data. Jika kegagalan mencegah data yang telah dimodifikasi ditulis secara permanen ke dalam datafile, maka perubahan dapat dimasukkan ke dalam redo log, sehingga pekerjaan tidak pernah hilang. Untuk melindungi terhadap kegagalan yang melibatkan redo log itu sendiri, database Oracle memungkinkan Anda memperbanyak redo log sehingga dua atau lebih salinan dari redo log dapat ditempatkan
pada disk yang berbeda.
-          Archived Redo Log File
Archived Redo Log File adalah file yang dihasilkan dari salinan offline redo log file. Database Oracle secara otomatis mengarsip redo log file ketika database dalam mode ARCHIVELOG. Oracle merekomendasikan agar Anda mengaktifkan pengarsipan otomatis untuk Redo Log File.
-          Parameter File
Parameter file berisi daftar parameter konfigurasi untuk instance dan database. Kedua parameter file(pfile) dan server parameter file(spfile) memungkinkan Anda menyimpan dan mengelola
parameter inisialisasi Anda terus-menerus dalam file server-side disk. Sebuah server parameter file memiliki keuntungan tambahan,
yaitu:
_ File ini diperbarui secara bersamaan ketika beberapa nilai parameter dirubah ketika instance aktif
_ File ini dapat diakses secara terpusat oleh semua instance di dalam Real Application Service Database.
-          Alert and Trace Log File
Setiap proses server dan proses background dapat menuliskan ke dalam trace file yang berhubungan. Ketika kegagalan internal terdeteksi oleh proses, informasi dump process tentang kegagalan tersebut akan masuk ke dalam trace file. Beberapa informasi yang dimasukkan ke dalam trace file ditujukan untuk database administrator, sedangkan informasi yang lain digunakan untuk Oracle Support Service. Informasi dalam trace file juga digunakan untuk menyesuaikan aplikasi dan instance. Alert file atau alert log adalah sebuah trace file khusus. Alert log dari database adalah log yang berisi kronologis kejadian pesan dan kegagalan.
-          Backup File
Untuk mengembalikan file dengan menggantinya dengan backup file. Biasanya, Anda me-restore file ketika ada kegagalan media atau kesalahan dari user yang mengakibatkan kerusakan atau
kehilangan file asli. Backup dan restore yang dikelola user mengharuskan Anda untuk
benar-benar me-restore backup file sebelum Anda dapat melakukan percobaan recovery dari backup. Backup dan restore yang dikelola oleh server dapat mengelola proses backup, seperti penjadwalan backup, serta proses restore, seperti menerapkan backup file yang benar ketika recovery dibutuhkan.
Struktur Proses
Terdapat 3 Struktur Proses pada Oracle :
a.       UserProcess
User Process adalah proses ketika user melakukan suatu aktivitas pada instance. Contohnya ketika user ingin melakukan login atau membuka suatu program. Satu user process dapat memiliki 2 server process yaitu ketika user login sebagai sys dan login kembali sebagai hr pada terminal yang lain
b.      ServerProcess
Server Process Terjadi ketika pengguna berhasil melakukan login (Connect Database / Connect SQL Plus). Server process dihapus ketika user berhasil logout
c.       BackgroundProcess
Background Process adalah proses yang tidak terlihat oleh user
•         archiver processes (ARCn) : Berfungsi untuk mengcopy data dari redo log file ke archive log file.
•         checkpoint process (CKPT) : berfungsi untuk mengupdate control file dan data file
•         coordinator-of-job-queues process (CJQn): secara dinamis menimbulkan slave processes terhadap job-queues.
•         database writer processes (DBWn)
•         dispatcher processes (Dnnn): multiplex server-processes users
•         memory-manager process (MMAN): digunakan untuk internal database seperti Automatic Shared Memory Management
•         log-writer process (LGWR) : Berfungsi untuk menulis data yang berubah ke redo log files.
•         log-write network-server (LNSn): mengirim redo log dalam penggunaan Data Guard
•         logical standby coordinator process (LSP0): kontrol aplikasi log Data Guard
•         media-recovery process (MRP): detached recovery-server process
•         memory-monitor process (MMON)
•         memory-monitor light process (MMNL): memperoleh dan menyimpan data Automatic Workload Repository (AWR).
•         process-monitor process (PMON).
•         process-spawner (PSP0): spawns Oracle processes
•         queue-monitor processes (QMNn).
•         recoverer process (RECO).
•         remote file-server process (RFS).
•         shared server processes (Snnn): melayani client-requests.
system monitor process (SMON).



Tidak ada komentar:

Posting Komentar