Konsep Dasar Basis Data Basis Kumpulan Gudang Data
Konsep Dasar Basis Data ? Basis : Kumpulan / Gudang Data : Fakta tentang obyek, orang dan lain-lain yg dinyatakan dengan nilai (angka, simbol dll) Hirarki Data : Elemen Data Rekaman Berkas 1
Konsep Dasar Basis Data Chou : Basis data adalah kumpulan informasi bermanfaat yang diorganisasi kedalam tata cara yang khusus C. J. Date : Basis data adalah tempat untuk sekumpulan berkas data terkomputerisasi Kesimpulan : Basis data tidak hanya sekedar sekumpulan berkas (tabel) yang saling berhubungan, tetapi mencakup hal lain seperti hub. Antar tabel, view dan bahkan kode (prosedur tersimpan) 2
Konsep Dasar Basis Data Evolusi Teknologi Basis Data : v 1960 s : Sistem Pemrosesan Berkas, DBMS dan Layanan Inf. Online berbasis teks v 1970 s : Penerapan sist. Pakar pada sist. Pendukung Keputusan dan basis data berorientasi object v 1980 s : Sistem hypertext yg memungkinkan melihat basis data secara acak berdasarkan suatu kunci v 1990 s : Sistem basis data cerdas dan sistem basis data multimedia 3
Konsep Dasar Basis Data Sistem Pemrosesan Berkas (File Processing System) : “sekelompok rekaman disimpan pada sejumlah berkas secara terpisah” Prog. Aplikasi Personalia Prog. Aplikasi Pelatihan Berkas personalia Berkas pelatihan 4
Konsep Dasar Basis Data Sistem Pemrosesan Berkas (File Processing System) : Kelemahan (disadvantages) : ØData Redundancy and Inconsistency ØDifficulty in Accessing Data ØData Isolation ØIntegrity Problems ØSecurity Problems Ø Atomicity Problems 5
Konsep Dasar Basis Data Pendekatan Basis Data : DBMS Basis Data tersimpan secara terpusat berbagai User dapat mengakses data menggunakan DBMS 6
Konsep Dasar Basis Data Keuntungan Pemakaian Sistem Basis Data: q Terkontrolnya kerangkapan data q Konsistensi data q Data dapat dipakai bersama q Memudahkan standarisasi q Keamanan data terjamin q Terpeliharanya integritas data q Data independence : Ø Organisasi database dapat diubah tanpa mengganggu prog. Aplikasi Ø Memudahkan pengembangan program aplikasi Ø Memberikan fasilitas pengontrolan terpusat, demi keamanan dan integritas data 7
Sistem Basis Data Sistem : Sebuah tatanan yang terdiri dari sejumlah Komponen fungsional yang SALING berhubungan untuk memenuhi suatu tujuan tertentu. Sistem Basis Data : Merupakan sistem yang terdiri atas basis data dan sekumpulan program (DBMS) yang memungkinkan beberapa user mengakses dan memanipulasi data tersebut. 8
Sistem Basis Data Komponen Sistem Basis Data : Ø Hardware Ø Operating System Ø Basis Data Ø DBMS Ø Pemakai / User/brainware Ø Software lain Basis Data user File 1 File 3 file 2 File 4 9
Sistem Basis Data DBMS ( Data Base Management System) : Adalah suatu program komputer yang digunakan untuk memasukkan, mengubah, menghapus, memanipulasi dan memperoleh data / informasi secara praktis dan efisien Contoh Produk DBMS : 2 Oracle (Oracle Corp. ) 2 2 2 Informix Sybase Dbase MS Sql, My SQl Ingres (ASK Group Inc. ) 10
Sistem Basis Data Pemakai / User : ÉProgrammer Aplikasi Cara berinteraksi dengan basis data melalui program yang ditulis ÉUser Mahir (Casual User) Cara berinteraksi dengan basis data melalui query yang telah disediakan oleh DBMS ÉUser Umum (End User/Naïve User) Cara berinteraksi dengan basis data melalui pemanggilan program aplikasi (executable program) ÉUser Khusus (Specialized User) User yang dapat mengakses Basis data tanpa / dengan dbms, misalnya untuk keperluan Artificial Intelligence, Expert System dll 11
Sistem Basis Data Abstraksi Data : View 1 Merupakan tingkatan dalam bagaimana melihat data dalam Sistem Basis Data View 2 konseptual Fisik View 3 Level Penampakan : user yang menikmati sebagian dari Basis Data Menggambarkan data apa yg sebenarnya (secara fungsional) disimpan dlm Basis Data dan hubungannya dg data lain Bagaimana sesungguhnya suatu data disimpan 12
Sistem Basis Data Merupakan cara berinteraksi pemakai dg basis data yang Bahasa Basis Data : sesuai dengan aturan ditetapkan oleh pembuat DBMS Bagian Basis Data : H Data Definition Language (DDL) Bahasa yg digunakan untuk menggambarkan basis data secara keseluruhan, Operasi yang dapat dijalankan adalah membuat tabel baru, membuat indeks, mengubah tabel, menentukan struktur. Hasil kompilasi dari DDL ini adalah Kamus Data (Data Dictionary) H Data Manipulation Language (DML) Bahasa untuk melakukan manipulasi dan pengambilan data pada suatu basis data, seperti : penyisipan, penghapusan dan update. 13
Sistem Basis Data Struktur Sistem Keseluruhan : Naïve user Program Aplikasi Exe Programmer casual System Call Query DML Precompiler Query Processor Database Manager File Manager DBA Skema Basis Data DDL Compiler DBMS File Data Disk Kamus Data 14
Sistem Basis Data Keterangan : File manager : mengelola alokasi ruang dalam disk dan struktur data dalam disk Database manager : menyediakan interface antara low level Dengan prog. Aplikasi dan query Query processor : menterjemahkan perintah dlm query Language ke perintah low level yang dimengerti oleh Database manager DML precompiler : mengkonversi perintah DML yang ada Di prog. Aplikasi ke pemanggilan prosedur normal dlm Bahasa induk DDL compiler : mengkonversi perintah-perintah DDL Kedalam sekumpulan tabel yang mengandung metadata. Tabel ini kemudian disimpan dalam kamus data 15
Model Data Dalam SBD Model Data : Adalah kumpulan perangkat konseptual untuk menggambarkan Data, hubungan antar data, semantik dan batasan data. Model data biasanya digunakan untuk perancangan basis data, yang disebabkan karena kelangkaan data / fakta yang dimiliki Henry F. Korth : Ada 2 kelompok model data, yaitu : v Model data berbasis object v Model data berbasis record 16
Model Data Dalam SBD Secara umum : E-R Model Object Based Data Model Record Based Semantic Model Binary Model Relational Model Hierarchycal Model Network Model Physical Based Unifying Model Frame Model 17
Model Data Dalam SBD Menjelaskan hub logik antar data dlm bentuk hub bertingkat. Elemen penyusun disebut node, node tertinggi : root. Suatu node yg lebih rendah hanya diijinkan memp, 1 hub dg node yg lebih tinggi, disebut parent. Parent dapat mempunyai > 1 hub dg node dibawahnya. Model Data Hirarkis : Univ Nama Universitas Contoh : Fak Nama Fak Fasilkom UDINUS Jml Dosen Jml Mhs 85 8500 Mhs NIM Nama A 21002 Adam Fakultas Fasilkom MK KD MK MKK 01 Jml Fak 5 Dosen NIP Nama_D Pangkat A 001 DR. Vis IIIC Nama_mk SKS SBD I 2 18
Model Data Dalam SBD Model Data Jaringan : Contoh : Distandarisasi oleh Data Base Task Group (DBTG) tahun 1971. Hampir sama seperti hirarakis, tetapi dalam model jaringan suatu node dibawahnya bisa memp hub dengan > 1 node diatasnya Universitas Fakultas Mahasiswa Registrasi Dosen Mata Kuliah 19
Model Data Dalam SBD E-R model : Model yang menjelaskan hub antar data dalam basis data berdasarkan suatu persepsi bahwa real word terdiri dari obyek-obyek dasar yang mempunyai relasi antara obyek-obyek tersebut Simbil-simbol : entitas atribut Relasi / hubungan Garis hubung 20
Model Data ERD Dalam SBD Contoh : Nama_dos Dosen 1 kode-_kuliah Mengajar Nama_dos Alamat_dos N Mata Kuliah Kode_kuliah waktu tempat Nm_kuliah SKS 21
Model Data Dalam SBD Hampir sama seperti E-R Model, tetapi relasi antar obyek dasar dinyatakan dengan kata-kata (semantik). Model Data Semantic : SKS Contoh : Mata Kuliah Kode NM_kul Mengajar mengambil Mahasiswa NIM Dosen Nama_dos Nama Alamat 22
Model Data Relasional Disebut juga : Model Relasional atau Basis Data Relasional (ditemukan oleh : E. F. Codd) Menunjukan suatu cara yang digunakan untuk mengelola data secara fisik dalam memori sekunder dan bagaimana bentuk relasi dari keseluruhan data dalam sistem yang sedang ditinjau Kelebihan : Dapat mengakomodasi berbagai kebutuhan pengelolaan basis data yg ada di dunia nyata (real word) Pencarian data dari suatu tabel atau banyak tabel apat dilakukan dengan cepat Merupakan model yang paling sederhana sehingga mudah untuk dipahami 23
Model Data Relasional Basis Data akan disebar / dipilah ke dalam tabel dua dimensi Contoh : Kolom / Field / Atribut Baris / kardinalitas Tabel / relasi Record / tuple Item data 24
Model Data Relasional Istilah-istilah: $RDMS (relational Database Management System) adalah DBMS yang bermodelkan relasional $Kardinalitas adalah jumlah tupel suatu relasi (tabel) $Derajad / degree / arity adalah jumlah atribut suatu relasi $Domain adalah Himpunan / batasa nilai yang berlaku bagi suatu atribut misalnya : Domain atribut nilai adalah A, B, C, D, dan E Domain tidak sama dengan tipe data suatu atribut $Istilah relasi biasanya untuk membicarakan struktur logis sedangkan istilah tabel biasanya untuk basis data fisik 25
E-R Model (Model Keterhubungan Entitas) Semesta data di dunia nyata ditansformasikan ke dalam sebuah diagram dengan memanfaatkan perangkat konseptual disebut dengan ERD (Entity Relationship Diagram). Simbol / Notasi E-R Diagram : Strong Entity Identifying Relationship Weak Entity Attribute Multivalued Attribute Relationship Associative Entity Derived Attribute Link 26
E-R Model (Model Keterhubungan Entitas) Entity (Entitas) Merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lainnya (individu : manusia, tempat, obyek, kejadian, konsep). Biasanya berhub. Dg baris dlm sebuah tabel). Entity Sets (Himpunan Entitas) : Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama Contoh : Himpunan Entitas : Pelanggan Entitas : Budiman, Suherman dll Himpunan Entitas : Mobil Suzuki, Mobil Honda dll Himpunan Entitas : Mahasiswa Entitas : Ali, Budi, Iman dll 27
E-R Model (Model Keterhubungan Entitas) Contoh : Entitas 1 Himpunan Entitas 28
E-R Model (Model Keterhubungan Entitas) Atribut (attribute / Properties) Merupakan karakteristik dari sebuah entitas (biasanya berhubungan dengan field dalam sebuah tabel). Penentuan atribut bagi suatu entitas didasarkan pada relevansinya terhadap entitas tersebut. Atribut Kunci / Identifikasi : Merupakan atribut pengidentifikasi entitas yang paling unik untuk semua entitas dalam himpunan entitas Contoh : Atribut NIM pada Himp. Entitas mahasiswa Atribut Deskriptif : Merupakan atribut lain selain atribut kunci yang befungsi sebagai penjelasan terhadap entitas dalam himpunan entitas Contoh : Atribut nama, alamat, tgl_lahir pada Himp. Entitas MHS 29
E-R Model (Model Keterhubungan Entitas) Ada tiga macam kunci : ® Superkey Adalah satu / lebih atribut yg dapat membedakan entitas satu dengan lainnya dalam himp entitas ® Candidate Key Merupakan kumpulan atribut minimal yang dapat membeda kan entitas satu dengan lainnya dalam himp entitas. ® Primary Key Salah satu dari candidate key yang digunakan sebagi peng identifikasi suatu entitas dalam himp entitas. 30
E-R Model (Model Keterhubungan Entitas) Contoh : No_KTP No_SIM Nama Alamat Superkey : superkey Candidate Key Primary Key No_KTP+No_SIM+Nama+Alamat No_KTP+No_SIM+Nama No_KTP+No_SIM+alamat No_KTP+No_SIM No_KTP+nama No_KTP+alamat No_SIM+ nama No_SIM+ alamat No_KTP No_SIM Candidate Key: No_KTP No_SIM Primary Key: No_KTP atau No_SIM tergantung kebutuhan
E-R Model (Model Keterhubungan Entitas) Dasar pemilihan Primary Key : 1. Key sering digunakan sebagai acuan 2. Key lebih ringkas 3. Key adalah unik Atribut Sederhana (Simple Attribute) : atribut atomik yg tidak dapat di pilah lagi Atribut Komposit (Composite Attribute) : atribut atomik yg dapat di pilah lagi Contoh : Atribut nama : atribut sederhana (nilai sudah paling kecil / atomik) Atribut alamat : atribut komposit, karena masih dapat dipilah-pilah lagi menjadi atribut : jalan, kota dan kode_pos 32
E-R Model (Model Keterhubungan Entitas) Atribut bernilai banyak (multivalued attribute) : Merupakan atribut yang dapat bernilai lebih dari 1 nilai yang sejenis Atribut bernilai tunggal (Single-valued attribute) : Merupakan atribut yang hanya mempunyai satu nilai Contoh : NIM Nama Alamat 98001 Rudi 98002 Wati Jl. Seroja Hobi Renang Nonton Dago Raya Tidur NIM, Nama dan Alamat : atribut bernilai tunggal Hobi : atribut bernilai banyak Atribut Turunan (Derived attribute) : Merupakan atribut yang nilainya diperoleh dari pengolahan atau diturunkan dari atribut / tabel lain 33
E-R Model (Model Keterhubungan Entitas) Contoh : NIM Nama Alamat Angkatan IPK 98001 Andi 99011 Susi Jl. X Jl. Y 1998 1999 3. 2 3. 0 Angkatan, IPK : Atribut turunan Atribut harus bernilai (Mandatory Attribute) : Merupakan atribut-atribut yang harus diisikan nilainya Atribut tidak harus bernilai (Non Mandatory Attribute / Null) : Merupakan atribut-atribut yang nilainya boleh dikosongi 34
E-R Model (Model Keterhubungan Entitas) Relasi (Relationship) : Digunakan untuk menunjukan hubungan antar entitas Himpunan Relasi (Relationship Sets) : Merupakan kumpulan semua relasi diantara entitas Contoh : Mahasiswa NIM Nama. . . 98001 Andi. . . 98003 Rudi. . . 98013 Susi. . . Mata Kuliah Kode_kul Nama_kul A 01 A 03 A 02 Pancasila Internet I Network I sks 2 2 2 Dari tabel-tabel diatas, dapat dilihat bahwa terdapat hubungan / relasi antara himp entitas mahasiswa dengan mata kuliah. --> Andi mempelajari mata kuliah Internet I --> Rudi mempelajari mata kuliah Internet I dan Network I 35
E-R Model (Model Keterhubungan Entitas) Sehingga apabila dimodelkan dengan E-R Diagram : Mempe lajari Mahasiswa Mata kuliah Kode_kul NIM Nama NIM Kode_kul Nama_kul sks 36
E-R Model (Model Keterhubungan Entitas) Kardinalitas / Derajad Relasi : Merupakan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himp entitas yang lain. Macam-macam Kardinalitas : Ø Satu ke satu (one to one) Entitas 1 Entitas 2 Entitas 3 Entitas 4 A B Setiap entitas pada himp entitas A Berhubungan dengan paling banyak Dengan satu entias pada himpunan Entitas B dan begitu juga sebaliknya 37
E-R Model (Model Keterhubungan Entitas) Contoh : Nama-Dosen Kode alamat 1 1 Menge palai Nama-Dosen Nama_prog Progdi Kode Satu dosen paling banyak mengepalai satu program studi (walaupun tidak semua dosen menjadi ketua) dan setiap program studi di kepalai oleh paling banyak satu dosen. 38
E-R Model (Model Keterhubungan Entitas) Ø Satu ke banyak (one to many) Entitas 1 Entitas 2 Entitas 3 Entitas 4 A Contoh : Entitas 1 Entitas 2 Entitas 3 Entitas 4 Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himpunan entitas B, tetapi Tidak sebaliknya B Setiap agama dapat dianut oleh lebih dari satu mahasiswa, tetapi tidak sebaliknya (setiap mahasiswa hanya dapat menganut satu agama) 39
E-R Model (Model Keterhubungan Entitas) Kode_agm Agama 1 NIM dianut N Mahasiswa NIM Kode_agm Deskripsi Nama Semester 40
E-R Model (Model Keterhubungan Entitas) Ø banyak ke banyak (many to many) Entitas 1 Entitas 2 Entitas 3 Entitas 4 A Contoh : Entitas 1 Entitas 2 Entitas 3 Entitas 4 Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himp entitas B, dan sebaliknya B Setiap dosen dapat mengajar lebih dari satu mata Kuliah dan setiap mata kuliah dapat diajar oleh lebih Dari satu dosen 41
E-R Model (Model Keterhubungan Entitas) Contoh : Nama_dos Dosen N kode-_kuliah Mengajar Nama_dos Alamat_dos N Mata Kuliah Kode_kuliah waktu tempat Nm_kuliah SKS 42
E-R Model (Model Keterhubungan Entitas) Tahapan pembuatan E-R Diagram : Ø Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat Ø Menentukan atribut-atribut kunci dari masing-masing himpunan entitas Ø Mengidentifikasi dan menetapkan seluruh himpunan relasi di antara himpunan entitas – himpunan entitas yang ada beserta foreign key (kunci tamu) Ø Menentukan derajad / kardinalitas relasi untuk setiap himpunan entitas Ø Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif 43
E-R Model (Model Keterhubungan Entitas) ERD dengan kamus data : Pada sebuah sistem yang kompleks, penggambaran atribut-atribut dalam sebuah ERD seringkali kelihatan lebih rumit. Untuk itu pendeklarasian atribut-atribut tersebut dapat menggunakan kamus data. Contoh : Dosen N N Mengajar Mata Kuliah Kamus Data : Dosen = {Nama_dos, Alamat_dos} Mengajar = {Nama_dos, KD_kuliah, Waktu, Tempat, Ruang } Mata Kuliah = {Kd_kuliah, Nm_kuliah, SKS} 44
E-R Model (Model Keterhubungan Entitas) Derajad Relasi Minimum : Menunjukan hubungan (korespondensi) minimum yang boleh terjadi dalam suatu relasi antar himpunan entitas. Nilai derajad relasi minimum hanya boleh 0 atau 1. Contoh : minimum Mahasiswa maksimum (0, N) Mempela jari (0, N) Mata Kuliah ® Setiap mahasiswa dapat mempelajri banyak mata kuliah tetapi ada mahasiswa yang belum / tidak mempelajari mata kuliah satupun. ® Setiap mata kuliah dapat dipelajari oleh banyak mahasiswa, tetapi bisa juga ada mata kuliah yang tidak / belum diikuti oleh satupun mahasiswa 45
E-R Model (Model Keterhubungan Entitas) ERD dalam Notasi Lain : Notasi o o Derajad Relasi Minimum - Maksimum atau o o (0, N) (1, 1) (0, 1) 46
E-R Model (Model Keterhubungan Entitas) Contoh : Mahasisa o Mempela jari o Mata Kuliah Kamus Data : Mahasiswa = {NIM, Nama, Alamat} Mempelajri = {NIM, KD_kuliah, Waktu, Tempat, Ruang } Mata Kuliah = {Kd_kuliah, Nmkuliah, SKS} 47
E-R Model (Model Keterhubungan Entitas) Varian Entitas : n Strong Entity (entitas kuat) Himpunan entitas yg tidak memiliki ketergantungan dg entitas yang lain. n 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. 48
E-R Model (Model Keterhubungan Entitas) memiliki NIM Orang Tua NM_ortu alm_ortu Nama Mahasiswa NIM Nm_ortu alamat Tgl_lhr Menye nangi NIM Hobbi hobbi Hobbi Kunci utama Kunci yg tidak menyakinkan 49
E-R Model (Model Keterhubungan Entitas) Varian Relasi : « Relasi Tunggal (Unary Relation) Relasi yang terjadi dari antar himpunan entitas yg sama Contoh : 1 Nama_dos Keahlian Nama_dos Mendam pingi Dosen Nama_dos-P N 50
E-R Model (Model Keterhubungan Entitas) « Relasi Ganda (Redundant Relation) Nm_dos Kd_kul Meng ajar 1 Dosen tempat N waktu N Kuliah N Meng uasai Nm_dos Kd_kul 51
E-R Model (Model Keterhubungan Entitas) « Relasi Multi Entitas (N-ary Reation) Merupakan relasi yang terdiri dari 3 himpunan entitas / lebih Contoh : Kd_kul Nama_dos Penga jaran Kuliah nm_kul sks Nama_dos waktu Kd_rg Kd_kul Dosen Kd_rg Ruang Nm_rg kap 52
E-R Model (Model Keterhubungan Entitas) Spesialisasi : Merupakan proses dekomposisi (pengelompokkan) sebuah himpunan entitas yg melahirkan himpunan entitas baru yang dilakukan secara top-down. Nm_dos Contoh : dosen nik Is a pangkat Dosen tetap alm_dos Top - down Nm_kantor alm_kantor Dosen ttd tetap 53
E-R Model (Model Keterhubungan Entitas) Generalisasi : Merupakan penyatuan beberapa himpunan entitas menjadi sebuah himpunan entitas baru. Atribut dari masing-masing himpunan entitas disatukan kedalam himpunan entitas baru. Contoh : Mahasiswa bottom - up Is a Mahasiswa D 3 Mahasiswa S 1 54
E-R Model (Model Keterhubungan Entitas) Agregasi : Merupakan sebuah relasi yang secara kronologis mensyaratkan telah adanya relasi lain. Contoh : Mahasiswa N mempelajari N Kuliah Kd_kul nm_kul NIM Nama NIM Kd_rg N mengikuti N Praktikum Kd_kul nilai Nama_pr 55
E-R Model (Model Keterhubungan Entitas) Transformasi ERD ke Basis Data Fisik (Tabel) Aturan-aturan : 1. Setiap Himp. Entitas Ditransformasikan sebagai sebuah tabel Contoh : mahasiswa Mahasiswa Nim nama_mhs alamat nim Nama_mhs alamat 56
E-R Model (Model Keterhubungan Entitas) 2. Relasi dengan Derajad satu-ke-satu yang menghubungkan 2 himp. Entitas akan transformasikan kedalam bentuk penyer taan atribut-atribut relasi ke salah satu himp. Entitas Kode_dos Dosen ( 0, 1) mengepalai (1, 1) Progdi nm_dos dosen Kode_dos nm_dos Kode_P Kode_p progdi Kode_p nm_p Kode_dos nm_p Atribut yg ditambahkan 57
E-R Model (Model Keterhubungan Entitas) Ketentuan penyertaan atribut adalah : Ï Atribut-atribut relasi akan disertakan ke himp. Entitas yg mempunyai derajad relasi minimumnya yg lebih besar atau Ï Atribut-atribut relasi akan disertakan ke himp. Entitas yg mempunyai jumlah record yg lebih sedikit 58
E-R Model (Model Keterhubungan Entitas) 3. Relasi dengan Derajad satu-ke-banyak yg menghubungkan 2 himp. Entitas akan transformasikan kedalam bentuk penyer taan atribut-atribut relasi ke himp. Entitas yg derajad rela sinya banyak (many). dosen Kode_dos dosen 1 Kode_dos nm_dos Kode_kul mengajar ruang m Kuliah kuliah Kode_kul nm_kul sks kode_dos ruang Kode_kul nm_kul sks Atribut yg ditambahkan 59
E-R Model (Model Keterhubungan Entitas) 4. Relasi dengan Derajad banyak-ke-banyak yg menghubungkan dua himp. Entitas, maka atribut-atribut relasi akan di ke transformasikan menjadi sebuah tabel Mahasiswa nim nama m nim krs mahasiswa Nim nama krs Kode_kul Nim kode_Kul nilai m kuliah Kode_kul Nm_kul kuliah Kode_kul nm_kul sks 60
E-R Model (Model Keterhubungan Entitas) 5. Implementasi Himp. Entitas Lemah N memiliki mahasiswa nim N nama orangtua Nm_ortu alm_ortu Alm_ortu N Hobbi hobbi nim mahasiswa NIM orangtua Nm_ortu senang nim Nm_ortu 1 Nm_ortu nama Senang Hobi hobbi nim Hobi Key yang diambil dari entitas kuat 61
E-R Model (Model Keterhubungan Entitas) 6. Implementasi Spesialisasi nm_dos dosen Kd_dos alm_dos nip Kd_dos Is a pangkat Kd_dos Nm_kantor Alm_kantor Tgl_msk Dosen tetap Dosen tidak tetap dosen Dosen tetap Kd_dos nm_dos alm_dos Nip pangkat tgl_msk kd_dos Nm_ktr alm_ktr kd_dos Dosen tidak tetap Key yg diambil dari entitas utama 62
E-R Model (Model Keterhubungan Entitas) 7. Implementasi Generalisasi nim nama mahasiswa alamat Is a Mahasiswa d 3 mahasiswa Mahasiswa s 1 Nim nama alamat progdi 63
E-R Model (Model Keterhubungan Entitas) 8. Implementasi unary/tunggal relation Kd_dos 1 dosen Kd_dos nm_dos kd_dos_pen mendampingi n Nm_dos Kd_dos_pen kuliah n prasyarat kuliah n Kd_kul dosen Kd_kul_syarat Nama atribut diganti sesuai dg fungsinya Kd_kul nm_kul prasyarat Kd_kul kd_kul_syarat Nm_kul 64
NORMALISASI DATA Untuk Merancang Basis Data Dapat Dilakukan : n Membuat Model ERD n Menerapakan Normalisasi Terhadap Struktur Tabel n Menggabungkan Dua Cara Tersebut Normalisasi adalah proses pembentukan tabel yang masih mempunyai anomali menjadi tabel yang normal (tidak ada anomali) Anomali adalah efek samping dari suatu tabel yang tidak diharapkan Beberapa jenis anomali : anomali penyisipan, anomali penghapusan dan anomali peremajaan (update) 65
NORMALISASI DATA Ada dua cara untuk melakukan normalisasi : • 1. Normalisasi dengan Ketergantungan Fungsional/KF/FD • 2. Normalisasi dengan tahap-tahap normalisasi • Normalisasi dengan Ketergantungan Fungsional : Definisi : Apabila diberikan 2 row r 1 dan r 2 dalam tabel T dimana A B, jika r 1(A)=r 2(A), maka r 1(B)=r 2(B) Notasi : A B Arti : dimana A, B adalah atribut dlm suatu tabel T atribut A secara fungsional menentukan fungsi terhadap atribut B atau atribut B secara fungsional tergantung pada atribut A 66
NORMALISASI DATA Dengan ketergantungan Fungsional, maka sebuah tabel Dikatakan normal, jika : • Jika ada dekomposisi tabel, maka dekomposisinya dijamin aman (Lossless-Join Decomposition) • Terpeliharanya Ketergantungan Fungsional pada saat perubahan data (Dependency Preservation) • Tidak melanggar Boyce-Code Normal form (BCNF) 67
NORMALISASI DATA Decomposition Dekomposisi merupakan upaya penguraikan tabel untuk mendapatkan Tabel yang baik Ada dua cara dekomposisi : Ø Lossless Join Decomposition (dekomposisi aman) Proses dekomposisi yang tidak menyebabkan adanya kehilangan informasi Ø Lossy-Join Decomposition (dekomposisi tidak aman) Proses dekomposisi yang menyebabkan adanya kehilangan informasi 68
NORMALISASI DATA Dependency Preservation Merupakan upaya untuk memelihara ketergantungan Fungsional Yaitu apabila terjadi perubahan data, maka harus terjamin agar Perubahan tersebut tidak menghasilkan inkonsistensi data Boyce-Codd Normal Form (BCNF) Sebuah tabel dikatakan berada dalam BCNF jika untuk semua KF Dengan notasi x y, maka x harus merupakan superkey pada Tabel tersebut. Jika tidak demikian, maka tabel tersebut harus Dikomposisi berdasarkan KF yang ada, sedemikian hingga x Menjadi Superkey tabel-tabel hasil dekomposisi. 69
NORMALISASI DATA • Normalisasi dengan Tahap-Tahap Normalisasi Ø Ø Bentuk Tidak Normal (Unnormalized form) Normal Kesatu ( 1 NF / First Normal Form) Normal Kedua ( 2 NF / Second Normal Form) Normal Ketiga ( 3 NF / Third Normal Form) Unnormalized Form Merupakan kumpulan data yang akan direkam, tidak ada keharusan Mengikuti suatu format tertentu, dapat saja data tidak lengkap atau terduplikasi 70
NORMALISASI DATA Bentuk Normal Kesatu Ciri Bentuk normal kesatu adalah : o Setiap data dibentuk dalam flat file (file datar/rata) o Data dibentuk dalam satu record demi satu record dan nilai field Adalah atomic value. o Tidak ada set atribut yg berulang-ulang dan bernilai ganda (multivalue) Bentuk Normal Kedua Syarat : o Telah memenuhi kriteria bentuk normal kesatu o Atribut bukan kunci haruslah bergantung secara fungsi pada primary key 71
NORMALISASI DATA Bentuk Normal Ketiga o Telah memenuhi kriteria bentuk normal kedua o Semua atribut bukan primer tida. K mempunyai hubungan / ketergantungan transitif Ketergantungan Transitif Definisi : Atribut Z mempunyai ketergantungan transitif terhadap X bila : • Y memiliki ketergantungan funsgional terhadap X • Z memiliki ketergantungan funsgional terhadap Y Notasi : X Y Z Contoh: Nim Kdpos kota 72
73
- Slides: 73