Anda di halaman 1dari 18

Aplikasi

Basis Data

DBMS: Terpisah atau


Menyatu dengan Aplikasi?
Sofware untuk merancang aplikasi basis data: Java,
VB.Net, ASP.Net, Delphi, MS Access, Visual Foxpro dll
kadang dianggap bukan DBMS.
DBMS yang besar (seperti Oracle, CA-OpenIngres,
Sybase, Informix, IBM-DB2, SQL Server) memang
dirancang sejak awal untuk berdiri sendiri dan terpisah
dari aplikasi basis datanya.
Karena berdiri sendiri, maka banyak sekali fasilitas
(feature) yang ditangani oleh DBMS ini, seperti masalah
pemeliharaan integritas basis data, mekanisme
recovery (pemulihan data otomatis akibat adanya
kerusakan data), mekanisme backup periodik,
pengendalian persaingan pemakaian data oleh banyak
pemakai (concurency control), mekanisme
pengamanan pemakaian (security mechanism), dan
lain-lain.

DBMS: Terpisah atau


Menyatu dengan Aplikasi?
Gambar Aplikasi basis data yang terpisah dari DBMS

Pada bentuk di atas, basis data dianggap sebagai


objek hidup, karena aplikasi tidak pemah
berinteraksi langsung dengan basis data. Tetapi
melalui DBMS. Bahkan DBMS bisa melakukan
aktifitas yang umumnya dilakukan aplikasi.
Jadi interaksi antara aplikasi basis data dan DBMS
--> interaksi dua arah (digambarkan dengan
adanya tanda panah bolak-balik) antara dua
perangkat lunak.

Arsitektur Sistem
Konfigurasi sistem keseluruhan yang akan menjadi
'tempat hidup' DBMS, basis data dan aplikasi yang
memanfaatkannya.
Bagaimana wujud 'tempat hidup' tersebut
menentukan bagaimana pemakai berinteraksi
dengan keseluruhan sistem, ditetapkan sejak awal
sebelum perancangan basis data, atau sebelum
tahap implementasi basis data.
Beberapajenis arsitektur sistem:
Sistem Tunggal/Mandiri (Stand-Alone)
Sistem Tersentralisasi (Centralized System).
Sistem Client-Server

Sistem
Tunggal/Mandiri
(Stand-Alone)
DBMS, basis data dan aplikasi basis data

ditempatkan pada mesin (komputer) yang sama.


Pemakai yang dapat menggunakannya pada waktu
yang sama hanya satu orang (single user).
Arsitektur sistem yang paling sederhaha dan paling
murah. Arsitektur ini dapat digunakan, jika basis
data yang dikelola tidak terlalu besar (lebih bersifat
membantu mempercepat pekerjaan-pekerjaan
administratif).

Sistem Tersentralisasi
(Centralized System)
Tidak dapat mempertahankan pemakaian Sistem
Mandiri, jika mengakomodasi pemakaian banyak
pemakai (multi-user).
Terdiri atas sebuah mesin server dan sejumlah terminal
(tempat user berinteraksi dengan sistem). Mencakup
basis data, DBMS dan aplikasi basis data atau basis data
saja.
Lingkup sentralisasi yang pertama, jenis server-nya
disebut sebagai DBMS-server atau application-server
(server aplikasi) dan terminalnya disebut dumbterminal (terminal pasif).
Jika yang disentralisasi hanya basis data, server yang
digunakan disebut file server dan terminalnya disebut
work-station (stasiun kerja).

Sistem Tersentralisasi
(Centralized System) (2)
Gambar Sistem Tersentralisasi

Sistem Tersentralisasi
(Centralized System) (3)
Pada bentuk sentralisasi yang pertama, beban server
sangat berat, karena digunakan bersama-sama oleh
banyak pemakai untuk menjalankan aplikasi basis data
dan DBMS (di samping tentu saja sistem operasi untuk
jaringan).
Untuk memperingan beban server (khususnya dalam
alokasi sumber daya server seperti prosesor dan
memori), bentuk sentralisasi ini umumnya
menggunakan aplikasi berbasis teks (text-base
application) dengan fasilitas antar-muka layar yang
sederhana, sehingga ukuran aplikasi bisa lebih kecil.

Sistem Tersentralisasi
(Centralized System) (4)
Performansi operasi basis data sangat dipengaruhi oleh
utilitas (pemakaian) sumber daya server. Karena itu,
semakin banyak proses yang aktif, maka performansi
akan semakin lambat. Sementara itu, lalu lintas data
(data traffic) antara terminal dan server rendah, karena
yang ditransfer hanyalah aksi pemakai (dari terminal ke
server) dan image layar (dari server ke terminal pada
saat menampilkan hasil query).

Sistem Tersentralisasi
(Centralized System) (5)
Arsitektur ini akan tetap berfungsi baik walaupun
digunakan pada jaringan yang lebih besar (Wide Area
Network/WAN) dan lebih praktis terutama pada masa
instalasi maupun perbaikan aplikasi, karena
pemasangan aplikasi (deployment) hanya dilakukan di
satu tempat (di server). Pada bentuk sentralisasi ini,
dapat saja digunakan DBMS yang terpisah dari aplikasi,
tetapi berada di mesin (server) yang sama.
Pada bentuk sentralisasi yang kedua, beban server jauh
lebih ringan, karena yang 'hidup' di situ hanyalah
sistem operasi jaringan (network operating
system/NOS) dan basis data dianggap setara dengan
sebuah file atau beberapa file pada umumnya.

