• Tidak ada hasil yang ditemukan

Ke tergantungan Fungsional (Func tional De pe ndencies)

Dalam dokumen BASIS DATA 1 MODUL PRAKTIKUM (Halaman 48-53)

NORMALISASI DATA

1.2. Ke tergantungan Fungsional (Func tional De pe ndencies)

Functional Dependency menggambarkan hubungan attributes dalam sebuah relasi. Suatu atribut dikatakan functionally dependant pada yang lain jika kita menggunakan harga atribut tersebut untuk menentukan harga atribut yang lain. Simbo l yang digunakan adalah à untuk me wakili functional dependency (à dibaca secara fungsional menentukan).

Notasi: A à B

A dan B adalah atribut dari sebuah tabel. Be rart i secara fungsional A menentukan B atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama. Diberikan 2 baris r1 dan r2 da la m tabel T d imana AàB

Jika r1(A)=r2(A), maka r1(B) = r2(B)

Dimisalkan re lasi n ila i_ mhs me miliki e mpat buah atribut/fie ld yaitu nama_ku l, n im, na ma_ mhs dan nila i. Ma ka ketergantungan fungsional pada relasi tersebut adalah:

a. nim à na ma_ mhs

yang artinya bahwa atribut nama_mhs hanya tergantung pada atribut nim. Hal in i dibukt ikan dari fa kta: untuk setiap nila i n im yang sama , ma ka pasti nila i na ma_ mhs nya juga sama.

b. nama_ku l, n im à nilai

yang berarti bahwa atribut nilai tergantung pada atribut nama_kull dan nim secara bersama-sa ma. Untuk ketergantungan fungsional seperti ini sesuai dengan pengertian bahwa setiap nilai diperuntukkan pada mahasiswa tertentu untuk mataku liah tertentu yang diamb il. Da la m arti lain untuk na ma_kul dan nim yang sama, ma ka nila i juga sama , ka rena nama_ku l dan nim merupakan key (bersifat unik).

Adalah kebalikan dari notasi sebelumnya, dengan hanya melihat fa kta yang ada, yaitu:

a. nama_ku l non à nim

yang artinya atribut nim tida k tergantung pada atribut nama_ku l. b. nim nonà nilai

yang artinya atribut nilai t idak hanya tergantung pada atribut nim, karena tergantung pula pada atribut nama_ku l yaitu na ma ku liah yang dia mbil oleh n im.

1.3. Bentuk-Bentuk Nor malisasi

Bentuk-bentuk normal dapat dimanfaatkan untuk me mpero leh tabel dan basis data yang lebih baik.

1.3.1. Bentuk Nor mal Pertama (1NF)

Suatu tabel dikatakan dala m bentuk norma l perta ma hanya ka lau setiap kolo m bernila i tunggal untuk setiap baris. Sehingga tidak diperbo leh adanya :

Atribut yang bernilai banyak (Multivalued attribut). Attribut komposit atau ko mbinasi dari keduanya.

Berikut ini akan d icontohkan normalisasi dari tabel ku liah yang me miliki atribut:

Kode_kul Na ma_ku l Sks Smstr Waktu Ruang Na ma_do

C1234 Matematika 1 2 1 1 RKB-3 Devie

C1243 Riset Operasi 2 5 1 RKB-1 Rosa

C1342 ADSI 2 3 2 RKB-3 Anamisa

Tabel kuliah tersebut tidak me menuhi norma lisasi pertama, karena terdapat atribut waktu yang tergolong ke dala m atribut bernila i banyak. Agar tabel

tersebut dapat me menuhi 1NF, ma ka solusinya adalah mendeko mposisi tabel kuliah menjad i:

1. Tabel Ku liah

Kode_kul Na ma_ku l Sks Smstr Na ma_dosen

C1234 Matematika 1 2 1 Devie

C1243 Riset Operasi 2 5 Rosa

C1342 ADSI 2 3 Anamisa

2. Tabel Jadwa l

Kode_kul Waktu Ruang

C1234 1 RKB-3

C1243 1 RKB-1

C1342 2 RKB-3

1.3.2. Bentuk Nor mal Ke dua (2 NF)

Suatu tabel disebut dalam bentuk normal kedua, jika :

1.

Tabel berada dala m bentuk norma l perta ma

2.

Se mua ko lo m yang bukan primary key tergantung sepenuhnya terhadap prima ry key

3.

Disebut tergantung sepenuhnya terhadap prima ry key jika suatu kolom selalu bernilai sama untuk nila i prima ry key yang sama.

Sebuah tabel dikatakan tida k me menuhi 2NF, jika ketrgantungan hanya bersifat parsial (hanya tergantung pada sebagian dari primary key). Bentuk norma l kedua akan dicontohkan pada tabel nilai berikut ini:

