200 likes | 407 Views
Normalisasi (bagian I). Macam Atribut Ketergantungan Data 1NF, 2NF. Macam Atribut. Atribut sederhana vs atribut komposit Atribut bernilai tunggal vs atribut bernilai banyak Atribut harus bernilai vs atribut null Atribut asli vs atribut turunan. Single Attribute vs Composite Attribute.
E N D
Normalisasi(bagian I) Macam Atribut Ketergantungan Data 1NF, 2NF
Macam Atribut • Atribut sederhana vs atribut komposit • Atribut bernilai tunggal vs atribut bernilai banyak • Atribut harus bernilai vs atribut null • Atribut asli vs atribut turunan
Single Attribute vs Composite Attribute • Atribut sederhana (single attribute) merupakan atribut atomik yang tidak dapat dipilah lagi. • NPM, kode_pos • Atribut komposit (composite attribute) merupakan atribut yang masih dapat diuraikan lagi menjadi sub-sub atribut yang masing-masing memiliki makna • Nama_mhs: first_name, surname • Alamat_mhs: alamat, kota, kode_pos • Dapat dipertahankan demi kesederhanaan struktur tabel, kecuali perlu / ada rencana untuk melakukan pengolahan data pada sub-sub atribut secara khusus
Atomic Attribute vs Multi-valued Attribute • Atribut bernilai tunggal (atomic attribute) ditujukan pada atribut yang memiliki paling banyak satu nilai untuk setiap baris data • NPM, nama_mhs, alamat_mhs • Atribut bernilai banyak (multi-valued attribute) ditujukan pada atribut yang dapat kita isi dengan lebih dari satu nilai, tetapi jenisnya sama • Hari dan waktu mata kuliah • Hobi mahasiswa
Mandatory Attribute vsNull Attribute • Atribut harus bernilai (mandatory attribute) merupakan atribut yang ditetapkan nilainya tidak boleh kosong • Primary key merupakan mandatory attribute • Atribut null (null attribute) merupakan atribut yang isi nilainya boleh dikosongkan • Nilai rinci datanya belum siap • Memang tidak ada nilai rinci datanya
Stored Attribute vs Derived Attribute • Atribut turunan (derived attribute) merupakan atribut yang nilai-nilainya diperoleh atau dapat diturunkan dari atribut atau tabel lain yang berhubungan • IPK, umur • Atribut asli (stored attribute) merupakan atribut yang nilainya tidak dapat diturunkan • Nilai_tugas, nilai_uts, nilai_uas, tanggal_lahir
Functional Dependency • Diberikan sebuah tabel T berisi paling sedikit 2 buah atribut A dan B. Kita dapat menyatakan notasi berikut ini: A B • Artinya A secara fungsional menentukan B atau B secara fungsional bergantung pada A
Bentuk Normal (Normal Form) • Suatu teknik untuk menstrukturkan / memecah / mendekomposisi data dalam cara-cara tertentu untuk mencegah timbulnya permasalahan pengolahan data dalam basis data • Normalisasi dapat mengurangi anomali: • Pembaharuan data (update) • Inkonsistensi data • Penambahan data baru (insert) • Penghapusan data (delete)
Tingkatan Normalisasi • UNF (Un-Normalized Form) • 1NF • 2NF • 3NF • BCNF • 4NF • Normalisasi yang terlalu tinggi tidak selalu disarankan
Studi Kasus • Studi kasus perusahaan konstruksi: • Membangun proyek – no_proyek (project_num), nama_proyek (project_name), dan staff-staff (employees) yang terkait dalam proyek tsb • Staff – nomor_staff, nama_staff, jenis_pekerjaan (job_description) • Klien akan di-charge per jam berdasarkan waktu yang dialokasikan untuk masing-masing proyek. Biaya yang dikeluarkan per jam juga tergantung dari jabatan staff yang menangani • Secara berkala, sebuah laporan akan dihasilkan
1st Normal Form • Seluruh atribut dalam relasi bernilai atomik (atomic value) • Seluruh atribut dalam relasi bernilai tunggal (single value) • Relasi tidak memuat set atribut berulang • Semua record mempunyai jumlah atribut yang sama
Permasalahan 1NF • Tidak dapat menyisipkan informasi parsial • Terhapusnya informasi ketika menghapus sebuah record • Pembaharuan atribut non kunci mengakibatkan sejumlah record harus diperbaharui
Problema: • Project_num didesain sebagai primary key, namun berisi nilai null pada beberapa baris record • Adanya kerangkapan data pada tabel • Record pada tabel mendorong timbulnya inkonsistensi data • Adanya kerangkapan data yang dapat menyebabkan: • Anomali pembaharuan data • Anomali penghapusan data • Anomali penambahan data baru
1st Normal Form • Tabel memiliki sebuah primary key • Tabel tidak memiliki kumpulan data berulang • Multivalued attribute merupakan atribut yang dapat memiliki beberapa nilai data untuk satu baris record • Kumpulan data berulang (repeating group) merupakan kumpulan satu atau lebih multivalued attribute
2nd Normal Form • Memenuhi kriteria 1NF • Semua atribut non kunci memiliki FD pada primary key • Identifikasi FD relasi 1NF • Berdasarkan informasi tsb, dekomposisi relasi 1NF menjadi relasi-relasi baru sesuai FD-nya PROJECT (PROJ_NUM, PROJ_NAME) EMPLOYEE (EMP_NUM, EMP_NAME, JOB_CLASS, CHG_HOUR) ASSIGN (PROJ_NUM, EMP_NUM, HOURS)
Kekurangan 2NF • Adanya transitive dependency (ketergantungan transitif), yakni satu atau lebih atribut bergantung pada atribut non-kunci