• Tidak ada hasil yang ditemukan

Basis Data dan SBP

N/A
N/A
Protected

Academic year: 2018

Membagikan "Basis Data dan SBP"

Copied!
55
0
0

Teks penuh

(1)

Basis Data dan SBP

(2)
(3)
(4)

Desain Skema Relasi

• Database dapat dimodelkan sebagai:

– kumpulan entitas,

– Atribut adalah properti yang digunakan untuk menggambarkan suatu entitas.

• Desain database relasional?

– Pengelompokan atribut untuk membentuk skema relasi yang "baik".

– Untuk mengukur kualitas disain.

(5)

Panduan Desain Informal untuk

Skema Relasi

1. Semantik yang Jelas untuk Atribut dalam relasi

2. Redudansi informasi di Tupel dan Anomali

(6)

1. Semantik yang Jelas untuk Atribut

dalam relasi

Guideline #01:

•Secara informal, masing-masing tupel dalam relasi harus mewakili satu entitas atau hubungan

instance

– Atribut-atribut dari entitas yang berbeda (EMPLOYEE, DEPARTMENT, PROJECT) sebaiknya tidak digabung dalam relasi yang sama

– hanya foreign key yang harus digunakan untuk merujuk ke entitas lain

(7)

Skema database relasional

(8)

Contoh kondisi database untuk

(9)

2. Redudansi Informasi Pada Tupel

dan Anomali

• Salah satu tujuan desain skema adalah

meminimalkan ruang penyimpanan yang digunakan oleh relasi dasar

• Pengelompokan atribut ke dalam skema relasi

memiliki pengaruh yang signifikan terhadap ruang penyimpanan

• Informasi yang disimpan secara berlebihan atau redudansi membuang-buang penyimpanan

• Contoh:

(10)

Contoh Skema dan Kondisi Untuk

EMP_DEPT

(11)

2. Redudansi Informasi Pada Tupel

dan Anomali

Insertion Anomalies:

•Untuk memasukkan tupel karyawan baru ke dalam EMP_DEPT, harus disertakan nilai

atribut untuk departemen dimana karyawan tersebut bekerja, atau NULL (jika karyawan tersebut tidak bekerja untuk departemen

manapun).

(12)

2. Redudansi Informasi Pada Tupel

dan Anomali

Deletion Anomalies:

•Jika kita menghapus dari EMP_DEPT sebuah tupel karyawan yang kebetulan mewakili pegawai terakhir yang bekerja untuk departemen tertentu, informasi

(13)

2. Redudansi Informasi Pada Tupel

dan Anomali

Modification Anomalies:

•Dalam EMP_DEPT, jika kita mengubah nilai salah satu atribut dari departemen

tertentu (katakanlah, manajer departemen 5) kita harus memperbarui tupel dari semua

karyawan yang bekerja di departemen

(14)

2. Redudansi Informasi Pada Tupel

dan Anomali

Guideline #02:

(15)

3. Nilai Null dalam Tupel

• Banyak atribut dapat dikelompokkan menjadi relasi "gemuk".

• Jika banyak atribut bernilai NULL pada tupel dalam sebuah relasi, ini bisa menghabiskan banyak ruang di tingkat penyimpanan.

• Alasan untuk Null:

– Atribut tidak berlaku atau tidak valid

– Nilai atribut tidak diketahui (boleh ada).

(16)

3. Nilai Null dalam Tupel

Guideline #03:

Hubungan harus dirancang sedemikian rupa sehingga tupel akan memiliki nilai NULL

sesedikit mungkin.

(17)

Ketergantungan Fungsional

• Merupakan konsep yang mendasari normalisasi.

Dependensi menjelaskan hubungan antar atribut, atau secara lebih khusus menjelaskan nilai suatu atribut yang menentukan nilai atribut lainnya.

• Ada beberapa jenis ketergantungan (dependency)

1. Ketergantungan Fungsional / Functionally Dependency

(FD)

2. Ketergantungan Fungsional Penuh / Full Functionally Dependency (FFD)

(18)

Ketergantungan Fungsional

• Ketergantungan Fungsional menggambarkan hubungan atribut dalam sebuah relasi.

• Suatu atribut dikatakan Ketergantungan

Fungsional pada yang lain, jika menggunakan harga atribut tersebut untuk menentukan

harga atribut yang lain.

