Perbedaan Basisdata Aktif dan Pasif Arsitektur Basisdata Aktif

25 tabel dalam basisdata. Model yang digunakan untuk menspesifikasi aturan basisdata aktif adalah model ECA Event-Condition-Action. Aturan dalam model ECA memiliki tiga komponen yaitu : a. Event [WHEN] → Event yang memicu suatu rule tersebut biasanya berupa operasi perubahan basisdata yang secara eksplisit ditambahkan ke basisdata. Tipe event yakni : INSERT, DELETE, atau UPDATE. b. Condition [IF] → Condition menentukan apakah suatu rule dijalankan atau tidak. Ketika suatu trigger dijalankan, maka bagian condition bersifat optional akan dievaluasi jika didefinisikan oleh yang membuat trigger. Jika evaluasi bagian condition bernilai TRUE maka aksi suatu rule dijalankan. c. Action [THEN] → Aksi yang dilakukan. Action biasanya berupa statemen sql yang dieksekusi secara otomatis. Fasilitas –fasilitas yang dimiliki oleh basisdata aktif antara lain logika pengolahan ada di dalam database dan dikelola oleh DBMS dan tidak dikelola oleh program aplikasi, bentuk monitoring event dan kondisi yang mempengaruhi data disediakan oleh DBMS, serta sarana untuk men- trigger logika ada di dalam DBMS.

2.5.1 Perbedaan Basisdata Aktif dan Pasif

Sistem basisdata konvensional disebut basisdata pasif dalam arti manipulasi data bisa dijalankan oleh database hanya dengan perintah yang diberikan langsung oleh pengguna atau program aplikasi yang terletak di 26 luar basisdata. Sedangkan basisdata aktif merupakan pengembangan dari database yang memindahkan sifat reactive program ke dalam database. Salah satu contoh fungsi yang secara efisien dapat dilakukan oleh basisdata aktif, akan tetapi di dalam basisdata pasif harus diprogram di dalam aplikasi adalah integrity constraint dan triggers. Basisdata pasif memiliki keterbatasan untuk mengontrol bentuk-bentuk integrity constraint seperti adanya data tertentu yang harus memenuhi nilai unik atau beberapa data yang harus berisi keterhubungan dengan data lain. Selain itu pada penggunaan triggers pada basisdata pasif, jika terjadi perubahan pada konstrain atau triggers itu sendiri maka harus bisa menemukan dan memodifikasi program atau kode yang relevan di setiap aplikasi. Sedangkan pada basisdata aktif, memiliki kemampuan untuk mengontrol integrity constraint pada keseluruhan database dan penggunaan triggers yang mampu menjalankan suatu aksi ketika mendeteksi suatu kejadian tertentu tanpa mencari kode-kode yang relevan pada program aplikasi untuk ikut diubah.

2.5.2 Arsitektur Basisdata Aktif

Arsitektur basisdata aktif yang sering digunakan termasuk dalam sistem arsitektur berlapis layered architecture dimana semua komponen basisdata aktif terletak “di atas” basisdata konvensional. Pada sistem arsitektur ini, basisdata konvensional bisa diubah menjadi basisdata aktif tanpa perlu memodifikasi basisdata pasif secara keseluruhan. 27 Bentuk dari arsitektur basisdata pasif digambarkan sebagai berikut : Gambar 2.1 Passive Database Sedangkan bentuk dari arsitektur basisdata aktif digambarkan sebagai berikut : Gambar 2.2 Active Database ACTIVE DATABASE DATA TABLE,OBJECT PROGRAM DB TOOLS OPERASI MANAJEMEN DAN FUNGSI RULE BASE COVERING ACTION : TRIGGER PASSIVE DATABASE DATA TABLE,OBJECT PROGRAM DB TOOLS OPERASI MANAJEMEN DAN FUNGSI 28 Keterangan gambar pada arsitektur database aktif : a. Data Tables, Object : Tabel yang berisikan data –data objek yang akan digunakan pada database. b. Progam : Aplikasi sistem report. c. DB Tools : Power Designer, yang nantinya administratornya yakni userpengguna dan DBMS Database Management System sendiri yakni mySQL. d. Rule Base : Aturan yang nantinya akan dijalankan pada aplikasi web dimana akan menyesuaikan dengan Conditionkondisi yang ada. Dimana akan dijalankan dengan Action UPDATE, misalnya setelah trigger nanti diaktifkan. Beberapa hal yang perlu diperhatikan yang menjadi sifat dari tingkah laku rule dalam sebuah basisdata aktif yaitu : a. Termination, suatu eksekusi dari aksi dapat menyebabkan terjadinya event yang lain dan bisa jadi event ini merupakan rule lain yang dijalankan. Apabila tidak ada suatu kondisi terminal, maka hal ini akan terus berulang menjadi loop tanpa akhir. b. Priority, jika beberapa rule di-trigger oleh event yang sama, maka harus dieksekusi berdasarkan urutan rule-nya. c. Error handling, jika eksekusi dari rule menghasilkan error maka sistem harus bisa menangani. Basisdata aktif sebagai basisdata dengan rule memiliki beberapa ciri-ciri tertentu, antara lain : 29 a. Secara alami bersifat algoritmik, dimana rule tersebut dijalankan sesuai dengan kondisi yang berlaku. b. Kondisi yang ditetapkan adalah data pengguna. c. Deskripsi kerjanya adalah mengubah dan meng-query data oleh pengguna sesuai dengan rule yang dijalankan. 4. Output yang ditentukan secara lengkap oleh spesifikasi dari query perubahan yang dilakukan. 3 Library IT Telkom : Active Database. 2008.

2.6 Trigger