ISYS6508
Database System
Week 4
Normalization
4. Functional Dependencies
Introduction
Ketika kami mendesain database untuk suatu perusahaan, tujuan utamanya adalah
untuk membuat representasi akurat dari data, hubungan antara data, dan kendala pada data
yang berkaitan dengan perusahaan. Untuk membantu mencapai tujuan ini, kita dapat
menggunakan satu atau lebih teknik desain basis data. Dalam bab ini dan selanjutnya kami
menjelaskan teknik desain database lain yang disebut normalisasi.
Normalisasi adalah teknik desain database yang dimulai dengan memeriksa hubungan
(disebut fungsional dependensi) antar atribut. Atribut menggambarkan beberapa properti data
atau hubungan antar data yang penting bagi perusahaan. Normalisasi menggunakan
serangkaian tes (digambarkan sebagai bentuk normal) untuk membantu mengidentifikasi
pengelompokan yang optimal untuk setiap atribut pada akhirnya mengidentifikasi satu set
hubungan yang sesuai yang mendukung persyaratan data perusahaan.
Ciri-ciri dari relasi yang sesuai mencakup hal-hal berikut:
jumlah minimum atribut yang diperlukan untuk mendukung persyaratan data
perusahaan.
atribut dengan hubungan logis yang dekat (digambarkan sebagai ketergantungan
fungsional) ditemukan dalam relasi yang sama.
redundansi minimal, dengan masing-masing atribut diwakili hanya sekali, dengan
pengecualian penting dari atribut yang membentuk semua atau sebagian dari foreign
key, yang penting untuk bergabungnya relasi terkait.
Manfaat menggunakan basis data yang memiliki himpunan relasi yang sesuai adalah
bagi pengguna memudahkan untuk mengakses dan memelihara data, serta mengambil ruang
penyimpanan minimal di komputer. Masalah yang terkait dengan penggunaan relasi yang
tidak normal dinormalisasi dijelaskan berikutnya.
Dalam hubungan StaffBranch ada data yang berlebihan; rincian cabang diulangi untuk
setiap anggota Staff yang ada di Branch tersebut. Sebaliknya, rincian branch hanya muncul
sekali untuk setiap branch dalam hubungan Branch, dan hanya nomor branch (branchNo)
yang diulang dalam relasi Staff untuk mewakili di mana setiap anggota staf berada.
Hubungan yang memiliki data redundan mungkin memiliki masalah yang disebut update
anomali, yang diklasifikasikan sebagai penyisipan (insertion), penghapusan (deletion), atau
modifikasi (modification).
Deletion Anomalies
Jika kita menghapus tuple dari relasi StaffBranch yang mewakili anggota staf terakhir
yang terletak di cabang, detail tentang cabang tersebut juga hilang dari database. Misalnya,
jika kita menghapus tupel untuk nomor staf SA9 (Mary Howe) dari relasi StaffBranch, detail
yang berkaitan dengan nomor cabang B007 hilang dari database. Desain dari hubungan di
Gambar 4.2. untuk menghindari masalah ini, karena tupel cabang disimpan secara terpisah
dari staf tupel dan hanya atribut branchNo berkaitan dua relasi. Jika kita menghapus tupel
untuk nomor staf SA9 dari relasi Staf, rincian nomor cabang B007 tetap tidak terpengaruh
dalam relasi Branch.
Functional Dependencies
Konsep penting yang terkait dengan normalisasi adalah ketergantungan fungsional,
yang menggambarkan hubungan antar atribut (Maier, 1983). Pada bagian ini kami
mendeskripsikan ketergantungan fungsional dan kemudian fokus pada karakteristik khusus
dari dependensi fungsional yang berguna untuk normalisasi. Kami kemudian mendiskusikan
bagaimana ketergantungan fungsional dapat diidentifikasi dan digunakan untuk
mengidentifikasi kunci utama untuk suatu relasi.
Gambar 4.5 (A) staffNo secara fungsional menentukan posisi (posisi staffNo ®); (B) posisi tidak
secara fungsional menentukan staffNo (position®x staffNo)
Dalam Bab ini, kami mendeskripsikan normalisasi sebagai teknik bottom-up yang
mengekstraksi informasi tentang atribut dari bentuk sampel yang pertama kali
ditransformasikan ke dalam format tabel, yang dideskripsikan sebagai dalam bentuk tidak
dikenal (UNF). Tabel ini kemudian mengalami progresif ke persyaratan yang berbeda yang
terkait dengan setiap bentuk normal sampai akhirnya atribut yang ditunjukkan dalam bentuk
sampel asli diwakili sebagai serangkaian hubungan 3NF. Meskipun contoh yang digunakan
dalam bab ini berasal dari bentuk normal yang diberikan ke yang di atas, ini tidak selalu
terjadi dengan contoh lain. Seperti yang ditunjukkan pada Gambar 13.8, resolusi masalah
tertentu dengan, katakanlah, hubungan 1NF dapat mengakibatkan relasi ditransformasikan ke
hubungan 2NF, atau dalam beberapa kasus secara langsung menjadi 3NF hubungan dalam
satu langkah.
Untuk menyederhanakan uraian normalisasi, kita mengasumsikan bahwa satu set
dependensi fungsional diberikan untuk setiap relasi dalam contoh yang dikerjakan dan setiap
relasi memiliki kunci primer yang ditentukan. Dengan kata lain, penting bahwa makna atribut
dan hubungan mereka dipahami dengan baik sebelum memulai proses normalisasi. Informasi
ini penting untuk normalisasi dan digunakan untuk menguji apakah suatu relasi dalam bentuk
normal tertentu. Kita mulai dengan menggambarkan Bentuk Normal Pertama (1NF).
Masih ada beberapa baris dari tabel yang kosong, pada kolom clientNo dan cName
dan masih ada beberapa baris yang berulang, seperti pada kolom oName. Tabel inilah yang
disebut sebagai Unnormalized Form (UNF). Langkah selanjutnya lakukan normalisasi ke
First Normal Form (1NF).
Pada tabel 1NF seluruh baris terisi semua dan perulangan masih terjadi, pada saat
1NF candidate key dan functional dependency mulai terlihat. Beberapa candidate key adalah
clientNo, propertyNo, ownerNo.
1. Normalisasi adalah teknik untuk menghasilkan satu set hubungan dengan sifat yang
diinginkan, mengingat persyaratan data dari suatu perusahaan. Normalisasi adalah
metode formal yang dapat digunakan untuk mengidentifikasi hubungan berdasarkan
kunci relasi dan dependensi fungsional relasi antar atribut.
2. Normalisasi dilakukan untuk menghindari update anomali, yang diklasifikasikan
sebagai penyisipan (insertion), penghapusan (deletion), atau modifikasi
(modification).
3. Proses normalisasi dengan menggambarkan Bentuk Normal Pertama (1NF).
Berikutnya kami mendeskripsikan Bentuk Normal Kedua (2NF) dan Bentuk Normal
Ketiga (3NF) berdasarkan pada kunci utama dari suatu relasi dan kemudian
menyajikan definisi yang lebih umum.
4. Unnormalized Form (UNF) adalah tabel yang berisi satu atau lebih grup yang
berulang.
5. Bentuk Normal Pertama (1NF) adalah hubungan di mana perpotongan setiap baris dan
kolom berisi satu dan hanya satu nilai.
6. Bentuk Normal Kedua (2NF) adalah relasi yang dalam bentuk normal pertama dan
setiap atribut non-kunci utama secara fungsional sepenuhnya bergantung pada kunci
primer. Definisi umum untuk Bentuk Normal Kedua (2NF) adalah relasi yang dalam
bentuk normal pertama dan setiap atribut non-kandidat-kunci sepenuhnya tergantung
pada kunci kandidat.
7. Bentuk Normal Ketiga (3NF) adalah relasi yang dalam bentuk normal pertama dan
kedua di mana tidak ada atribut non-primary key yang secara transitif bergantung
pada kunci primer. Definisi umum untuk Bentuk Normal Ketiga (3NF) adalah relasi
yang dalam bentuk normal pertama dan kedua di mana tidak ada atribut non-kandidat-
kunci yang secara transitif bergantung pada kunci kandidat.
Connolly, T., & Begg, C. (2015). Database System A Practical Approach to Design,
Implemetation, and Management 6th Edition. Pearson