• Simbol yang digunakan adalah  (dibaca

(19)

Ketergantungan Fungsional

• Suatu atribut Y mempunyai

ketergantungan fungsional terhadap

atribut X, jika dan hanya jika setiap nilai X berhubungan dengan sebuah nilai Y.

– Definisi di atas dituangkan dalam bentuk notasi X Y

(20)

Ketergantungan Fungsional

• Contoh

Terdapat relasi PESANAN_JUAL yang dinotasikan dengan :

PESANAN_JUAL (PEMBELI, KOTA, BARANG, JUMLAH)

Yang artinya bahwa relasi PESANAN_JUAL mengandung atribut PEMBELI, KOTA,

(21)

Ketergantungan Fungsional

PEMBELI KOTA BARANG JUMLAH

(22)

Ketergantungan Fungsional

• Pada contoh ini, PEMBELI secara fungsional menentukan KOTA, sebab terlihat bahwa untuk PEMBELI yang sama, KOTA-nya juga sama.

• Dengan demikian: PEMBELI  KOTA contoh lain:

{Pembeli, Barang} Jumlah {Pembeli, Barang} Kota

(23)

Ketergantungan Fungsional

Bagian yang terletak di sebelah kiri panah

biasa disebut penentu (determinan) dan yang di sebelah kanan panah disebut yang tergantung (dependen).

Tanda { } biasa digunakan kalau ada lebih

(24)

Ketergantungan Fungsional Penuh

• Suatu atribut Y mempunyai

ketergantungan fungsional penuh terhadap atribut X, jika

– Y mempunyai ketergantungan fungsional terhadap X

– Y tidak memiliki ketergantungan terhadap bagian dari X

(25)

Functional Dependency:

• NRP  Nama

• {Mata_Kuliah, NRP}  Nilai Non Functional Dependency: • Mata_Kuliah  NRP

• NRP  Nilai

(26)

Ketergantungan Fungsional Penuh

• contoh, terdapat relasi pelanggan:

Pelanggan(KODE_PELANGGAN,NAMA,KOTA, NOMOR_FAX )

• Pada relasi ini:

1. {KODE_PELANGGAN, KOTA} NOMOR_FAX 2. KODE_PELANGGAN NOMOR_FAX

• KET: Mengingat bahwa Nomor_Fax bergantung pada {KODE_PELANGGAN, KOTA} (kondisi 1) dan bergantung pada KODE_PELANGGAN (Kondisi 2) yang tidak lain adalah bagian dari {KODE_PELANGGAN,KOTA}, maka Nomor_Fax hanya mempunyai ketergantungan fungsional sepenuhnya terhadap

(27)

Ketergantungan Fungsional Penuh

Contoh : Pembeli → Kota

{Pembeli, Barang} → Kota

Kota mempunyai depedensi fungsional

terhadap Pembeli atau {Pembeli, Barang} tapi kota mempunyai depedensi fungsional

sepenuhnya terhadap pembeli bukan

(28)

Ketergantungan Transitif

• Atribut Z mempunyai ketergantungan transitif terhadap X bila:

– Y memiliki ketergantungan fungsional terhadap X

– Z memiliki ketergantungan fungsional terhadap Y

(29)

Definisi :

Atribut Z pada relasi R dikatakan tergantung transitif pada atribut X, jika atribut Y tergantung pada atribut X pada relasi R dan atribut Z tergantung pada atribut Y pada relasi R. ( X Y, Y Z, maka X

Z ) Contoh :

Ketergantungan transitif :

No-pem  Kode-kota Kode-kota  Kota , maka No-pem  Kota

(30)

Ketergantungan Transitif

• Gol_gaji ketergantungan fungsional pada NIP dan Gaji_pokok ketergantungan fungsional pada Gol_gaji.

• NIP sebagai X, Gol_gaji sebagai Y, dan Gaji_pokok sebagai Z • Jadi nilai-nilai rinci data pada atribut Gaji_pokok (Z)

bergantung transitif terhadap NIP • X  Y  Z

NIP  Gol_gaji Gaji_pokok

NIP Nama Gol_gaji Gaji_pokok

0001 Ian III A 600000

0002 Saputra III B 650000

0003 Rohim III A 600000

(31)

Ketergantungan Total

• Suatu atribut Y mempunyai

ketergantungan total pada atribut X jika:

– Y memiliki ketergantungan fungsional terhadap X

– X memiliki ketergantungan fungsional terhadap Y

(32)

Ketergantungan Total

Contoh :

PEGAWAI

(NO-INDUK,NAMA,TMP-LAHIR,TG-LAHIR, ALAMAT) Dengan demikian notasi dapat ditulis:

(33)
(34)

Definisi

• Cara pendekatan dalam membangun

desain logika basis data relasional yang tidak secara langsung berkaitan dengan model data tetapi dengan menerapkan

sejumlah aturan dan kriteria standar untuk menghasilkan struktur tabel yang normal • Proses pengelompokan data elemen

(35)

Tujuan

MENDESAIN DATABASE RELASIONAL

DENGAN TABEL-TABEL YANG:

– berisi data yang diperlukan

memiliki sesedikit mungkin redundansimengefisienkan update

– menghindari kemungkinan kehilangan data secara tidak disengaja/tidak diketahui

(36)

Ciri-ciri Database Tidak Normal

• INSERTION ANOMALY

Yaitu kesalahan yang terjadi sebagai akibat operasi menyisipkan tuple/record pada sebuah relasi.

• DELETION ANOMALY

Yaitu kesalahan yang terjadi sebagai akibat operasi

penghapusan terhadap tuple/record dari sebuah relasi.

• UPDATE ANOMALY

(37)
(38)

Syarat Tabel Normal

Jika ada dekomposisi/penguraian tabel, maka dekomposisinya dijamin aman

(lossless-join decomposition)

terpeliharanya ketergantungan functional pada saat perubahan data (dependency preservation)

Tidak melanggar Boyce Code Normal Form (BCNF), jika tidak bisa minimal tidak

(39)
(40)

Contoh Lossless-Join Decomposition

Lossless join decomposition

(41)
(42)

Decomposition?

• (Nim, Nama) dan

(43)
(44)

Ketergantungan Fungsional

• Diberikan sebuah tabel/relasi T. Atribut B dari T bergantung secara fungsi pada

(45)
(46)

Latihan

• Tunjukkan apakah dekomposisi terhadap Data Mahasiswa pada contoh termasuk Lossless Join Decomposition atau Lossy Join Decomposition, untuk dekomposisi berikut

– (NIM, Nama, Kode) dan (Kode, Matkul, SKS, Nilai) – (NIM, Kode) dan (Kode, Nama, Matkul, SKS, Nilai) – (NIM, Nama) dan (NIM, Kode, Matkul, SKS, Nilai)

(47)

Bentuk-Bentuk Normalisasi

• Bentuk tidak normal

Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti format tertentu, dapat saja tidak lengkap dan terduplikasi. Data dikumpulkan apa adanya sesuai keadaannya

• Bentuk normal tahap pertama (1st Normal Form)

(48)

Bentuk-Bentuk Normalisasi

• Bentuk normal tahap kedua (2nd normal form)

– memenuhi 1st NF

– Atribut bukan kunci tergantung penuh pada atribut kunci

• Boyce Code Normal Form (BCNF)

– memenuhi 1st NF

(49)
(50)
(51)
(52)

Bentuk Normal 2

KdFaktur  Tgl, Jtempo, KodeSup, NamaSup KdFaktur, Kodebrg  NamaBrg, Qty, Harga

Bentuk BCNF

KdFaktur  Tgl, Jtempo, KodeSup KdSup  NamaSup

(53)

• Dari fakta pada gambar di halaman berikutnya, buatlah tabel-tabel:

– Bentuk Tidak Normal

– Bentuk Normal Pertama – Bentuk Normal Kedua – Bentuk BCNF

(54)
(55)

Referensi

Dokumen terkait

Keunggulan yang dimiliki produk ini adalah mengangkat penggunaan kayu bulat sebagai bahan baku yang menghasilkan sisa limbah yang sampai saat ini diefisiensikan

Dampak negatif handphone pada masyarakat, adalah penipua pada umumnya penipuan dilakukan orang dengan memakai HP, seperti menipu atau meneror seseorang melalui SMS, jadi

Tingginya pertumbuhan panjang harian pada padat tebar 1 ekor/l diduga karena memiliki ruang gerak yang sesuai dimana tidak terlalu sempit, kualitas air yang masih

Angka pada kolom yang sama yang diikuti oleh huruf yang sama menunjukkan tidak berbeda nyata berdasarkan uji BNT 5% Panjang buah dan Diameter buah.. Genotipe tanaman

Dari uraian pada paragraf di atas dapat ditulis di sini bawa data pertanahan yang baik, yang masuk dalam KW1 atau KW2 atau KW3 adalah sejumlah 19 juta bidang

Unit Analysis in this research is Financial Statement Badan Pertanahan Nasional Kabupaten Sidoarjo 2011, to learn recognition, measurement, and presentation revenue

pelaksanaan izin usaha pertambangan mineral, dan batubara untuk operasi produksi, serta panas bumi yang berdampak lingkungan langsung lintas provinsi dan/atau dalam wilayah

Oleh karena usaha klinik kesehatan bersama merupakan institusi yang relatif baru diselenggarakan di Indonesia, sehingga dalam sistem hukum di Indonesia dapat dilihat ada