Aljabar Relasional

Tugas Skema Basis Data Relasional 

oleh : DafaAryaNugraha_D1041191021


Model Data Relasional adalah suatu model basis data yang menggunakan tabel dua dimensi,  yang terdiri atas baris dan kolom untuk menggambarkan sebuah berkas data.  Model ini menunjukkan cara mengelola/mengorganisasikan data secara fisik dalam memory sekunder, yang akan berdampak pula pada bagaimana kita mengelompokkan data dan membentuk keseluruhan data yang terkait dalam sistem yang kita buat.


Istilah Dalam Model Basis Data Relasional

  • Relasi : Sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris.

  • Atribut : Kolom pada sebuah relasi (field)

  • Tupel : Baris pada sebuah relasi (record).

  • Domain : Kumpulan nilai yang valid untuk satu atau lebih atribut

  • Derajat (Degree) : Jumlah atribut dalam sebuah relasi (jumlah field)

  • Cardinality : Jumlah tupel dalam sebuah relasi (jumlah record)

Relational Key

Dalam sebuah basis data, untuk mencari satu data dari keseluruhan data secara umum, dibutuhkan kunci untuk mempermudah pencarian dan mempersingkat waktu yang digunakan untuk melakukan pencarian tanpa harus melakukan penelusuran terhadap seluruh data. Kunci-kunci relasional dalam basis data, terutama dalam model data relasional adalah sebagai berikut.

  1. Super key : Satu atribut/kumpulan atribut yang secara unik mengidentifikasi sebuah tupel di dalam relasi (satu atau lebih field yang dapat dipilih untuk membedakan antara 1 record dengan record lainnya)

  2. Candidate key : Atribut di dalam relasi yang biasanya mempunyai nilai unik (super key dengan jumlah field yang paling sedikit)

  3. Primary key : Candidate key yang dipilih untuk mengidentifikasikan tupel secara unik dalam relasi

  4. Alternate key : Candidate key yang tidak dipilih sebagai primary key

  5. Foreign key : Atribut dengan domain yang sama yang menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa

Relational Integrity Rules 

  1. Null : Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersebut.

  2. Entity Integrity : Tidak ada satu komponen primary key yang bernilai null.

  3. Referential Integrity : Suatu domain dapat dipakai sebagai kunci primer bila merupakan atribut tunggal pada domain yang bersangkutan.

Bahasa Pada Model Data Relasional

Model data relasional menggunakan bahasa query, yaitu pernyataan yang diajukan untuk mengambil informasi. Query terbagi dua, yaitu:

1. Bahasa Query Formal

Yaitu bahasa Query yang diterjemahkan menggunakan bahasa atau simbol-simbol matematis. Bahasa Qery Formal terbagi menjadi dua juga, yaitu:

  • Prosedural, yaitu bahasa query di mana pemakai harus memberi spesifikasi data yang dibutuhkan dan bagaimana cara mendapatkannya, misalnya aljabar relasional.

  • Non Prosedural, yaitu bahasa query dimana pemakai menjelaskan tupel yang diinginkan dengan menspesifikasikan predikat tupel yang diinginkan, misalnya kalkulus relasional. Kalkulus relasional terbagi dua, yaitu Kalkulus Relasional Tupel dan Kalkulus Relasional Domain.

2. Bahasa Query Komersial

Bahasa Query Komersial adalah bahasa query yang dirancang oleh programmer sendiri sebagai suatu aplikasi yang user friendly agar lebih mudah digunakan. Contoh dari bahasa query ini antara lain: QUEL, QBE (Keduanya berbasis bahasa kalkulus relasional), lalu SQL yang menjadi bahasa pemrograman dari aplikasi database MySQL, yang berbasis bahasa kalkulus relasional dan aljabar relasional.


Aljabar Relasional

Aljabar relasional adalah sebuah bahasa query prosedural yang terdiri dari sekumpulan operasi dimana masukkannya adalah satu atau dua relasi dan keluarannya adalah sebuah relasi baru sebagai hasil dari operasi tersebut. Operasi-operasi dasar dalam aljabar relasional antara lain :

1. Select

Operasi select berfungsi untuk menyeleksi tuple-tuple yang memenuhi predikat yang diberikan dari sebuah tabel relasi. Simbol sigma “σ” digunakan untuk menunjukkan operasi select. Predikat muncul sebagai subscript dari σ dan kondisi yang diinginkan yang ditulis dalam predikat. Argumen diberikan dalam tanda kurung yang mengikuti σ dan berisi tabel relasi yang dimaksud.

2. Project

Operasi project berfungsi untuk memilih nilai atribut-atribut tertentu saja dari sebuah tabel relasi. Simbol phi “Π” digunakan untuk menunjukkan operasi project. Predikat muncul sebagai subscript dari Π dan hanya nama atribut yang diinginkan yang ditulis dalam predikat. Argumen diberikan dalam tanda kurung yang mengikuti Π dan berisi tabel relasi yang dimaksud.

3. Union

Operasi union berfungsi untuk mendapatkan gabungan nilai atribut dari sebuah tabel relasi dengan nilai atribut dari tabel relasi lainnya. Simbol “” digunakan untuk menunjukkan operasi union. Operasi union bernilai benar bila terpenuhi 2 kondisi, yaitu : Derajat dari 2 tabel relasi yang dioperasikan harus sama dan domain dari atribut yang dioperasikan juga harus sama.

4. Set Differences

Operasi set difference berfungsi untuk mendapatkan nilai yang ada dalam sebuah tabel relasi, tapi tidak ada dalam tabel relasi lainnya. Simbol “-“ digunakan untuk menunjukkan operasi set difference.

5. Cartesian Product

Operasi cartesian product berfungsi untuk mengkombinasikan informasi yang ada dalam 2 tabel relasi dan menghasilkan sebuah tabel relasi yang baru. Simbol “x“ digunakan untuk menunjukkan operasi set difference.


Untuk operasi-operasi tambahannya adalah sebagai berikut :


1. Set Intersection

Operasi set intersection berfungsi untuk mendapatkan nilai yang ada dalam sebuah tabel relasi dan juga ada dalam tabel relasi lainnya. Simbol “∩“ digunakan untuk menunjukkan operasi set intersection.

2. Natural Join

Operasi natural join memungkinkan kita untuk menggabungkan operasi select dan cartesian product menjadi hanya 1 operasi saja. Simbol ““ digunakan untuk menunjukkan operasi natural join. Operasi natural join hanya menghasilkan tupel yang mempunyai nilai yang sama pada 2 atribut yang bernama sama pada 2 tabel relasi yang berbeda.

3. Division

Operasi division berfungsi untuk query yang memasukkan frase “untuk semua/seluruh”. Simbol “÷“ digunakan untuk menunjukkan operasi division.

4. Theta Join  

Operasi theta join berfungsi jika kita ingin mengkombinasikan tupel dari 2 tabel relasi dimana kondisi dari kombinasi tersebut tidak hanya kesamaan nilai dari 2 atribut bernama sama, tetapi kondisi yang diinginkan juga bisa menggunakan operator relasional (≤, <, =, >, ≥). Operasi theta join merupakan ekstensi dari natural join.

Comments

Popular posts from this blog

ERD (Entity Relationship Diagram)

Project Life Cycle dan Metodologi Pengembangan Perangkat Lunak

Perancangan Sistem 2