Jumat, 23 Oktober 2020

Basis Data Relasional

Model Relasional 

Basis Data Relasional menggunakan tabel dua dimensi  yang terdiri atas baris dan kolom untuk memberi gambaran sebuah berkas data. Basis data terdiri dari kumpulan dari satu atau lebih relasi, masing-masing relasi merupakan tabel yang terdiri dari baris dan kolom.

Keuntungan Basis Data Relasional 

1. Bentuknya sederhana 

2. Mudah untuk melakukan berbagai operasi data 

Istilah dalam Basis Data Relasional 

Relasi

kontruksi utama merepresentasikan data dalam model relasional adalah relasi. Relasi pertama kali didefinisikan menggunakan teori himpunan. Cara mudah untuk mendefinisikan sebuah relasi adalah sebagai sebuah tabel dimana data-datanya disimpan dalam baris tabel. Relasi terdiri dari skema relasi dan contoh relasi.

sebuah relasi harus representasi logik yaitu :

1. tidak terdapat duplikasi baris

2. urutan baris tidak diperhatikan 

3. setiap kolom dalam satu relasi mempunyai sebuah nama yang unik

Atribut : merupakan kolom pada sebuah relasi.

Tupel  : baris pada sebuah relasi 

Domain : kumpulan nilai yang valid untuk satu atau lebih atribut

Derajat : jumlah atribut dalam sebuah relasi

Cardinality : jumlah tupel dalam sebuah relasi


Relational Keys

  • Super Key

Adalah sebuah atau sekumpulan atribut yang secara unik mengidentifikasi sebuah tupel dalam tabel relasi.

  • Candidate Key

Adalah super key yang himpunan bagian yang sebenarnya tidak ada yang menjadi super key juga.

  • Primary Key

Adalah candidate key yang dipilih sebagai pengidentifikasi unik untuk sebuah tabel relasi.

  • Alternate Key

Adalah candidate key yang tidak dipilih sebagai primary key. 

  • Foreign Key 

Adalah atribut dengan domain yang sama menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa

 

Relational Integrity Rule

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  domain yang bersangkutan


Bahasa Pada Basis Data Relasional

Bahasa Formal

bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis  

- Aljabar relasional 

Adalah sekumpulan operasi dimana masukkannya adalah satu atau dua relasi dan keluarannya adalah sebuah relasi baru sebagai hasil dari operasi tersebut. Perintah dasar dari operasi aljabar rasional adalah

- select : operasi yang digunakan untuk memilih tupel-tupel yang memenuhi suatu predikat  menggunakan operator perbandingan 

- project : operasi yang digunakan untuk memilih kolom dalam suatu tabel

- union : menghasilkan suatu tabel baru sehingga tidak ada duplikasi data

- intersection : operasi binary yang digunakan untuk membentuk sebuah relasi baru dengan   tupel yang berasal dari kedua tabel yang dihubungkan 

- set difference : operasi untuk mendapatkan tabel baru dari sebuah relasi dimana elemen barisnya terdapat di r tetapi tidak di ada di s. r dan s harus memiliki jumlah atribut yang sama 

- rename : operasi untuk menyalin tabel lama ke tabel yang baru 

selain itu ada beberapa tambahan operasi seperti 

- cartesian product : proses yang menghasilkan tabel hasil perkalian dua tabel

- natural join : berfungsi untuk menggabungkan operasi selection dan cartesian product menjadi hanya 1 operasi saja.

- theta join : berfungsi untuk mengkombinasikan tupel dari 2 tabel relasi dimana kondisi dari kombinasi tersebut tidak hanya nilai dari 2 atribut bernama sama, tetapi kondisi yang diinginkan juga bisa menggunakan operator relasional (≤, <, =, >, ≥) 

- division : operasi yang berfungsi untuk query yang memasukkan frase "untuk semua/seluruh".

- Kalkulus relasional  

Dalam kalkulus relasional tidak ada penjabaran bagaimana mengevaluasi querinya, hanya menspesifikkan apa yang harus ditampilakan bukan bagaimana menampilkan. Memungkinkan user menggambarkan apa yang mereka inginkan, tidak pada pada bagaimana cara melakukan komputasi terhadap apa yang mereka inginkan tersebut. (tidak bersifat operasional, tapi bersifat deklaratif). 

1. Kalkulus relasional berdasarkan tupel

Dalam kalkulus relasional tupel digunakan variabel dari tupelnya .variabel dari suatu tupel adalah daerah yang terdefinisi sebagai nama dari suatu relasi. 

2. Kalkulus relasional berdasarkan domain

Simbol yang muncul pada formula terdiri dari : konstan (elemen-elemen domain D), variabel (elemen-elemen dari himpunan berhingga V yang dihubungkan dengan domain D), nama relasi (tabel) dan atribut (berdasarkan skema basis data), operator perbandingan (=, ≠, >, >=, <, <=), penghubung logika (Λ ( dan / konjugsi), (V atau/disjungsi), ⌐ (not/negasi), ada/beberapa(  ), dan semua (  )).

Bahasa Komersial

bahasa query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah mengunakannya.

Optimasi Query 

Optimasi query merupakan proses untuk menganalisa query dan menentukan sumber-sumber apa saja yang digunakan oleh query tersebut dan apakah pengguna tersebut di kurangi tanpa merubah output. Ada 3 aspek yang mempengaruhi optimasi query, yaitu:

1. Search Space

2. Cost Model 

3. Search Strategy

Tujuan optimasi query adalah meminimumkan waktu proses, I/O, penggunaan memory dan meminimumkan total waktu pada proses query. Ada 2 cara pendekatan optimasi query, yaitu :

1. Heuristik atau Rule-Based

Optimasi untuk jenis ini mentransformasikan query yang akan meningkatkan kinerja eksekusi yaitu :

Mereduksi jumlah baris dengan melakukan operasi selction 

Mereduksi jumlah atribut dengan melakukan operasi projection 

Mengkonversi query dengan banyak join menjadi query dengan banyak subquery 

Melakukan operasi selection dan join yang paling kecil keluarnya sebelum operasi lain 

2. Cost-Based

Optimasi untuk jenis ini dipergunakan dari beberapa alternatif untuk dipilih menadi salah satu cost yang terendah. Selain itu teknik ini juga mengoptimalkan urutan join terbalik pda relasi-relasi R1 sampai Rn. Pada teknik ini juga dipergunakan untuk mendapatkan pohon left-deep join agar menghasilkan relasi pada node sebelah kanan.

 

Tugas membuat skema basis data relasional :

https://drive.google.com/file/d/1tYTvW--Z4-HAlBTcILvHXtt_9APKg0gm/view?usp=sharing








source : 

http://endysasa.blogspot.com/2012/06/kalkulus-relasional.html


Tidak ada komentar:

Posting Komentar

Analisis dan Design PL

Structured System Analisys and Design  (SSAD) atau Analisis dan Desain Sistem Terstruktur adalah salah satu metodologi dalam mengembangkan ...