(Database Client

advertisement
Basis Data 2
Database Client / Server
Arif Basofi, S.Kom. MT.
Teknik Informatika, PENS
Tujuan
 Memahami bentuk-bentuk arsitektur aplikasi
dalam database.
 Memahami konsep arsitektur:




2
Single-Tier
Two-Tier: Thin Client
Two-Tier: Thick Client
Three-Tier
Arsitektur Client - Server
 Aplikasi database terdistribusi dikembangkan dalam bentuk
arsitektur client/server.
 Pada umumnya sistem client/server beroperasi dilingkup jaringan
komputer, yang memecah pemrosesan aplikasi antara sisi client
(front-end) dan sisi server (back-end).
 Proses yang terjadi yaitu memecah suatu proses antara sisi client
dan server, sehingga client akan memproses sebagian resourcenya,
sedang pemrosesan yang lain diserahkan pada sisi server.
 Client dan server dapat berada pada komputer yang sama, atau
dapat juga berada pada komputer yang berbeda yang saling
terhubung pada suatu jaringan komputer (network).
 Secara umum, komputer disebut:
 Client: jika ia menerima layanan tertentu dari server, dan disebut
 Server: jika ia memberi layanan tertentu pada client.
3
Arsitektur DBMS Terpusat
(Centralized DBMS Architecture)
 Arsitektur DBMS telah mengikuti trend sejalan dengan
kemajuan arsitektur sistem komputer.
 Permulaan arsitektur DBMS dimulai dgn
bentuk Arsitektur DBMS Terpusat
(Centralized DBMS Architecture).
 Pada arsitektur ini digunakan komputer main
frame yg menyediakan semua proses utama
spt fungsinya pada DBMS (user application programs & user
interface programs).
 Bentuk arsitektur terpusat ini menggambarkan pengaksesan
terminal-terminal komputer (client) pada komputer server,
berupa display informasi dan kontrol saja, karena pada terminal
komputer tidak memungkinkan memiliki resource yang lebih.
 Seiring perkembangan teknologi dan turunnya harga hardware,
banyak terminal user digantikan dengan PC, akan tetapi DBMS
masih ditempatkan terpusat (Application program execution &
user interface processing ditempatkan pada satu mesin).
4
Arsitektur DBMS Terpusat
(Centralized DBMS Architecture)...
Gambar fisik Arsitektur Terpusat
5
Dasar Arsitektur Client/Server
 Secara berangsur-angsur, sistem DBMS mulai dapat
ditempatkan pada sisi user yang dikenal dengan arsitektur
DBMS Client/Server.
 Arsitektur Client/Server dibangun untuk memenuhi
lingkungan komputing dimana sejumlah PC, workstation, file
server, printer, database server, web server serta peralatan
lainnya dapat saling terhubung via network.
 Ide dasar arsitektur client/server ini adalah mendefinisikan
spesifik server dengan kemampuan yang khusus pula.
 Sebagai contoh: menghubungkan berbagai PC sebagai client
pada file server yang menangani berbagai file pada mesin
client, mesin lain dapat dirancang sebagai printer server
yang terhubung pada berbagai printer, mesin server lain
sebagai Web server atau e-mail server, dsb.
6
Dasar Arsitektur Client/Server...
Gambar Logic Arsitektur Two-Tier Client/Server
 Mesin-mesin client menyediakan interface yang sesuai bagi user sebagai
penghubung dalam menggunakan server-server tersebut.
 konsep ini dapat diganti dengan adanya software khusus yang tersimpan
pd mesin server yang spesifik pula (DBMS,CAD package, dll).
7
Dasar Arsitektur Client/Server...
Gambar Fisik Arsitektur Two-Tier Client/Server
8
Dasar Arsitektur Client/Server...
 Konsep arsitektur client/server mengasumsikan sebuah
kerangka dasar (framework) yang terdiri atas banyak PC
yang terhubung melalui LAN beserta tipe-tipe jaringan
komputer lainnya.
 Suatu Client adalah mesin user yang menyediakan
kemampuan user interface dan local processing.
 Suatu Server adalah mesin yang menyediakan berbagai
service ke mesin client (file access, printing, archiving, or
database access).
 Ada kemungkinan suatu mesin hanya menginstall software
client saja, yang lain software server, atau bahkan
keduanya pada satu mesin (seperti pada gambar physical
client/server sebelumnya).
 Dua jenis utama dari dasar arsitektur DBMS tersebut
yang mendasari framework client/server: two-tier
client/server dan three-tier client/server.
9
Arsitektur Two-Tier Client/Server untuk DBMS
 Pada dasarnya arsitektur two-tier sering disebut sebagai arsitektur
client/server, yang terdiri komputer client dan komputer server, yang
berinteraksi melalui protokol yang sifatnya well-defined.
 Dalam arsitektur client/server tradisional, client hanya
mengimplementasikan GUI (Graphical User Interface), sedang server
hanya mengimplementasikan logika bisnis dan manajemen data.
 Client tersebut disebut thin client (klien tipis).
Client
Logika
Aplikasi
Network
DBMS
10
...
Client
Arsitektur Two-Tier Client/Server untuk DBMS…
 Pada bentuk yang lain, terdapat juga client yang lebih powerfull
dgn mengimplementasikan UI dan logika bisnisnya sedang sisanya
pada sisi server, yang disebut thick client (klien tebal).
Client
Logika
Aplikasi
DBMS
Network
...
Client
Logika
Aplikasi
11
Arsitektur Two-Tier Client/Server untuk DBMS…
 Model thick client memiliki beberapa kelemahan:
1. Tidak memiliki tempat pusat untuk memperbaharui dan
memelihara logika bisnis, karena berjalan pada sisi client.
2. Rasa saling percaya antara client & server.
(Penggunaan strore procedure pada client)
3. Tidak dapat menangani jumlah client yang besar.
4. Thick client tidak diskalakan seiring dengan pertambahan
akses aplikasi dan sistem database.
 Pada database client/server, saat pengaksesan DBMS
dibutuhkan: program membuka koneksi ke DBMS server,
sekali koneksi terbuat maka program client dapat
berkomunikasi dengan DBMS.
 Contoh: ODBC (Open Database Connectivity) yang
menyediakan API (Application Programming Interface),
JDBC, yg digunakan program client Java utk akses ke DBMS.
12
Arsitektur Two-Tier Client/Server untuk DBMS…
 Interaksi antara client dan server selama pemrosesan query
SQL adalah sebagai berikut :
1. Client melakukan parsing query pemakai dan memecahnya ke
dalam sejumlah query independent untuk setiap tempat.
Setiap query tersebut dikirim ke server yang sesuai.
2. Setiap server memproses query lokal dan mengirim relasi hasil
ke client.
3. Client mengkombinasikan hasil sub query untuk memproduksi
hasil dari query asal yang dikirim.
 Pada pendekatan ini :


13
Server SQL : juga disebut transaction server (database processor
(DP) / back-end machine / DBMS), sedangkan
Client : disebut application processor (AP) atau front-end machine.
Arsitektur Two-Tier Client/Server for DBMS...
 Arsitektur Three-Tier Client/Server merupakan model
yang lebih maju dengan memisahkan antara logika
aplikasi dari manajemen data, yang meliputi:
1. Presentation Tier (Client)
Berisi interface natural yang dibutuhkan user untuk
membuat request, menyediakan input dan melihat hasil.
(GUI, Web Interface).
2. Middle Tier (Application Layer/Web Server)
Berisi logika aplikasi untuk dieksekusi, berbagai macam
kode program (C++, Java, dll) sebagai proses bisnis logic
yang kompleks. (Application Programs, Web Pages).
3. Data Management Tier (Database Server)
Berisi DBMS.
14
Arsitektur Two-Tier Client/Server for DBMS...
Gambar arsitektur Three-Tier Client/Server:
15
Arsitektur Two-Tier Client/Server for DBMS...
Berbagai keuntungan arsitektur three-tier:
1.Sistem Heterogen
Mendukung pada berbagai platform yang berbeda. Sehingga modify
code pada suatu tier tidak berdampak pada tier yang lain.
2.Thin Client
Membutuhkan kemampuan komputasi yang memadai pada presentation
layer (biasanya web browser).
3.Akses Data Terintegrasi
Kemampuan middle tier dalam mengatur koneksi pada semua sistem
database yang terlibat secara terpusat.
4.Stabilitas pada Banyak Client
Kemampuan middle tier dalam mengatur hubungan database pada client.
5.Kemudahan dalam Pengembangan Software
Masing-masing tier dapat dikembangkan lebih lanjut (debug, test) tanpa
mempengaruhi yang lain.
16
Arsitektur N-Tier / Multi-Tier Client Server Database
 Pada arsitektur 3-tier memisahkan antara user interface, business
interface dan data provider dalam bagian yang berbeda.
 Istilah arsitektur N-tier sendiri muncul disebabkan karena
dimungkinkannya suatu aristektur aplikasi terdiri dari banyak tier
didalamnya.
17
Arsitektur N-Tier / Multi-Tier Client Server Database...
Case:
Sumber:
http://charless.wordpress.com/2008/0
5/02/arsitektur-model-aplikasi-saatini/
 Pada gambar aplikasi N-tier diatas digambarkan bagaimana suatu pelanggan internet
ingin memesan buku secara online pada situs amazon.com.
 Pelanggan dapat melihat katalog buku amazon.com yang sebenarnya ada pada database
amazon.com. Setelah pelanggan ingin memesan salah satu buku, maka pelanggan
tersebut perlu memasukkan informasi mengenai dirinya dan yang terlebih penting
adalah data mengenai kartu kreditnya.
 Tentunya data kartu kredit pelanggan tersebut harus divalidasi terlebih dahulu
informasinya, seperti PIN, masa berlaku kartu, limit kredit, dsb. Setelah itu, barulah
transaksi pemesanan buku itu selesai.
 Dari ilustrasi diatas kita melihat berapa banyak tier yang terlibat dalam suatu sistem.
18
Kesimpulan
Two -Tier
Three -Tier
N-Tier
19
S E K I A N...
20
Download