Deductive Database

download Deductive Database

of 7

description

DATABASE

Transcript of Deductive Database

Deductive Database

Apa itu Deductive Database....?Deductive Database adalah merupakan area perpotongan antara basis data, logika, dan intelegensia buatan. Sistem Deductive Database sendiri biasa dipanggil juga dengan sebutan Logic Databases. Kenapa begitu ?? Hal ini disebabkan oleh kapabilitas mekanisme dari sistem ini untuk memberikan pengetahuan baru tentang suatu data yang tersimpan, dengan menambahkan suatu pola hubungan antardata yang disebut dengan istilahrules. Nah, karena kelebihan di poin iniSistem Deductive Database didefinisikan sebagai sebuah sistem basis data yang memiliki kemampuan untuk mendefinisikanrulesturunan (deduktif) yang dapat memberi kesimpulan berupa suatu informasi tambahan, mengenai fakta-fakta yang tersimpan di dalamnya.Hal lain tentang sistem basis data ini adalah bahwa sistem ini merupakan salah satu ekstensi dari sistem basis data relasional. Namun, tidak seperti kebanyakan ekstensi sistem relasional lainnya, sistem ini memiliki sifatdeklaratif. Sistem yang seperti apakah itu ?? Sistem yang deklaratif adalah sistem yang memfasilitasi penggunanya untuk melakukanqueryataupun updatedengan menjabarkanApa yang ingin dihasilkan oleh sistem bukanBagaimana sistem harus beroperasi.

Teknologi Deductive Database memiliki kelebihan di beberapa poin..1. Sifat sistem yang deklaratifPada sistem relasional yang terdahulu, banyak timbul permasalahan pada optimisasi peng-kode-anquery. Dengan kemudahan yang diberikan oleh sistem, operasi sistem hampir bisa dipastikan sebagai operasi yang paling efisien dan efektif untuk memberikan hasil yang diinginkan.2. Kemampuan sistem untuk menyajikan semantik data yangnon-monotonicKesimpulan yang tidak monoton adalah kesimpulan yang tidak bisa diperoleh dari fungsi logika klasik. Sistem ini mampu untuk memberikan definisi yang lebih darilogical statementsyang tersimpan di dalamnya, kepadaprogrammer.Sebelum mulai menggunakan aplikasi dari sistem ini, terdapat beberapa konsep yang perlu dipahami terlebih dahulu

Konsep PrologProlog adalahsatu bentuklogic programmingyang berkaitan dengan intelegensia buatan dan bahasa komputasional. Penggunaan prolog inilah yang membuat Deductive Database sangat berkaitan erat dengan pemrograman berbasis logika, sampai-sampai Deductive Database sendiri bahkan bisa disebutsebagai suatu bentuk adaptasi dari pemrograman prolog di bidang basis data. Terdapat beberapa hal yang perlu diperhatikan terkait dengan hal ini :1.Strategi evaluasi pada penggunaan prolog adalahdepth firstHal ini menyebabkan adanya kemungkinan untuk didapatkan hasil berupainfinite loops. Oleh sebab itu, sebaiknya untuk volume data yang besar lebih diutamakan kesempurnaan dan kejelasan terminasi dari metode evaluasi, dibanding argumen-argumen operasional.2. Dalam pengaplikasian basis data, pada umumnya jumlah data yang diolah sangat besar sehingga mayoritasnya tersimpan disecondary storage.Maka itu, efisiensi akses ke data yang bersangkutan sangatlah krusial dalam menentukan kebagusan performansi dari sistem.Tipe data tunggal dari sebuah prolog adalahterm.Didalam Termdapat berupaatoms,numbers,variablesataucompound terms. Atomadalah nama yang umum tanpa satu arti yang spesifik. Atom terdiri dari satusequencekarakter yang di-parsesebagai satu unit tunggal tanpa sintax tertentu, seperti ; kucing, [ ], jalan_raya, Kurap, atom aja, dan lain sebagainya. Numbersdapat berbentuk integer, float, ataupun bilangan rasional lainnya. Variablesterdiri dari satu set huruf, atau beberapa kata yang digabungkan dengan _ (underscore), dimulai dengan huruf kapital. Compound termterdiri dari sebuah atom yang disebutfunctordan beberapatermyang disebut argumen.Compound termsbiasa dituliskan dengan urutan;functor, diikuti sebuah list argumen dipisahkan dengan tanda koma di dalam tanda kurung. Jumlah dari argumen disebut sebagaiaritydariterm. Hal ini membuat sebuah atom disebut sebagaitermdenganarity sejumlah nol.

