You are on page 1of 61

Basis Data

ASSALAMU ALAIKUM WR.WB

Basis data MIF W4-09

9/4/2011

Basis Data

Hubungan ERD dengan Normalisasi & Denormalisasi


KELOMPOK VI MIF W4 09

Basis data MIF W4-09

9/4/2011

Apa itu ERD.??


Diagram E-R berupa model datakonseptual, yang merepresentasikan data dalam suatu organisasi. Merupakan diagram yang menggambarkan hubungan (relationship) antar entitas (entity). ERD menekankan pada struktur dan relationship data.
Basis data MIF W4-09 3 9/4/2011

Komponen ERD.

Tiga notasi dasar yang bekerja pada model E-R yaitu :


Entitas Relasi Atribut

Basis data MIF W4-09

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

Basis data MIF W4-09

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

Basis data MIF W4-09

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.

Basis data MIF W4-09

9/4/2011

Attribut

Atribut dalam ERD dilambangkan dengan bentuk elips

Entitas Pegawai Departemen

Atribut NIP, Nama, Alamat, Agama, jenis kelamin No, Nama, lokasi

Basis data MIF W4-09

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)

Basis data MIF W4-09

10

9/4/2011

Simple Attribute dan Composite Attribute

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).

Basis data MIF W4-09

11

9/4/2011

Single Valued Attribute dan Multi Valued Attribute


Atribut Berharga Tunggal (Single-valued Attribute) : atribut yang hanya mempunyai satu harga untuk suatu entitas tertentu. Contoh : atribut umur. Atribut Berharga Banyak (Multi-valued Attribute) : atribut yang dapat terdiri dari sekumpulan harga untuk suatu entitas tertentu. Contoh : atribut hobi.
Basis data MIF W4-09 12 9/4/2011

Derived Attribute (Attribut Turunan)


Atribut Derivatif : suatu atribut yang dihasilkan dari atribut lain. Contoh : atribut umur yang dapat dihasilkan dari atribut tgl_lahir.

Basis data MIF W4-09

13

9/4/2011

Key Attribute (Atribut Kunci)

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

Contoh Superkey untuk entitas pegawai:


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

Candidat Key: superkey yang jumlah atributnya paling sedikit

Contoh candidat key untuk entitas pegawai


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 :

Basis data MIF W4-09

15

9/4/2011

Simbol-Simbol Atribut (oval)


nama_atribut nama_atribut nama_atribut

nama_atribut_kunci

nama_atribut_komposit

nama_atribut bernilai ganda

nama_atribut

nama_atribut_derivatif

nama_entity
Basis data MIF W4-09 16 9/4/2011

Relasi

Hubungan antara beberapa entitas

Notasi :

Relasi kuat:

Relasi lemah:

Basis data MIF W4-09

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)

atau many-to-one (N:1) Many-to-many (M:N)

Ternary: relasi antara 3 entitas atau lebih

Basis data MIF W4-09

18

9/4/2011

employee supervisor supervison supervise employee work_on company

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

Menjelaskan jumlah keterhubungan satu entity dengan entity yang lainnya.


(1 : 1) : satu entitas pada tipe entitas A berhubungan dengan paling banyak satu entitas pada tipe entitas B dan juga sebaliknya. Contoh : seorang manager hanya memimpin satu departemen dan begitu sebaliknya.
manager
M1 M2 M3

manages
R1 R2 R3

departement
D1 D2 D3

manager

manages

departement

Basis data MIF W4-09

20

9/4/2011

Cardinality Ratio (lanj)

