NIM : 19037047
D3 Statistika (Ganjil)
UJIAN AKHIR SEMESTER (Take Home)
BASIS DATA
1. Jelaskan jenis-jenis anomali beserta contohnya!
Jawab :
Anomali Pengubahan Adalah masalah yang timbul saat terjadi perubahan
terhadap sejumlah data yang mubazir, tetapi tidak seluruhnya diubah.
Contoh : Jika PT. Kencan pindah ke Surabaya, kemudian perubahan data hanya
dilakukan pada data pertama, sedangkan data yang lain tetap, maka akan terjadi
inkonsistensi data pada PT. Kencana. Jika hasil data setelah diubah menjadi
seperti table ke 2 , maka orang akan bingung apakah PT. Kencana ada dua? satu
di bandung dan satu lagi di surabaya, padahal PT. Kencana hanya ada satu dan
sudah pindah tempat ke Surabaya
No_Siswa Kursus
S01 B. Inggris
S02 B. Mandarin
S03 B.Inggris
S04 B.Jepang
Tabel2.1
Solusi Untuk Anomali Penyisipan, solusinya adalah membuat 2 tabel berbeda, 1
tabel untuk data siswa dan satu lagi tabel untuk kursus. Contoh sperti tabel 2.2
dan 2.3. Untuk dapat menambahkan data kursus bahasa yang baru kita hanya
perlu menambahkan data pada tabel 2.3. Sehingga datanya lebih dinamis dan
mencegah dari kolom pada tabel yang tidak terisi. Untuk tabel 2.1, kita dapat
menggunakannya sebagai gabungan dari tabel 2.2 dan 2.3. Untuk penjelasan lebih
lanjut tentang pemecahan tabel dapat dilihat lebih detail di pembahasan
normalisasi.
No_Siswa Nama
S01 Ahmad
S02 Joko
S03 Eko
S04 Wahyu
Tabel 2.2
Kd_kursus Kursus
01 B.Inggris
02 Mandarin
03 B.Jepang
04 B.Jerman
Tabel 2.3
Anomali Penghapusan, Adalah masalah yang timbul saat melakukan
penghapusan data, dan data lain ikut terhapus atau hilang.
Contoh : Jika siswa dengan no_siswa S02 batal mengambil kursus, sehingga
datanya dihapus, maka data yang menyatakan biaya kursus bahasa mandarin juga
akan terhapus.
2. Jelaskan apa yang dimaksud dengan normalisasi, 1NF, 2NF, dan 3NF!
Jawab :
Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data
yang mengelompokkan atribut dari suatu relasi sehingga membentuk struktur
relasi yang baik (tanpa redudansi). Normalisasi adalah proses pembentukan
struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.
Set Difference
Operasi set difference berfungsi untuk mendapatkan nilai yang ada dalam sebuah
tabel relasi, tapi tidak ada dalam tabel relasi lainnya. Simbol “-“ digunakan untuk
menunjukkan operasi set difference.
Cartesian Product
Operasi cartesian product berfungsi untuk mengkombinasikan informasi yang ada
dalam 2 tabel relasi dan menghasilkan sebuah tabel relasi yang baru. Simbol “x“
digunakan untuk menunjukkan operasi set difference.
Set Intersection
Operasi set intersection berfungsi untuk mendapatkan nilai yang ada dalam
sebuah tabel relasi dan juga ada dalam tabel relasi lainnya. Simbol “∩“ digunakan
untuk menunjukkan operasi set intersection.
Natural Join
Operasi natural join memungkinkan kita untuk menggabungkan operasi select dan
cartesian product menjadi hanya 1 operasi saja. Simbol “⋈“ digunakan untuk
menunjukkan operasi natural join. Operasi natural join hanya menghasilkan tupel
yang mempunyai nilai yang sama pada 2 atribut yang bernama sama pada 2 tabel
relasi yang berbeda.
Division
Operasi division berfungsi untuk query yang memasukkan frase “untuk
semua/seluruh”. Simbol “÷“ digunakan untuk menunjukkan operasi division.
Theta Join
Operasi theta join berfungsi jika kita ingin mengkombinasikan tupel dari 2 tabel
relasi dimana kondisi dari kombinasi tersebut tidak hanya kesamaan nilai dari 2
atribut bernama sama, tetapi kondisi yang diinginkan juga bisa menggunakan
operator relasional (≤, <, =, >, ≥). Operasi theta join merupakan ekstensi dari
natural join.
Normalisasi 2NF :
Tabel Data Pasien
Normalisasi 3NF :
Tabel Data Pasien
No Pasien Nama Gender Umur Kd Kel WN
Umur
4 Delvi Perempuan 34 30-39 WNI
13 Rico Laki-laki 16 10-19 WNI
15 Fadli Laki-laki 43 40-49 WNI
25 Aline Perempuan 53 50-59 WNA
Tabel Umur
Kd Kel Umur Kel Umur
KU04 30-39
KU02 10-19
KU05 40-49
KU06 50-59
Tabel umur :
iv. Jumlah pasien dengan status terakhir sembuh, dalam perawatan, dan
meninggal.
Jawab :