Pengertian Functional Dependency
Functional Dependency (FD) ialah suatu ketergantungan relasi yang
terjadi antara atribut dlam tabel atau set entity dengan atribut lain. FD
menggambarkan suatu relationship/ hubungan, batasan, keterkaitan diantara
atribut dlam relasi.
Basis data yang baik hanya terdapat 1 ketergantungan fungsional dalam 1 entity/label, disebut dengan Basis Data Normal. Simbol yang digunakan dalam FD adalah à , yang artinya secara fungsional menentukan.
Notasi Dalam FD
1. Notasi FD: A => B
Maksudnya yaitu A dan B adalah atribut dari suatu tabel. Jadi secara fungsional A menentkan B atau B tergantung dari A, jika dan hanya jika ada 2 basis data dengan nilai yag sama maka nilai B juga akan sama.
2. Notasi: A X=> B
Artinya yaitu kebalikan dari notasi sebelumnya.
Contoh:
NamaKul |
Nrp |
NamaMhs |
NiHuruf |
Struktur Data |
12345 |
Nuril Utami |
A |
Struktur Data |
12346 |
Sekar Sari |
B |
Basis Data |
12345 |
Nuril Utami |
B |
Basis Data |
12346 |
Sekar Sari |
A |
Keterangan dari FD diatas:
1. Nrp --> NamaMhs
Karena untuk
setiap nilai Nrp ynag sama, maka nilai NamaMhs juga akan sama.
2. {NamaKul, Nrp} --> NiHuruf
Karena atribut
Nihuruf tergantng pada NamaKul dan Nrp secara bersama-sama. Atau NamaKul &
Nrp ynag sama, mka NiHuruf juga akan sama, sebab NamaKul dan Nrp merupakan key
yang bersifat unik.
3. NamaKul X--> Nrp
4. Nrp X--> NiHuruf
Jenis- jenis Dependency
1. Full functional Dependency
Yaitu jika ada atribut A dan B dalam suatu relasi, dimana B memiliki keterantungan fungsional secara penuh terhadap A dan B bukan memiliki dependensi terhadap subset A.
2. Partially Dependency
Yaitu jika terdapat beberapa atribut yang dapat dihilangkan dari A
dengan ketergantungan tetap dipertahankan dan B memiliki dependensi terhadap
subset A.
3. Transitive Dependency
Yaitu dimana A,B, C adalah atribut dari sebuah relasi A -> B dan B -> C, jadi bisa dikatakan kalau C
sebagai transitive dependency terhadap A melalui B.
Aturan-aturan dalam Ketergantungan Fungsional
Jika A, B , C merupakan himpunan atribut pada sebuah relasi R, ada
beberapa sifat yang disebut Axioma Amstrong (sifat-sifat untk normalisasi) ,
yaitu:
*Aksioma Reflexity: Jika B merupakan bagian subset
A, maka A -> B.
* Aksioma Augmentasi: Jika A -> B, maka AC -> BC.
*Aksioma Transitifity: Jika A -> B dan B -> C, maka A -> C .
Dari aturan-aturan diatas dapat dibuat aturan-aturan turunan sebagai berikut:
- Union: Jika A -> B dan A -> C, maka A -> BC,
- Dekomposisi: Jika A -> BC , maka A -> B dan A -> C,
- Peseudo Transitifity: Jika A -> B dan BC -> D, maka AC -> D,
Pengertian Normalisasi
Normalisasi yaitu suatu teknik mengorganisasikan data kedalam tabel-tabel untuk memenuhi kebutuhan pemakai di dalam suatu organisasi. Atau bisa juga , Normalisasi ialah suatu proses pembentukan struktur basis data sehingga sebagian besar dari ambiguitynya bisa di hilangkan.
Beberapa yang menjadi acuan dasar dalam proses normalisasi ialah
tujuan pembentukan basis data, jadi harus menghilangkan hal-hal berikut:
a. pengulangan informasi (redudancy)
b. potensi inkonsistensi data pada operasi update.
c. hindari atribut yang tidak perlu disimpan (derive
attribut)
d. tersembunyinya informasi tertentu
Tujuan dari normalisasi:
a.
menghilangkan kerangkapan
data.
b.
Mengurangi kompleksitas.
c.
Mempermudah pemodifikasian
data.
Proses normalisasi:
1. Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan
persyaratan tertentu ke beberapa tingkat.
2. Apabila tabel yang diuji belum memenuhi persyaratan tertentu maka
tabel tersebut pelu dipecah menjadi beberapa tabel yang lebih sederhana sampai
memenuhi bentuk yang optimal.
Tahapan-tahapan normalisasi:
1. Bentuk tidak normal : menghilangkan perulangan grub.
2. Bentuk normal pertama (1NF) : menghilangkan ketergantungan sebagian.
Aturan :
- Tidak ada atribut multivalue, atribut komplisit atau kombinasinya.
- Mendefinisikan atribut key.
- Setiap atribut dalam tabel harus bernilai atomic / tdak dapat dibagi-bagi lagi.
3. Bentuk normal kedua (2NF) : menghilangkan ketergantungan transitif.
Aturan:
- Sudah memenuhi aturan bentuk normal kesatu (1NF).
- Semua atribut bukan key hanya boleh tergantung (functional dependency) pada atribut key.
- Jika ada ketergantungan parsial ,maka atribut tersebut harus dipisah dan di taruh tabel yang lain.
- Perlu ada tabel penghubung ataupun kehadiran foreign key bagi atribut-atribut yang telah dipisahkan tadi.
4. Bentuk normal ketiga (3NF) : menghilangkan anomali-anomali hasil dari ketergantungan fungsional.
Aturan:
- Sudah memenuhi aturan bentuk normal kedua (2NF).
- Tidak ada ketergantungan transitif (dimana atribut bukan key tergantung pada atribut bukan key lainnya).
5. Bentuk normal Boyce-Codd (BCNF) : menghilangkan ketergantungan multivalue.
Aturan:
- jika untuk setiap functional dependency terhadap setiap atribut atau gabungan atribut dalam bentuk: X-> Y maka X adalah super key.
- Setiap tabel dalam BCNF merupakan 3NF. Tetapi setiap 3NF belum tentu termasuk BCNF . Perbedaannya, untuk functional dependency X -> A, BCNF tidak membolehkan A sebagai bagian dari primary key.
6. Bentuk normal keempat (4NF) : menghilangkan anomaly-anomaly yang tersisa.
Aturan:
- Bentuk normal 4NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk BCNF, dan tabel tersebut tidak boleh memiliki lebih dari sebuah multivalued atribute .
- Untuk setiap multivalued dependencies (MVD) juga harus merupakan functional dependencies .
7. Bentuk normal kelima (5NF)
Aturan:
- Bentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless decomposition menjadi tabel-tabel yg lebih kecil.
- Jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional dependency, 5NF dibentuk berdasarkan konsep join dependence. Yakni apabila sebuah tabel telah di-dekomposisi menjadi tabel-tabel lebih kecil, harus bisa digabungkan lagi (join) untuk membentuk tabel semula .
apasih pengertian dari dependency dan jenis-jenisnya serta penjelasannya.......????
BalasHapusterimakasih
Apakah dependency dapat mengakibatkan inkonsistensi data? Jelaskan
BalasHapusLucky Club Live Casino & Slots, 100% Australian - Lucky Club
BalasHapusLucky Club, one of Australia's top online casinos, is a top Australian casino, offering free spins for luckyclub new and existing players. With more than 500,000 games