Anda di halaman 1dari 15

PENGENALAN ARSITEKTUR BASIS DATA

1.1 Pendahuluan
Sistem database merupakan satu kesatuan dari Database
Management System (DBMS) dan database. DBMS adalah kumpulan
dari program-program yang mengijinkan user untuk melakukan create,
maintain, dan control terhadap semua kegiatan yang mengakses
database.

Tujuan utamanya adalah untuk menyediakan sistem yang aman,


nyaman, dan efisien untuk user dalam mengakses dan menyimpan
informasi.

1.2 Struktur DBMS


Secara umum struktur DBMS terdiri dari beberapa modul yang
masing-masing mempunyai tanggung jawab dalam membentuk
struktur sistem secara keseluruhan. Beberapa fungsi dari DBMS
mungkin telah diberikan oleh sistem operasi.

Setiap produk DBMS mempunyai karakteristik sistem sendiri-


sendiri. Struktur penyimpanan logic pada Oracle dan MS SQL Server
agak berbeda. Struktur logic terkecil pada Oracle adalah block,
sedangkan pada MS SQL Server adalah page.
Gambar 0-1 Struktur DBMS secara umum

Dua bagian utama dalam struktur DBMS ini adalah query


processor dan storage manager.

Query processor merupakan bagian yang merubah queri level


tinggi menjadi instruksi level rendah. Komponen-komponen Query
Processor adalah :

• DML compiler, menerjemahkan perintah DML pada suatu


query ke dalam instruksi level rendah yang dimengerti oleh
query evaluation engine.
• Embedded DML precompiler, mengkonversi perintah DML
yang embed pada sebuah program aplikasi ke procedure call
yang normal dalam bahasa host.
• DDL interpreter, menginterpretasikan perintah DDL dan
mencatatnya dalam sekumpulan tabel yang mengandung
metadata.
• Query evaluation engine, mengeksekusi instruksi level rendah
yang dihasilkan oleh DML compiler.

Storage manager menyediakan antarmuka antara data level


rendah yang tersimpan dalam basis data dan program aplikasi serta
query yang diberikan ke sistem. Bagian ini terdiri dari:
• Manajer otorisasi dan integritas, menguji integritas dari
constraint yang ada serta otoritas user untuk mengakses data.
• Manajer transaksi, meyakinkan basis data tetap pada kondisi
konsisten (benar) saat terjadi kegagalan sistem serta
meyakinkan bahawa eksekusi dari transaksi yang konkuren
(terjadi “bersamaan”) berlangsung tanpa adanya konflik.
• Manajer file, mengelola alokasi ruang pada disk penyimpanan
struktur data yang digunakan untuk mewakili informasi yang
disimpan pada disk.
• Manajer buffer, bertanggung jawab untuk mengambil data
dari disk penyimpanan ke dalam memori utama serta
menetukan data yang mana yang akan ditempatkan di
memory

1.3 Produk-produk DBMS


Produk-produk DBMS yang ada di pasaran sekarang ini cukup
banyak dan beragam. Para pembuat software DBMS menawarkan
fitur-fitur yang bervariasi.

Contoh produk-produk DBMS yang telah banyak pemakainya


diantaranya adalah ORACLE, DB2, MS SQL Server, MySQL, dan lain-lain.
1.4 Database Oracle
Database Oracle merupakan salah satu produk DBMS yang
dikembangkan oleh Oracle Corporation. Versi terakhir yang sudah
direlease ke pasaran adalah Oracle versi 11.

1.4.1 Arsitektur Database Oracle


Oracle server adalah DBMS yang menyediakan pendekatan
menyeluruh dan terbuka pada information management. Dalam hal ini,
Oracle server harus bisa mengatur data dalam jumlah yang banyak
dalam sistem multi user, mencegah pengaksesan data oleh user yang
tidak punya otoritas, serta melakukan recovery secara efisien apabila
terjadi kegagalan pada sistem.

Oracle server terdiri dari Oracle instance dan Oracle database,


dimana Oracle Instance merupakan media untuk mengakses Oracle
Database.

1.4.2 Struktur Database Oracle


Database Oracle dibangun berdasarkan beberapa struktur yaitu
memory, process, dan storage. Ketiga struktur ini merupakan
komponen-komponen yang berinterrelasi satu dengan yang lainnya.

Oracle database menggunakan struktur memory dan struktur


proses untuk mengatur dan mengakses database. Semua struktur
memory berada dalam main memory dari komputer dimana database
server berada. Proses adalah job yang bekerja di memori dan
merupakan suatu mekanisme dalam sistem operasi yang bisa
mengeksekusi satu seri program.
Gambar 0-2 Struktur Database Oracle

1.4.3 Oracle Instance


Bila suatu database dijalankan pada database server, software
Oracle akan mengalokasikan „shared memory area‟ yang disebut Sistem
Global Area (SGA) dan mengaktifkan beberapa Oracle Background
processes. Kombinasi dari SGA dan Oracle processes disebut Oracle
instance.