Contohcompound term:pacaran(andi, dona) > arity = 2Punya_Mobil'(gugun, [Mercy, BMW, Avanza]) > arity = 2tambah(x, y, hasil) > arity = 3 diketahui x dan yJadi terlihat sekarang bahwa prolog di dalam Deductive Database menyebabkan eratnya konsep pemrograman logika di sistem basis data iniKonsep Facts & RulesDalam notasi dan penggunaan Deductive Database, terdapat dua hal yang menjadi bahan mainan nih; yaitufacts&rules.. FactsatauDatadiwakili oleh predikat dan disertai dengan konstanta argumencontoh : adik (Popi, Hani) -> berarti Popi adalahadik dariHani.. adik disini merupakan predikat yang menghubungkan Popi dengan Hani. RulesatauProgramdigunakan untuk mendefinisikan relasi virtual berdasarkan suatu spesifikasi tertentu.Biasanya dituliskan dalam notasi Prolog seperti (ex.p :- q1, , qn).pdisebut Head yang merupakankonklusidari program. Head akan bernilai true jika setiap predikat di bagian kanannya bersifat true;q1, , qndisebut Body atausubgoal. Tanda koma antar variabel bisa dibaca sebagai hubungan and'; tanda:-memiliki arti seperti if .contoh : bos (Dodi, Asep) :- memerintah (Dodi, Asep) -> Dodi adalahbos dariAsep, jika DodimemerintahAsepContoh Facts :guru (Budi, Tono)guru (Tono, Santi), ayah(Papa, Ina)Rules :guru (Budi, Tono) :- mengajar (Budi, Tono)guru (Tono, Santi) :- murid (Santi, Tono)guru (Budi, Santi) :- guru (Budi, Tono), guru (Tono, Santi)ayah (Papa, Ina) :- anak (Ina, Papa), pria (Papa)Jadi notasi di dalam Deductive Database memiliki bentuk yang persis seperti pemrograman logika, yaitu dengan Prolog. Interpretasi & Meaning dari QueryOke Setelah memengerti penulisan Query dalam Deductive Database (Prolog), selanjutnya perlu diketahui dulu bagaimana cara kita menginterpretasikan maknanya.1. Bila argumen terdiri satu atau lebih variabel, query akan mengembalikan nilai dari variabel2. Bila argumen terdiri dari konstanta saja, query akan mengembalikan nilai True atau Falsecontoh Query :ayah(Papa, Ina)?Seperti yang sudah beberapa kali disebutkan, Deductive Database akan selalu mengenai Facts & Rules. Nah terkait dengan itu, terdapat beberapa alternatif cara mendefinisikan makna dari Rules..1. Proof-theoretic InterpretationDengan cara ini kita bermaksud membuktikan suatu fakta dari fakta2 lain di dalam database, menggunakan rules. Hal ini dilakukan dengan membaca rule dengan arah maju; mengartikan bagian kiri(konklusi) dari fakta di bagian kanan(argumen).contoh:pilot(Joko) :- menerbangkan(Joko, Pesawat)dibaca > Joko adalah seorang Pilot,karenaJoko menerbangkan Pesawat2. Model-theoretic InterpretationDengan cara ini, kita melihat rules sebagai model yang memberikan nilai true atau false kepada tiap kemungkinan instance dari predikat rules tadi.3. Computational Definition of MeaningIni dilakukan dengan menyusun sebuah algoritma yang mengeksekusi logical rules, untuk menentukan kebenaran dari fakta2 lainnya. KesimpulanSetelah mempelajari banyak mengenai Deductive Database, bisa di-review kembali hal-hal yang terkait dengan sistem basis data ini1. Deductive Database disebut juga Logic Databases, karena mampu memberikan informasi turunan mengenai suatu fakta2. Deductive Database bersifat deklaratif3. Deductive Database menyajikan data yang tidak monotonik4. Deductive Database menggunakan konsep Prolog dalam implementasinya5. Deductive Database dapat diinterpretasikan melalui lebih dari satu cara pemahamanDeductive database telah mampu menjadi interface antara permasalahan teoritis dan praktikal. Untuk menjadi ekstensi basis data relasional dengan tetap memiliki gaya pemrograman yang deklaratif, Deductive Database menggunakan bahasa berbasiskanrulesyang mampu mengekspresikan aplikasi yang komplit. Dengan ini, diyakini bahwa Deductive Database akan bisa meningkatkan kemampuan sistem basis data untuk menjadi solusi permasalahan di masa depan, secara substansial. Beberapa hal yang dapat dilakukan oleh sistem basis data ini adalah kemampuan untuk mengekspresikan query yang kompleks untuk mengidentifikasikan pola pengembangan dalam database yang besar, dan berurusan dengan database heterogen yang terdistribusi.Jadi cukup sudah pengetahuan mendasar yang bisa dipaparkan disini mengenai Deductive Database. Semoga jadi bermanfaat, dan dapat menumbuhkan minat teman-teman yang membaca tentang keilmuan Basis Data.TERIMA KASIH....!!!:)============================================================ THE END.