Sistem Tersentralisasi
(Centralized System) (6)
Proses-proses aplikasi basis data dijalankan di setiap
work-station (yangjuga memiliki prosesor dan memori)
yang digunakan pemakai. Karena itu, beban kerja
sistem secara keseluruhan menjadi terbagi.
Performansi pada arsitektur tersentralisasi yang kedua
sangat dipengaruhi lalu lintas data (data traffic) yang
berlangsung dengan intensitas yang tinggi antara workstation dan server, apalagi jika volume data hasil query
cukup besar.

Sistem Tersentralisasi
(Centralized System) (7)
Jika ada operasi basis data dari sebuah proses yang
sedang aktif di salah satu work-station, maka file-file yang
dibutuhkan oleh operasi tersebut akan ditransfer secara
keseluruhan dari server ke work-station tersebut,
sehingga arsitektur ini lebih cocok untuk jaringan yang
sifatnya lokal (Local Area Network/LAN). Tahap
pemasangan (deployment) aplikasi juga menjadi tidak
praktis, karena setiap aplikasi baru ataupun
perubahannya harus diinstalasi di setiap work-station
yang menggunakannya.
Kesulitan ini dapat diatasi dengan menyediakan ruang di
disk server untuk menyimpan aplikasi, sehingga sewaktu
ingin menjalankan aplikasi, pemakai lebih dulu mentransfer file aplikasi dari server ke work-station lalu
kemudian mengaktifkannya.

Sistem Client-Server
Sistem Client-Server diterapkan pada sebuah sistem
jaringan dan ditujukan untuk mengatasi kelemahankelemahan pada Sistem Tersentralisasi sebelumnya
(baik sentralisasi pada aplikasi dan basis data
maupun sentralisasi hanya pada basis data).
Kelemahan pada bentuk Sistem Tersentralisasi yang
pertama, yaitu beratnya beban server yang harus
menangani semua proses, diatasi dengan membagi
beban itu menjadi 2 bagian : client (yang
menjalankan aplikasi basis data) dan server (yang
menjalankan DBMS dan berisi basis data) pada
mesin yang berbeda.

Sistem Client-Server
(2)
Kelemahan pada bentuk Sistem Tersentralisasi yang
kedua, yaitu padatnya lalu lintas data antara server dan
work-station diatasi dengan mekanisme transfer data
yang lebih efisien.
Sistem ini terdiri atas dua komponen (mesin) utama,
yaitu client dan server. Client berisi aplikasi basis data
dan server berisi DBMS dan basis data. Setiap aktivitas
yang dikehendaki para pemakai akan lebih dulu
ditangani oleh client. Client selanjutnya mengupayakan
agar semua proses 'sebisa mungkin' ditangani sendiri.
Jika ada proses yang harus melibatkan data yang
tersimpan pada basis data, barulah clien melakukan
'kontak' dengan server.

Sistem Client-Server
(3)
Misalnya terdapat kebutuhan untuk mendapatkan barisbaris data (row) dengan kriteria tertentu (proses query)
dan tabel data bernama T. Pada bentuk Sistem
Tersentralisasi yang kedua, kebutuhan ini dijawab
dengan mentransfer lebih dulu semua baris data (row)
yang ada di tabel T tersebut dari server ke work-station,
barulah kemudian di work-station dilakukan pemilihan
baris data (query) terhadap tabel T tersebut.
Sementara pada Sistem Client-Server, client akan
mengirimkan message (perintah) query pengambilan
data. Selanjutnya, server yang menerima message
tersebut akan menjalankan query (melakukan pencarian
baris data terhadap tabel T) dan hanya hasilnya (jadi
tidak seluruh isi tabel T) yang akan dikirimkan kembali ke
client. Sehingga transfer data menjadi jauh lebih efisien.

Sistem Client-Server
(4)
Gambar Sistem client-server sederhana

Gambar sistem client-server kompleks

Pemilihan
Development Tools
Pertimbangan dalam menentukan perangkat lunak
pembangun (development tools) aplikasi basisdata:
a. Kecocokan antara DBMS dan development tools
Perangkat lunak -> menjamin tersedianya fasilitas yang dapat
digunakan untuk berinteraksi dengan DBMS secara penuh
Contoh:
DBMS

Development tools

MS-SQL server

MS Visual Basic

Borland Interbase

Borland Delphi

CA-OpenIngres

CA-OpenRoad

Oracle

Developer 2000

Pemilihan
Development Tools (2)
b. Dukungan development tools terhadap arsitektur
sistem (tidak semua development tools memberi
dukungan yang baik terhadap arsitektur clientserver)
c. Independensi development tools dan DBMS
(idealnya hanya ada satu macam DBMS yang dipilih
untuk mengelola seluruh basis data)
d. Kemudahan pengembangan dan migrasi aplikasi
Development tools yang dipilih harus mendukung
pengembangan lebih lanjut (berbasis web) dan kemudahan
migrasi (form-base menjadi berbasis web-base)

Anda mungkin juga menyukai