9/4/2011
Basis Data
9/4/2011
Komponen ERD.
9/4/2011
Entitas
Merupakan obyek yang mewakili sesuatu dalam dunia nyata dan dapat dibedakan antara satu dengan lainnya (unique). Memiliki atribut yang mendeskripsikan karakteristik dari objek tersebut. Dapat berupa: Fisik (mobil, rumah, manusia, pegawai dsb) Abstrak/konsep (department, pekerjaan, mata kuliah dsb) Kejadian (pembelian, penjualan, peminjaman, dll) Notasi :
nama_entity
Basis data MIF W4-09 5 9/4/2011
Varian Entitas :
Strong Entity (entitas kuat) Himpunan entitas yg tidak memiliki ketergantungan dg entitas yang lain. Notasi :
Nama_entitas
9/4/2011
Varian Entitas :
Weak Entity (entitas Lemah) Himpunan entitas yg keberadaannya ketergantungan dengan entitas yang lain. Himpunan entitas yg demikian tidak memp. atribut yg berfungsi sebagai key yg benar-benar menjamin keunikan entitas. Notasi dan contoh :
Entitas tanggungan disebut sebagai entitas lemah karena jika data seorang pegawai dihapus maka data tanggungannya juga akan terhapus. Keberadaan data tanggungan tergantung pada data di pegawai
tanggungan
9/4/2011
ATRIBUTE
karakteristik dari entity atau relationship yang menyediakan detail tentang entity atau relationship tersebut sehingga dapat dibedakan. Nilainya jarang berubah. Merupakan karakteristik dari sebuah entitas (biasanya berhubungan dengan field dalam sebuah tabel). Penentuan atribut bagi suatu entitas didasarkan pada relevansinya terhadap entitas tersebut.
9/4/2011
Attribut
Atribut NIP, Nama, Alamat, Agama, jenis kelamin No, Nama, lokasi
9/4/2011
Macam-macam Atribut
Simple Attribute dan Composite Attribute Single Valued Attribute dan Multi Valued Attribute Mandatory Attribute Derived Attribute (Attribut Turunan) Key Attribute (Atribut Kunci)
10
9/4/2011
Atribut sederhana/ Simple Attribute : atribut yang tidak dapat dibagi-bagi menjadi atribut yang lebih mendasar. Contoh : atribut harga dari entity barang. Atribut komposit/ Composite Attribute : atribut yang terdiri dari beberapa atribut yang lebih mendasar. Contoh : Entity mahasiswa memiliki atribut nama yang terdiri dari nama depan (first name), nama tengah (middle name) dan nama belakang (last name).
11
9/4/2011
13
9/4/2011
Satu atau beberapa atribut yang mempunyai nilai unik sehingga dapat digunakan untuk membedakan data pada suatu baris/record dengan baris lain pada suatu entitas Macam key attribute:
Superkey Candidat Key Primary key
Basis data MIF W4-09 14 9/4/2011
Superkey: satu atau gabungan beberapa atribut yang dapat membedakan setiap baris data dalam sebuah tabel secara unik
NoKTP, Nama, Alamat, JenisKel, Gaji NoKTP, Nama, Alamat, JenisKel NoKTP, Nama, Alamat NoKTP, Nama Nama (jika dapat dijamin kalau tidak ada nama yang sama antara satu baris dengan baris yang lain) NoKTP
Nama (jika dapat dijamin kalau tidak ada nama yang sama antara satu baris dengan baris yang lain) NoKTP
Primary key: suatu candidat key yang dipilih menjadi kunci utama karena sering dijadikan acuan untuk mencari informasi, ringkas, menjadi keunikan suatu baris
Contoh : NoKTP antara satu pegawai dengan pegawai lain pasti berbeda, dalam hal ini noKTP dapat digunakan sebagai suatu key Notasi :
15
9/4/2011
nama_atribut_kunci
nama_atribut_komposit
nama_atribut
nama_atribut_derivatif
nama_entity
Basis data MIF W4-09 16 9/4/2011
Relasi
Notasi :
Relasi kuat:
Relasi lemah:
17
9/4/2011
Macam Relasi
Unary : relasi dengan 1 entitas Binary: relasi antara 2 entitas
One-to-one (1:1)
One-to-many (1:N)
18
9/4/2011
title
level
job
employee_name
employee_id brunch_name Brunch_city
employee
Basis data MIF W4-09
work_on
19
brunch
9/4/2011
Cardinality Ratio
manages
R1 R2 R3
departement
D1 D2 D3
manager
manages
departement
20
9/4/2011
(1 : N / N : 1) : suatu entitas di A dihubungkan dengan sejumlah entitas di B. Contoh : banyak karyawan berkerja untuk satu depertement atau satu departement memiliki banyak karyawan yang bekerja untuknya.
employee
E1 E2 E3 E4 E5 E6 N
works_for
R1 R2 R3 R4 R5 R6 1
departement D1 D2 D3
employee
works_for
departement
21
9/4/2011
(M : N) : setiap entitas A dapat berhubungan dengan banyak entitas B dan sebaliknya setiap entitas B juga dapat berhubungan dengan banyak entitas A. Contoh : satu proyek mempunyai banyak karyawan, satu karyawan boleh bekerja di beberapa proyek.
employee E1 E2 E3 E4 works_on
R1 R2 R3 R4 R5 R6 M N
project P1 P2 P3
employee
works_on
project
22
9/4/2011
Symbol
Keterangan
= Weak Entity
= Relationship
= Atribut Derivatif
= Identifying Relationship
E1
E2
= Total Participation Of E2 In R
= Atribut E1
E2
______
= Atribut Kunci
= Atribut Multivalue
Basis data MIF W4-09 23 9/4/2011
Contoh ERD :
24
9/4/2011
Normalisasi
9/4/2011 25
Normalisasi
Sebuah upaya untuk memperoleh sebuah basis data dengan struktur yang baik (ruang penyimpanan yang efisien) dengan cara menerapkan sejumlah aturan (bentuk normal) pada setiap tabel yang menjadi anggota basis data tersebut.
9/4/2011 26
Tujuan Normalisasi
Agar data yang ada tidak redundan dan memiliki data integrity yang kuat sehingga ketika kita melakukan relasi antara tabel akan dengan mudah kita menjaga data integrity dan mendapatkan datanya.
9/4/2011 27
9/4/2011 28
Redundansi Data
normalisasi
redundan
29
9/4/2011
Redundansi Data
30
9/4/2011
Insert Anomalies
Bagaimana jika kategori diisi minuman ringan sedangkan rak diisi A.1 ? data tidak konsisten !
Basis data MIF W4-09 31 9/4/2011
Update Anomalies
Bagaimana jika kategori mie instan ingin diganti dengan makanan ringan ? tentu harus mengubah semua data !
Basis data MIF W4-09 32 9/4/2011
Delete Anomalies
Bagaimana jika barang fanta dihapus? semua data yang termasuk dalam kategori minuman ringan akan ikut terhapus !
33
9/4/2011
Normalisasi
Pada sejumlah kasus, penerapan normalisasi secara ketat (strict) dapat mengakibatkan menurunnya performansi pemanfaatan basis data. Normalisasi digunakan saat melakukan perancangan basis data, dengan pertimbangan tertentu normalisasi ini dapat 'dilanggar.
9/4/2011 34
Denormalisasi
9/4/2011 35
Denormalisasi
Pelanggaran Normalisasi basis data disebut dengan Denormalisasi. Satu-satunya alasan mengapa kita boleh melakukan denormalisasi adalah pertimbangan performansi. Jika performansi yang kita peroleh bisa menjadi jauh lebih baik, maka normalisasi yang telah dilakukan cukup beralasan untuk dilanggar.
9/4/2011 36
Normalisasi
Normalisasi akan meningkatkan data integrity tetapi juga akan meningkatkan query complexity. Denormalisasi akan mengurangi data integrity dan juga akan mengurangi query complexity
9/4/2011 37
9/4/2011 38
Relasi antar tabel tidak akan ada jika redundansi dihilangkan sama sekali.
9/4/2011 39
9/4/2011 40
9/4/2011 41
Any Question?
9/4/2011 42
Bentuk-bentuk Denormalisasi
Atribut yang terderivasi (atribut turunan) Atribut yang berlebihan Tabel rekapitulasi (summary table)
9/4/2011 43
Atribut turunan
Atribut yang nilainya bisa diperoleh dari nilainilai yang sudah ada pada atribut lain
9/4/2011 44
Atribut turunan
Tampilkan berapa banyak matakuliah yang sudah diambil oleh mahasiswa tertentu ! select count(*) from mengambil where NIM=04523356;
9/4/2011 45
Atribut turunan
Dari contoh sebelumnya, bagaimana jika data mahasiswa sangat banyak sedangkan proses untuk menampilkan jumlah matakuliah, jumlah sks ataupun IPK sering dilakukan? membutuhkan waktu yang lama !
9/4/2011 46
Atribut turunan
Untuk itu perlu ditambahkan atribut baru pada tabel mahasiswa (total_sks, total_matkul,ipk)
9/4/2011 47
9/4/2011 48
Contoh : id_mk di tabel kuliah yang didalamnya sudah terkandung data program studi. Data program studi ini sebenarnya tidak diperlukan lagi karena sudah ada atribut prog_studi di tabel kuliah Kode kuliah simbada : 52304424
9/4/2011 49
9/4/2011 50
9/4/2011 51
9/4/2011 53
9/4/2011 54
9/4/2011 55
9/4/2011 56
Contoh : Di tabel dosen terdapat atribut gaji. Bagi dosen tetap atribut ini berisi gaji tetap perbulan, sedangkan bagi dosen tidak tetap gaji ini berisi insentif mengajar tiap sks.
9/4/2011 57
9/4/2011 58
9/4/2011 59
Wasalamualaikum wr.wb
Semoga bermanfaat dan memenuhi standart penilaian baik dari bapak dosen BASIS DATA yaitu :
60
9/4/2011
R.Dadan Achmad Hamdan Yudhi Supriatna Ujang Wandi Salman Hafidz Ihsanudin
61
9/4/2011