Sunday, May 27, 2018

DBMS Query Translation - Aljabar Relational Part1

Assalamu'alaikum

Selamat siang, selamat berpuasa, salam data management. Di pertemuan kali ini saya kembali ingin mambahas masalah database, jadi mohon dimaafkan karena delay dulu artikel tentang jaringannya ya gaess. Lanjut, setelah membahas 2 pertemua database kebelakang tentang pengenalan mengenai database. Maka kali ini kita akan masuk kedalam pembahasan Aljabar Relational. Langsung saja disimak di pembahasan berikut ini.

Siklus Proses DBMS Mentranslasikan Bahasa Query

Seperti yang sudah saya bahas sebelumnya, database relational di kemukakan oleh Dr. E.F Codd dengan metode matematika. Tentu karena hal tersebut, relational database yang kita perlajari ini tidak luput dari proses matematika dimana proses ini diolah oleh si aplikasi DBMS dari sebuah bahasa query yang di lakukan oleh IT implement. 




Proses DBMS mentranslasikan bahasa query tersebut tidaklah secepat kita hanya menginput bahasa query saja. Namun, DBMS melakukan proses translasi salah satunya di proses translasi tersebut ada aljabar relational. Tidak hanya aljabar relational, di proses ini juga dilakukan translasi yang lain sehingga bahasa query yang kita inputkan bisa dijalankan oleh DBMS. Proses translasi tersebut adalah sebagai berikut.
  • SQL (Structured Query Languange) atau bahasa query yang di jalankan oleh seseorang akan di translasikan ke
  • Aljabar Relational, dimana proses ini menggunakan metode dan simbol simbol yang berkaitan erat dengan aljabar relational. 
  • Setelah sudah menjadi Aljabar relational, di olah kembali menjadi kalkulus relational tuple. Bentuk matematika yang lebih rumit setelah ajlabar.
  • Dan proses terakhir setelah kalkulus relational tuple terbentuk, diolah kembali lagi menggunakan metode kalkulus relational domain.
Baik Aljabar relational dan kalkulus relational adalah bahasa formal dan non user friendly languange. Jadi jangan salah kalau kita akan pusing karena mempelajari proses ini, wajarkan saja kalau proses ini hanya bisa ditangani oleh mesin DBMS :v. 

Aljabar Relational

Menurut Connolly, Begg, dan Strachan (2005), aljabar relasional adalah bahasa teoritis dengan operasi-operasi yang bekerja pada satu atau lebih relasi untuk mendefinisikan relasi lainnya   tanpa mengubah relasi aslinya. Baik operand maupun hasilnya merupakan relasi, dan juga output dari satu operasi dapat menjadi input bagi operasi yang lain. 

Hal ini memungkinkan ekspresi pada aljabar relasional menjadi bertingkat, sama seperti operasi aritmatik bertingkat. Dimana operasi operasi fundamental pada aljabar relasional adalah sebagai berikut
  • Selection > memilih
  • Projection > memilih yang diinginkan
  • Cartesian Product > Pencarian tabel berbeda dengan kolom (attribut) yang diinginkan.
  • Union
  • Set Difference > Mencari perbedaan antara tabel yang berbeda
  • Join
  • Intersection
  • Theta Join

Operasi Dasar Pada Aljabar Relational

Secara umum, operasi dasar pada pengelolaan database terbagi menjadi 2. Yaitu operasi yang hanya beroperasi pada satu relasi atau entitas (tabel) yaitu operasi Unary dan yang kedua adalah operasi yang bisa melibatkan lebih dari satu relasi yaitu operasi Set. Operasi Selection dan projection termasuk operasi unary dan operasi Cartersian product, union, set difference dan intersection merupakan bagian dari operasi Set.



Berikut ini contoh tabel database yang akan kita ujicoba kan pada operasi operasi dibawah. Disini, kita memiliki 3 tabel yaitu tabel Mahasiswa, tabel Matakuliah dan Tabel Nilai.

Operasi Unary - Selection

Dinotasikan dengan σ predicate (R). Operator ini digunakan untuk sebuah relasi saja, artinya hanya melakukan operasi pada satu tabel saja. Fungsi operasi ini untuk mendefinisikan atau menampilakan sebuah baris yang memenuhi kondisi yang diinginkan. Operasi ini dapat menggunakan operator matematika (<,>,>=,<=,=,#) dan juga bisa menggunakan operator ^ (And) atau v (Or).  

Contoh1 : Diminta tampilkan daftar mahasiswa dari jurusan sistem informasi
Aljabar Relational : σJurusan=’Sistem Informasi’(MAHASISWA)
Output :


Contoh2 : Diminta tampilkan mahasiswa dari jurusan sistem informasi atau akuntasi.
Aljabar Relational : σJurusan=’Sistem Informasi’  V Jurusan=’Akuntansi’  (MAHASISWA)
Output :

Operasi Unary - Projection

Dinotasikan dengan πcol1, col2, …, coln (R). Sama seperti selection, operasi ini digunakan untuk satu relasi saja. Perbedaannya, operasi ini menampilkan kolom kolom (attribute) yang diinginkan saja. 

Contoh1 : Diminta buat daftar semua nama mahasiswa, namun hanya menampilkan data NPM, NamaMhsw, dan Jurusan.
Aljabar Relational : πNPM, NamaMhsw, Jurusan (MAHASISWA)
Output : 

Contoh2 : Diminta buat daftar semua nama mahasiswa, tampilkan hanya data NPM, NamaMhsw, dan Jurusan. Dimana jurusannya hanya sistem informasi saja.
Aljabar Relational : πNPM, NamaMhsw, Jurusan(σJurusan=’Sistem Informasi’ (MAHASISWA))
Output :
 
Cukup sekian pertemuan di pembahasan kali ini, part2 mengenai aljabar relational akan kita bahas di pertemuan berikutnya. Insya Allah akan membahas tentang operasi operasi Set yang melibatkan lebih dari satu relasi. Sekian dari saya, saran dan pertanyaan bisa letakkan di kolom komentar. Terima kasih sudah berkunjung. Salam Data Management.

0 komentar:

Post a Comment

Kenal Saya

Follow My Twitter

Profil



Nama saya Alfa Farhan Syarief, web ini ada berdasarkan nama saya sendiri. Saya sendiri masih duduk tingkat SMK. Lebih lengkapnya saya masih bersekolah di SMKN 1

More »

Blog Archive

Recent Comment