Kode_kul Nim Nila i

C1234 7402030007 A

C1342 7402030009 B

Jika pada tabel nilai, misalnya kita ta mbahkan sebuah atribut yang bersifat redudan yaitu nama_ mhs, ma ka tabel n ila i ini dianggap me langgar 2NF. Primary key pada tabel nilai adalah [kode_kul, nim]. Pena mbahan atribut baru (nama_ mhs) a kan menyebabkan adanya ketergantungan fungsional yang baru yaitu nimàna ma_ mhs. Karena atribut nama_ mhs ini hanya me miliki ketergantungan parsial pada prima ry key secara utuh (hanya tergantung pada nim, padahal nim hanya bagian dari prima ry key). Bentuk norma l kedua ini dianggap belum me madai karena meninjau sifat ketergantungan atribut terhadap prima ry key saja.

1.3.3. Bentuk Nor mal Ke tiga (3 NF)

Suatu tabel dikatakan dala m bentuk norma l ketiga, jika : 1. Berada dala m bentuk normal kedua

2. Setiap ko lo m bukan prima ry key t idak me miliki ketergantung transitif terhadap prima ry key

Suatu kolo m Z me miliki ketergantungan transitif terhadap kolo m X, jika : 1. Y me miliki ketergantungan fungsional terhadap X, dan

2. Z me miliki ketergantungan fungsional terhadap Y

Misalkan pada tabel Mahasiswa, atribut alamat_ mhs dipecah ke dalam ala mat_ja lan, ala mat_kota dan kode_pos. Bentuk ini tidak me menuhi 3NF karena terdapat ketergantungan fungsional baru yang muncul pada tabel tersebut yaitu:

ala mat_ja lan nama_ kota à kode_pos

Dala m ha l in i (a la mat_ja lan, na ma_kota) bukan superkey sementara kode_pos juga bukan bagian dari prima ry key pada tabel mahasiswa. Jika tabel mahasiswa dideko mposisi menjad i tabel mahasiswa dan tabel ala mat, maka

telah me menuhi 3NF. Hal ini dapat dibuktikan dengan me meriksa dua ketergantungan fungsional pada tabel ala mat tersebut, yaitu:

ala mat_ja lan nama_ kota à kode_pos kode_pos à nama_kota

1.4. Bentuk Nor mal Tahap Kee mpat dan Kelima

Penerapan aturan norma lisasi sampai bentuk normal ketiga sudah me madai untuk menghasilkan tabel berkualitas baik. Na mun de mikian, terdapat pula bentuk norma l kee mpat (4NF) dan ke lima (5NF). Bentuk Normal Kee mpat berka itan dengan sifat ketergantungan banyak nila i (mult ivalued dependency) pada suatu tabel merupakan pengembangan dari ketergantungan fungsional. Sedangkan bentuk normal tahap kelima merupakan na ma la in dari Project Jo in Normal Form (PJNF).

1.5. Boyce Codd Nor mal For m (BCNF)

Bentuk norma l ketiga 3NF dapat dikatakan BCNF karena sudah cukup me madai untuk menghasilkan tabel-tabel yang berkualitas baik. Sebuah tabel dikatakan baik (efisien) atau norma l jika me menuhi 3 kriteria sbb:

1. Jika ada deko mposisi (penguraian) tabel, maka de ko mposisinya harus dija min a man (Lossless-Join Decomposition). Artinya, setelah tabel tersebut diuraikan / dideko mposisi men jadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel se mula dengan sama persis.

2. Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation).

3. Tidak melanggar Boyce-Code Norma l Form (BCNF).

Jika krite ria ketiga (BCNF) tida k dapat terpenuhi, ma ka paling tidak tabel tersebut tidak me langgar Bentuk Norma l tahap ketiga (3rd Norma l Form / 3NF).

Re lasi R dengan ketergantungan fungsional F termasuk dala m bentuk BCNF jika untuk semua X à A yang ada dalam F. Dengan kata la in, R berada dala m BCNF jika ketergantungan fungsional non-trivia l pada R me miliki key constraint.

2.

Kegiatan Pr aktikum

1. Terdapat suatu bentuk tabel informasi seperti berikut in i :

Tabel 9.1. Informasi Buku

ISBN Judul Hala man Topik

979-533-791-2

Basisdata 60 Data De fin ition Language Data Manipulation Language

Data Control Language

978-532-792-3

Matematika 90 Probabilitas

Permutasi dan Ko mbinasi

977-534-793-4

PHP 90 Pe mrogra man

Internet

Bagaimana bentuk tabel-tabel yang menyimpan data pada

Dalam dokumen BASIS DATA 1 MODUL PRAKTIKUM (Halaman 48-53)

Dokumen terkait