(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

Basis data MIF W4-09

21

9/4/2011

Cardinality Ratio (lanj)

(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

Basis data MIF W4-09

22

9/4/2011

Symbol E-R Diagram


Symbol Keterangan
= Entity = Atribut Komposit

Symbol

Keterangan

= Weak Entity

= Relationship

= Atribut Derivatif

= Identifying Relationship

E1

E2

= Total Participation Of E2 In R

= Atribut E1

E2

= Cardinality Ratio 1:N For E1:E2 In R

______

= Atribut Kunci

= Atribut Multivalue
Basis data MIF W4-09 23 9/4/2011

Contoh ERD :

Basis data MIF W4-09

24

9/4/2011

Normalisasi

Basis data MIF W4-09

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.

Basis data MIF W4-09

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.

Basis data MIF W4-09

9/4/2011 27

Permasalahan dalam Normalisasi


Redundansi data (ruang penyimpanan) Anomalies (penyimpangan dalam proses modifikasi data) o Insert Anomalies o Update Anomalies o Delete Anomalies

Basis data MIF W4-09

9/4/2011 28

Redundansi Data

normalisasi

redundan

Basis data MIF W4-09

29

9/4/2011

Redundansi Data

Basis data MIF W4-09

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 !

Basis data MIF W4-09

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.

Basis data MIF W4-09

9/4/2011 34

Denormalisasi

Basis data MIF W4-09

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.

Basis data MIF W4-09

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

Basis data MIF W4-09

9/4/2011 37

Normalisasi vs. Denormalisasi


Pada basis data relational, redundansi tidak bisa dihilangkan sama sekali khususnya redundansi pada atribut-atribut yang berfungsi sebagai key primer. Karena dengan inilah keterhubungan antara tabel satu dengan yang lain dapat terakomodasi

Basis data MIF W4-09

9/4/2011 38

Normalisasi vs. Denormalisasi

Relasi antar tabel tidak akan ada jika redundansi dihilangkan sama sekali.
9/4/2011 39

Basis data MIF W4-09

Normalisasi vs. Denormalisasi


Akan tetapi redundansi juga harus diminimalisir karena berpotensi mengganggu integritas basis data. Khususnya pada saat terjadi operasi perubahan data yang tidak dijalarkan ke tabel-tabel lain yang berhubungan

Basis data MIF W4-09

9/4/2011 40

Normalisasi vs. Denormalisasi


Performansi dapat ditingkatkan dengan mengendalikan redundansi untuk mengurangi perhitungan, kompleksitas perintah dan jumlah tabel yang harus dilibatkan (join). Untuk itu digunakan Denormalisasi basis data.

Basis data MIF W4-09

9/4/2011 41

Any Question?

Basis data MIF W4-09

9/4/2011 42

Bentuk-bentuk Denormalisasi
Atribut yang terderivasi (atribut turunan) Atribut yang berlebihan Tabel rekapitulasi (summary table)

Basis data MIF W4-09

9/4/2011 43

Atribut turunan
Atribut yang nilainya bisa diperoleh dari nilainilai yang sudah ada pada atribut lain

Basis data MIF W4-09

9/4/2011 44

Atribut turunan

Tampilkan berapa banyak matakuliah yang sudah diambil oleh mahasiswa tertentu ! select count(*) from mengambil where NIM=04523356;

Basis data MIF W4-09

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 !

Basis data MIF W4-09

9/4/2011 46

Atribut turunan
Untuk itu perlu ditambahkan atribut baru pada tabel mahasiswa (total_sks, total_matkul,ipk)

Basis data MIF W4-09

9/4/2011 47

Atribut yang berlebihan


Atribut terkodekan (encoded attribute) Atribut gabungan (concatenated attribute) Atribut tumpang-tindih (overlapping attribute) Atribut bermakna ganda (alternate attribute)

Basis data MIF W4-09

9/4/2011 48

Atribut berlebihan : atribut terkodekan


Atribut yang memiliki kode tambahan yang menunjukkan beberapa kondisi lainnya

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

Basis data MIF W4-09

Atribut berlebihan : atribut terkodekan

Basis data MIF W4-09

9/4/2011 50

Atribut berlebihan : atribut terkodekan


Tapi akan menjadi aneh jika kode matakuliah tidak mengikuti format aturan penulisan yang ada. Untuk itu kita bisa lakukan denormalisasi dengan tetap menuliskan kode matakuliah seperti di atas.

Basis data MIF W4-09

9/4/2011 51

Atribut berlebihan : atribut gabungan


Atribut dalam domain komposit Contoh : atribut nim di tabel mahasiswa merupakan gabungan dari tahun masuk/angkatan dengan program studi dan no urut mahasiswa. Dengan demikian atribut ini sebenarnya tidak atomik karena masih bisa dibagi lagi NIM : 04523500
angkatan no urut
Basis data MIF W4-09 9/4/2011 52

Atribut berlebihan : atribut gabungan


Sama hal nya dengan atribut terkodekan, akan menjadi aneh jika nomor mahasiswa tersebut hanyalah nomor urut. Tentu hal ini akan membutuhkan informasi lebih tentang angkatan dan terdaftar di jurusan mana mahasiswa tersebut.

Basis data MIF W4-09

9/4/2011 53

Atribut berlebihan (atribut tumpang-tindih)


Atribut dengan nilai yang tidak sepenuhnya ekslusif Contoh : atribut semester di tabel kuliah berisikan : 1 matakuliah ganjil 2 matakuliah genap 3 matakuliah ganjil & genap nilai 3 mencakup semester genap dan ganjil sekaligus (jadi tidak ekslusif).

Basis data MIF W4-09

9/4/2011 54

Atribut berlebihan : atribut tumpang-tindih

Basis data MIF W4-09

9/4/2011 55

Atribut berlebihan : atribut tumpang-tindih


Jadi sebaiknya matakuliah dimasukkan dua kali, jika itu dilaksanakan di semester ganjil dan genap. Tentu saja hal ini melanggar aturan normalisasi (redundansi), tapi untuk performansi hal ini dapat dilanggar

Basis data MIF W4-09

9/4/2011 56

Atribut berlebihan : atribut bermakna ganda


Atribut yang memiliki arti berbeda tergantung kelompok entitasnya

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.

Basis data MIF W4-09

9/4/2011 57

Atribut berlebihan : atribut bermakna ganda

Basis data MIF W4-09

9/4/2011 58

Atribut berlebihan : atribut bermakna ganda


Jika gaji dosen harus dibedakan, maka harus disediakan 2 buah atribut yakni gaji_tetap dan gaji_tidak_tetap. Walaupun sama-sama berisi tentang jumlah gaji yang diterima dosen, hal ini tentu saja melanggar aturan normalisasi karena ada blok data yang kosong. Tetapi sekali lagi, denormalisasi dalam hal ini boleh dilakukan.

Basis data MIF W4-09

9/4/2011 59

Wasalamualaikum wr.wb
Semoga bermanfaat dan memenuhi standart penilaian baik dari bapak dosen BASIS DATA yaitu :

Bapak HENDRA DJATNIKA.

Basis data MIF W4-09

60

9/4/2011

Team Penyusun Kelompok VI :

R.Dadan Achmad Hamdan Yudhi Supriatna Ujang Wandi Salman Hafidz Ihsanudin

NPM : 09402240 NPM : 09402483 NPM : 09402255 NPM : NPM : 09402444

Basis data MIF W4-09

61

9/4/2011

You might also like