Bila instance telah di start, software Oracle akan


menghubungkan instance dengan suatu database, dan prosesnya
disebut „mounting‟ database. Sejak itulah database siap untuk dibuka
sehingga bisa diakses oleh user yang mempunyai hak akses. Beberapa
instance dapat dijalankan secara bersamaan pada komputer yang
sama, dimana setiap instance mengakses masing-masing databasenya.
Gambar 0-3 Oracle Instance

1.4.4 Oracle Memory Structure


Struktur memori dalam Oracle terdiri dari dua, yaitu:
• Sistem Global Area (SGA) : di-share oleh semua server dan
Background process
• Program Global area (PGA) : Private untuk masing-masing
server dan Background process. Satu PGA untuk masing-
masing proses.

Gambar 0-4 Oracle Memory


SGA
SGA merupakan area memori yang berisi data dan control
information untuk instance, dimana struktur datanya meliputi :
- Database buffer cache: Cache block data yang diambil dari
database
- Redo log buffer: Cache informasi redo, digunakan untuk
recovery instance, sampai informasi ini ditulis ke penyimpanan
fisik redo log files dalam disk
- Shared pool: Cache beberapa program yang dapat di share
oleh user
- Large pool: merupakan area opsional yang menyediakan
alokasi memori yang besar untuk proses yang besar, seperti
operasi backup dan recovery, dan proses I/O server
- Java pool: digunakan untuk semua session Java code dan data
dalam Java Virtual Machine (JVM)
- Streams pool: digunakan oleh Oracle Streams

PGA
Program Global Area atau Process Global Area (PGA) adalah area
memori yang meliputi data dan control information untuk setiap
proses.

PGA dialokasikan ketika suatu proses dimulai dan akan di-


dealokasikan ketika proses itu selesai. Satu PGA digunakan hanya oleh
satu proses.

1.4.5 Oracle Processes Structure

Gambar 0-5 Oracle Processes


Oracle processes structure terdiri dari:
• User process :
dimulai pada saat user meminta koneksi ke Oracle Server
• Server process:
terhubung ke Oracle Instance, dimulai pada saat user mulai
terhubungkan dengan Oracle Server
• Background process:
dimulai pada saat Oracle Instance di-start.

User Process
User database yang akan mengakses informasi dari database
harus melakukan koneksi dulu ke Oracle server. Ini dapat dilakukan
dengan menggunakan tool, seperti SQL*Plus, dan user process dimulai.
User process tidak berinteraksi langsung dengan Oracle server, tetapi
melalui User Program Interface (UPI) yang meng-create session dan
mengaktifkan server process.

Server Process
Ketika user telah terkoneksi, server process dimulai untuk
menangani permintaan dari user process. Server process dapat berupa
server process khusus atau server process yang digunakan bersama
(shared server process).

Dalam server yang khusus, server process melayani permintaan


dari single user process. Ketika koneksi putus, server process juga
selesai. Dalam shared server, server process melayani permintaan dari
beberapa user process. Server process berkomunikasi dengan Oracle
server menggunakan Oracle Program Interface (OPI).

Background Process
Background process merupakan bagian dari Oracle Instance,
yang terdiri dari beberapa proses. Proses-proses yang sering
digunakan adalah:
- Sistem Monitor (SMON): melakukan crash recovery bila
instance gagal di-start.
- Process Monitor (PMON): melakukan process cleanup bila
user process gagal.
- Database Writer (DBWn): menulis blocks yang berubah dari
database buffer cache ke data files dalam disk
- Checkpoint (CKPT): meng-update semua data files dan
control files database untuk memberi tanda checkpoint yang
terakhir
- LogWriter (LGWR): menulis redo log ke disk
- Archiver (ARCn): meng-copi redo log files ke tempat
penyimpanan bila log switch terjadi

1.4.6 Oracle Storage Structure


Oracle database mempunyai dua jenis struktur penyimpanan,
yaitu struktur logic dan struktur fisik.

Logical Structure
Struktur logic dapat dilihat pada gambar di bawah ini dimana
urutan terbesar adalah database dan yang terkecil adalah block. Satu
database terdiri dari beberapa tablespace, dan setiap tablespace
merupakan gabungan dari beberapa segment.

Physical Structure
Struktur fisik berupa data file, dimana satu atau lebih data file
dibuat untuk setiap tablespace sehingga semua struktur logic akan
tersimpan dalam struktur fisik. Untuk tablespace TEMPORARY, data file
nya tersimpan dalam file temporer.

Struktur fisik juga meliputi file-file yang mendukung berjalannya


