Hub.erd Normalisasi Denormalisasi

download Hub.erd Normalisasi Denormalisasi

of 61

Transcript of Hub.erd Normalisasi Denormalisasi

Basis Data

ASSALAMU ALAIKUM WR.WB

Basis data MIF W4-09

1

9/4/2011

Basis Data

Hubungan ERD dengan Normalisasi & DenormalisasiKELOMPOK VI MIF W4 09

Basis data MIF W4-09

2

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

4

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_entityBasis 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

6

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

7

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

8

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

9/4/2011

Macam-macam AtributSimple 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 AttributeAtribut 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 keyBasis 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_entityBasis 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 RelasiUnary : 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

jobemployee_nameemployee_id brunch_name Brunch_city

employeeBasis data MIF W4-09

work_on19

brunch9/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.managerM1 M2 M3

managesR1 R2 R3

departementD1 D2 D3

manager

1

manages

1

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.employeeE1 E2 E3 E4 E5 E6 N

works_forR1 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_onR1 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 DiagramSymbol Keterangan= Entity = Atribut Komposit

Symbol

Keterangan

= Weak Entity

= Relationship

= Atribut Derivatif

= Identifying Relationship

E1

R

E2

= Total Participation Of E2 In R

= Atribut E1

1

R

N

E2

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

______

= Atribut Kunci

= Atribut MultivalueBasis 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

NormalisasiSebuah 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 NormalisasiAgar 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 NormalisasiRedundansi 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

NormalisasiPada 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

DenormalisasiPelanggaran 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

NormalisasiNormalisasi 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. DenormalisasiPada 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. DenormalisasiAkan 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. DenormalisasiPerformansi 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 DenormalisasiAtribut yang terderivasi (atribut turunan) Atribut yang berlebihan Tabel rekapitulasi (summary table)

Basis data MIF W4-09

9/4/2011 43

Atribut turunanAtribut 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 turunanDari 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 turunanUntuk itu perlu ditambahkan atribut baru pada tabel mahasiswa (total_sks, total_matkul,ipk)

Basis data MIF W4-09

9/4/2011 47

Atribut yang berlebihanAtribut 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 terkodekanAtribut 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 : 523044249/4/2011 49

Basis data MIF W4-09

Atribut berlebihan : atribut terkodekan

Basis data MIF W4-09

9/4/2011 50

Atribut berlebihan : atribut terkodekanTapi 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 gabunganAtribut 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 : 04523500angkatan no urutBasis data MIF W4-09 9/4/2011 52

Atribut berlebihan : atribut gabunganSama 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-tindihJadi 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 gandaAtribut 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 gandaJika 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.wbSemoga 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