Arsitektur Aplikasi Basis Data 3
Arsitektur Two Tier Client Server
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 administrasi data. Client tersebut disebut thin client (klien tipis). Pada bentuk lain, terdapat juga client yang lebih powerfull dengan mengimplementasikan GUI dan logika bisnisnya sedang sisanya pada sisi server, yang disebut thick client (klien tebal).
Model thick client mempunyai beberapa kelemahan:
- Tidak mempunyai daerah pusat untuk memperbaharui dan memelihara logika bisnis, alasannya berjalan pada sisi client.
- Rasa saling percaya antara client-server (strore procedure pada client),
- Tidak sanggup menangani jumlah client yang besar.
- Thick client tidak diskalakan seiring dengan pertambahan kanal aplikasi dan sistem database.
- Client melaksanakan parsing query pemakai dan memecahnya ke dalam sejumlah query independent untuk setiap tempat. Setiap query tersebut dikirim ke server yang sesuai.
- Setiap server memproses query lokal dan mengirim korelasi hasil ke client.
- Client mengkombinasikan hasil sub query untuk memproduksi hasil dari query asal yang dikirim.
Arsitektur Three-Tier Client/Server
Three Tier Architecture merupakan penemuan dari arsitektur client-server. Pada arsitektur Three-tier ini terdapat application server yang bangun di antara client dan database server. Contoh dari application server yakni IIS (Internet Information Services), WebSphere, dan sebagainya. Arsitektur ini memisahkan antara logika aplikasi dari administrasi data, yang meliputi:
- Presentation Tier (Client) Berisi interface natural yang diharapkan user untuk menciptakan request, menyediakan input dan melihat hasil. (GUI)
- Middle Tier (Application Layer/Web Server) Berisi logika aplikasi untuk dieksekusi, banyak sekali macam isyarat kegiatan (C++, Java, dll) sebagai proses bisnis logic yang kompleks. (Application Programs, Web Pages).
- Data Management Tier (Database Server) Berisi DBMS.
- Sistem Heterogen Mendukung pada banyak sekali platform yang berbeda. Sehingga modify code pada suatu tier tidak berdampak pada tier yang lain.
- Thin Client Membutuhkan kemampuan komputasi yang memadai pada presentation layer (biasanya web browser).
- Akses Data Terintegrasi. Kemampuan middle tier dalam mengatur koneksi pada semua sistem database yang terlibat secara terpusat.
- Stabilitas pada Banyak Client , yaitu kemampuan middle tier dalam mengatur korelasi database pada client.
- Kemudahan dalam Pengembangan Software Masing-masing tier sanggup dikembangkan lebih lanjut (debug, test) tanpa mensugesti yang lain.
Arsitektur N-tier atau multi tier. Istilah arsitektur ini muncul alasannya dalam implementasi aplikasi basis data base dimungkinkan suatu aristektur aplikasi terdiri dari banyak tier .
Salah satu teladan aplikasi basis datayang memakai arsitektur ini ialah situs amazon .com, dimana pelanggan internet sanggup memesan buku secara online. Pelanggan sanggup melihat katalog buku amazon.com yang sesungguhnya ada pada database amazon.com. Jika pelanggan ingin memesan salah satu buku, maka pelanggan tersebut perlu memasukkan gosip mengenai dirinya dan yang terlebih penting yakni data mengenai kartu kreditnya. Untuk sanggup memesan buku data kartu kredit pelanggan tersebut harus divalidasi terlebih dahulu: menyerupai isyarat PIN, masa berlaku kartu, limit kredit. Setelah dinyatakan valid maka pelanggan sanggup melaksanakan transaksi pemesanan buku.
Arsitektur Paralel
Sistem administrasi basis data ini menggunakan beberapa prosesor dan disk yang dirancang untuk dijalankan secara paralel. Arsitektur ini dipakai untuk memperbaiki kinerja dari DBMS. Paralel DBMS di jalankan oleh banyak sekali multi prosesor. Paralel DBMS menghubungkan beberapa mesin yang berukuran kecil untuk menghasilkan keluaran sebuah mesin yang berukuran besar dengan skalabilitas yang lebih besar dan keandalan dari basis datanya.
Untuk menopang beberapa prosesor dengan kanal yang sama pada satu basis data, DBMS paralel harus menyediakan administrasi sumber daya yang sanggup diakses bersama. Sumber daya apa yang sanggup dipakai bersama, dan bagaimana sumber daya tersebut diimplementasikan. Hal ini mempunyai pengaruh eksklusif pada kinerja dan skalabilitas dari sistem dan tergantung dari aplikasi atau lingkungan yang digunakan. Terdapay tiga arsitektur yang dipakai pada paralel DBMS yaitu :
- Penggunaan memory bersama ( share memory )
- Penggunaan disk bersama ( share disk )
- Penggunaan secara sendiri-sendiri (share nothing)
Arsitektir Penggunaan Disk Bersama ( Share Disk ) adalah sebuah arsitektur yang mengoptimalkan jalannya suatu aplikasi yang tersentrallisasi dan membutuhkan keberadaan data dan kinerja yang tinggi. Setiap prosesor sanggup mengakses eksklusif semua disk, tetapi prosesor tersebut mempunyai memori sendiri. Seperti halnya penggunaan secara sendiri–sendiri. Arsitektur ini menghapus problem pada penggunaan memori bersama tanpa harus mengetahui sebuah basis data di partisi. Arsitektur ini di kenal dengan cluster. Gambar dibawah ini menjelaskan arsitektur paralel dengan penggunaan disk bersama.
Arsitektur Penggunaan Secara sendiri – sendiri (Share nothing) hampir sama dengan DBMS terdistribusi, namun pendistribusian data pada paralel DBMS hanya berbasis pada kinerjanya saja. Sering di kenal dengan Massively parallel processing ( MPP ) yaitu arsitektur dari beberapa prosesor di mana setiap prosesor yakni bab dari sistem yang lengkap yang mempunyai memori dan disk. Basis data ini di partisi untuk semua disk pada setiap sistem yang bekerjasama dengan basis data. Ddata diberikan secara transparan untuk semua pengguna yang memakai sistem . Arsitektur ini lebih sanggup di hitung skalabilitasnya dibandingkan dengan share memory dan dengan gampang sanggup mensupport prosesor yang berukuran besar. Kinerja sanggup optimal jikalau data di simpan di lokal DBMS. Gambar dibawah ini menjelaskan arsitektur paralel dengan penggunaan secara mandiri.