Oracle database, yaitu:
- Control files: berisi data tentang informasi struktur fisik
database. File ini sangat penting, karena bila file ini tidak ada,
kita tidak bisa mengakses database.
- Data files: berisi data user atau aplikasi database.
- Online redo log files: digunakan untuk recovery instance
database.
- Parameter file: digunakan untuk mendefinisikan bagaimana
konfigurasi instance pada saat start-up
- Password file: mengijinkan user untuk terhubung secara
remote ke database dan untuk melakukan tugas administrasi.
- Backup files: digunakan untuk recovery database.
- Archive log files: berisi urutan perubahan data yang dibuat
oleh instance. Bersama dengan data backup, digunakan untuk
merecover data file yang hilang.

Gambar 0-6 Oracle Storage

1.5 Arsitektur Sistem database


Arsitektur suatu database sangat bergantung kepada sistem
komputer dimana database itu dijalankan. Kila tidak bisa membangun
sistem database yang terdistribusi tetapi sistem komputernya
tersentralisasi.

Database functionality terdiri dari front-end dan back-end,


dimana front-end terdiri dari tool seperti forms, report-writers, dan
fasilitas graphical user Interface, sedangkan back-end mengatur
struktur akses, evaluasi queri dan optimisasi, kontrol konkurensi dan
recovery.

Gambar 0-7 Database Functionality

Antar muka (Interface) antara front-end dan back-end melalui


SQL atau application program Interface(API).
Berdasarkan sistem komputer yang dibangun, maka sistem
database dapat diklasifikasikan sebagai berikut:
- Centralized Sistems
- Client-Server Sistems
- Parallel Sistems
- Distributed Sistems
- Network Types

1.5.1 Centralized Sistems

Gambar 0-8 Centralized Sistem


Centralized Sistem (Sistem terpusat) berjalan pada sistem
computer tunggal dan tidak berinteraksi dengan sistem yang lainnya.
Sistem ini terdiri dari satu CPU dan beberapa device controllers yang
dihubungkan melalui sistem bus, sehingga bisa mengakses shared
memory.

Sistem terpusat ini dapat dilakukan dengan single-user sistem


atau multi-user sistem. Contoh dari Single-user sistem adalah personal
computer atau workstation yang terdiri dari unit desk-top, single user,
biasanya hanya mempunyai satu CPU dan satu atau dua hard disks.
Sistem Operasinya hanya melayani satu user saja.

Multi-user sistem didukung oleh beberapa disks, beberapa


memory, multi CPU, dan OSnya bisa melayani multi-user. User
terhubungkan ke sistem melalui terminal. Sistem multi-user ini sering
disebut server sistem.

1.5.2 Client-Server Sistems

Gambar 0-9 Client-Server Sistem


Dalam sistem Client-Server, client dan server dihubungkan oleh
network dimana server akan memproses permintaan dari client.
Database functionality di client dan server dapat berupa front-end atau
back-end.

Server sistems dapat dikatagorikan ke dalam dua jenis, yaitu:


- transaction server atau
- data server
Transaction Server
• Banyak digunakan dalam sistem database relasional
• Disebut juga query server sistems atau SQL server sistems
• clients mengirim permintaan ke sistem server dimana transaksi
akan dieksekusi, dan hasilnya dikirim kembali ke client
• Permintaan ditulis dalam SQL, dan dikomunikasikan ke server
melalui mekanisme remote procedure call (RPC)

Data Server
• Digunakan dalam sistem database object-oriented
• Menggunakan LAN dengan koneksi yang sangat cepat antara
client dan server
• Data dikirim dari server ke komputer client dimana
pemrosesan data dilakukan, dan hasilnya dikirim kembali ke
server
• Arsitektur ini membutuhkan full back-end functionality di
komputer client

1.5.3 Parallel Sistems


Sistem database Parallel terdiri dari multiple processors dan
multiple disks yang dihubungkan oleh network yang berinterkoneksi
dengan cepat.

Sistem ini dapat diukur performancenya berdasarkan:


- throughput --- jumlah tasks yang bisa diselesaikan dalam interval
waktu yang ditentukan
- response time --- jumlah waktu yang digunakan untuk
menyelesaikan suatu task

Arsitektur sistem parallel ini terdiri dari :


- Shared memory -- processors menggunakan satu memori
bersama-sama
- Shared disk -- processors menggunakan satu disk bersama-
sama
- Shared nothing -- memory dan disk tidak digunakan
bersama-sama
- Hierarchical – merupakan campuran ketiga arsitektur di
atas dengan shared nothing adalah level tertinggi.

Gambar 0-10 Parallel Sistems

1.5.4 Distributed Sistems


Sistem terdistribusi menyimpan data secara tersebar di beberapa
server database. Server-server ini dihubungkan melalui interkoneksi
network. Data di server-server tersebut digunakan bersama-sama oleh
user.

Gambar 0-11 Distributed Sistem


1.5.5 Network types
• Local-area networks (LANs)
terdiri dari beberapa processors yang tersebar dalam area
geografi yang kecil, seperti dalam suatu gedung atau beberapa
gedung yang berdekatan
• Wide-area networks (WANs)
terdiri dari beberapa processors yang tersebar dalam area
geografi yang luas

Anda mungkin juga menyukai