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 : 1960s : Sistem Pemrosesan Berkas, DBMS dan Layanan Inf. Online berbasis teks 1970s : Penerapan sist. Pakar pada sist. Pendukung Keputusan dan basis data berorientasi object 1980s : Sistem hypertext yg memungkinkan melihat basis data secara acak berdasarkan suatu kunci 1990s : 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 Berkas personalia Prog. Aplikasi Pelatihan 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 : Basis Data DBMS Data tersimpan secara terpusat berbagai User dapat mengakses data menggunakan DBMS 6
Konsep Dasar Basis Data Keuntungan Pemakaian Sistem Basis Data: Terkontrolnya kerangkapan data Konsistensi data Data dapat dipakai bersama Memudahkan standarisasi Keamanan data terjamin Terpeliharanya integritas data 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 : Sistem Basis Data : 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
DBMS Sistem Basis Data Komponen Sistem Basis Data : Hardware Operating System Basis Data DBMS Pemakai / User/brainware Software lain user Basis Data File1 File3 file2 File4 DBMS 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 : Oracle (Oracle Corp.) Informix Sybase Dbase MS Sql, My SQl Ingres (ASK Group Inc.) 10
Sistem Basis Data Pemakai / User : disediakan oleh DBMS 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 : Merupakan tingkatan dalam bagaimana melihat data dalam Sistem Basis Data Level Penampakan : user yang menikmati sebagian dari Basis Data View1 View2 View3 Menggambarkan data apa yg sebenarnya (secara fungsional) disimpan dlm Basis Data dan hubungannya dg data lain konseptual Bagaimana sesungguhnya suatu data disimpan Fisik 12
Sistem Basis Data Merupakan cara berinteraksi pemakai dg basis data yang sesuai dengan aturan ditetapkan oleh pembuat DBMS Bahasa Basis Data : Bagian Basis Data : 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) Data Manipulation Language (DML) Bahasa untuk melakukan manipulasi dan pengambilan data pada suatu basis data, seperti : penyisipan, penghapusan dan update. 13
Sistem Basis Data DBMS Struktur Sistem Keseluruhan : Disk Naïve user Programmer casual DBA Program Aplikasi Query System Call Skema Basis Data DML Precompiler Query Processor DDL Compiler Database Manager Exe Program DBMS File Manager File Data Kamus Data Disk 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 Henry F. Korth : Model Data : Adalah kumpulan perangkat konseptual untuk menggambarkan Data, hubungan antar data, semantik dan batasan data. Model 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 : Model data berbasis object Model data berbasis record 16
Model Data Dalam SBD Secara umum : E-R Model Semantic Model Object Based Binary Model Relational Model Data Model Record Based Hierarchycal Model Network Model Physical Based Unifying Model Frame Model 17
Model Data Dalam SBD Model Data Hirarkis : Contoh : UDINUS 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 Contoh : Nama Universitas UDINUS Fak Nama Fak Jml Dosen Jml Mhs Jml Fak Fasilkom 85 8500 5 Mhs Dosen NIP Nama_D Pangkat NIM Nama Fakultas A21002 Adam Fasilkom A001 DR. Vis IIIC MK KD MK Nama_mk SKS MKK01 SBD I 2 18
Model Data Dalam SBD Model Data Jaringan : Contoh : Universitas 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 Model Data Jaringan : Contoh : Universitas Fakultas Mahasiswa Dosen Mata Kuliah Registrasi 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 Relasi / hubungan atribut Garis hubung 20
Model Data ERD Dalam SBD Contoh : Nama_dos kode-_kuliah 1 N Dosen Mengajar Mata Kuliah Kode_kuliah Nama_dos waktu Nm_kuliah Alamat_dos tempat SKS 21
Model Data Dalam SBD Dosen Alamat Hampir sama seperti E-R Model, tetapi relasi antar obyek dasar dinyatakan dengan kata-kata (semantik). Model Data Semantic : SKS Kode Contoh : NM_kul Mata Kuliah Mengajar mengambil Dosen Mahasiswa NIM Nama_dos Alamat Nama 22
Model Data Relasional Kelebihan : 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 Tabel / relasi Baris / kardi- nalitas 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 : Attribute Identifying Relationship Strong Entity Weak Entity 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 Entitas : Mobil Suzuki, Mobil Honda dll Himpunan Entitas : Mahasiswa Entitas : Ali, Budi, Iman dll 27
E-R Model (Model Keterhubungan Entitas) Contoh : Entitas 1 Entitas 1 Entitas 1 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 : 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 superkey Candidate Key Primary Key Primary Key: Candidate Key: No_KTP atau No_SIM tergantung kebutuhan No_KTP No_SIM
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 Hobi NIM, Nama dan Alamat : atribut bernilai tunggal Hobi : atribut bernilai banyak 98001 Rudi Jl. Seroja Renang Nonton 98002 Wati Dago Raya Tidur 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 Angkatan, IPK : 98001 Andi Jl. X 1998 3.2 Atribut turunan 99011 Susi Jl. Y 1999 3.0 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 Mata Kuliah NIM Nama ... Kode_kul Nama_kul sks 98001 Andi ... A01 Pancasila 2 98003 Rudi ... A03 Internet I 2 98013 Susi ... A02 Network I 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 Mata kuliah Mahasiswa Kode_kul NIM Nama Kode_kul Nama_kul NIM 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) Setiap entitas pada himp entitas A Berhubungan dengan paling banyak Dengan satu entias pada himpunan Entitas B dan begitu juga sebaliknya Entitas 1 Entitas 1 Entitas 2 Entitas 2 Entitas 3 Entitas 3 Entitas 4 Entitas 4 A B 37
E-R Model (Model Keterhubungan Entitas) Contoh : Kode Nama_prog Nama-Dosen alamat 1 1 Menge palai Dosen Progdi Nama-Dosen 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 Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himpunan entitas B, tetapi Tidak sebaliknya Entitas 1 Entitas 2 Entitas 2 Entitas 3 Entitas 3 Entitas 4 Entitas 4 A B Contoh : 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 NIM 1 N Agama dianut Mahasiswa NIM Kode_agm Nama Deskripsi Semester 40
E-R Model (Model Keterhubungan Entitas) banyak ke banyak (many to many) Entitas 1 Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himp entitas B, dan sebaliknya Entitas 1 Entitas 2 Entitas 2 Entitas 3 Entitas 3 Entitas 4 Entitas 4 A B Contoh : 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 kode-_kuliah N N Dosen Mengajar Mata Kuliah Kode_kuliah Nama_dos waktu Nm_kuliah Alamat_dos tempat 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 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 : N N Dosen 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 : maksimum minimum (0,N) (0,N) Mata Kuliah Mahasiswa Mempela jari 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 : Notasi Derajad Relasi Minimum - Maksimum (0,N) o atau o (1,N) atau atau (1,1) o atau o (0,1) 46
E-R Model (Model Keterhubungan Entitas) Contoh : o Mempela jari o Mata Kuliah Mahasisa 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 : Strong Entity (entitas kuat) Himpunan entitas yg tidak memiliki ketergantungan dg entitas yang lain. 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 NM_ortu Orang Tua NIM alm_ortu Nama Nm_ortu Mahasiswa NIM alamat Hobbi Tgl_lhr Menye nangi Hobbi Kunci utama NIM hobbi 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 Nama_dos Keahlian 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 N waktu Dosen Kuliah tempat N 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 : Nama_dos Kd_kul Penga jaran Nama_dos Dosen Kuliah waktu Kd_rg Kd_kul Kd_rg nm_kul Ruang Nm_rg sks 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 : Top - down dosen alm_dos nik Nm_kantor Is a pangkat alm_kantor Dosen tetap 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 : bottom - up Mahasiswa Is a Mahasiswa D3 Mahasiswa S1 54
E-R Model (Model Keterhubungan Entitas) Agregasi : Merupakan sebuah relasi yang secara kronologis mensyaratkan telah adanya relasi lain. Contoh : N N Kd_kul Mahasiswa mempelajari Kuliah nm_kul N NIM NIM Kd_kul mengikuti Nama Kd_rg nilai N Kd_rg Nama_pr Praktikum 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 dosen Kode_dos Kode_dos nm_dos Dosen nm_dos ( 0,1) Kode_dos mengepalai Kode_P progdi (1,1) Kode_p nm_p Kode_dos Kode_p Progdi 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 Kode_dos nm_dos dosen nm_dos 1 Kode_dos Kode_kul mengajar kuliah ruang Kode_kul nm_kul sks kode_dos ruang m Kode_kul Kuliah nm_kul Atribut yg ditambahkan sks 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 Mahasiswa Nim nama m nama nim krs krs Kode_kul Nim kode_Kul nilai nilai m Kode_kul kuliah kuliah Kode_kul nm_kul sks Nm_kul sks 60
E-R Model (Model Keterhubungan Entitas) 5. Implementasi Himp. Entitas Lemah Nm_ortu 1 memiliki N orangtua Alm_ortu mahasiswa nim Nm_ortu N N hobbi senang Hobbi nim nim hobbi nama orangtua hobbi mahasiswa Senang Nm_ortu alm_ortu NIM Nm_ortu nama Hobi nim Hobi Key yang diambil dari entitas kuat 61
E-R Model (Model Keterhubungan Entitas) 6. Implementasi Spesialisasi nm_dos Kd_dos dosen alm_dos nip Kd_dos Is a Kd_dos Nm_kantor pangkat Alm_kantor Tgl_msk Dosen tetap Dosen tidak tetap dosen Dosen tetap Dosen tidak tetap Kd_dos nm_dos alm_dos Nip pangkat tgl_msk kd_dos Nm_ktr alm_ktr kd_dos Key yg diambil dari entitas utama 62
E-R Model (Model Keterhubungan Entitas) 7. Implementasi Generalisasi nama nim mahasiswa alamat Is a Mahasiswa d3 Mahasiswa s1 mahasiswa Nim nama alamat progdi 63
E-R Model (Model Keterhubungan Entitas) 8. Implementasi unary/tunggal relation Kd_dos Kd_dos 1 dosen dosen mendampingi Kd_dos nm_dos kd_dos_pen n Nm_dos Kd_dos_pen Nama atribut diganti sesuai dg fungsinya kuliah n Kd_kul nm_kul kuliah prasyarat n Kd_kul prasyarat Kd_kul Kd_kul_syarat Kd_kul kd_kul_syarat Nm_kul 64
NORMALISASI DATA Normalisasi Untuk Merancang Basis Data Dapat Dilakukan : Membuat Model ERD Menerapakan Normalisasi Terhadap Struktur Tabel Menggabungkan Dua Cara Tersebut Normalisasi 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 1. Normalisasi dengan Ketergantungan Fungsional/KF/FD Ada dua cara untuk melakukan normalisasi : 1. Normalisasi dengan Ketergantungan Fungsional/KF/FD 2. Normalisasi dengan tahap-tahap normalisasi Normalisasi dengan Ketergantungan Fungsional Ketergantungan Fungsional : Definisi : Apabila diberikan 2 row r1 dan r2 dalam tabel T dimana AB, jika r1(A)=r2(A), maka r1(B)=r2(B) Notasi : AB dimana A, B adalah atribut dlm suatu tabel T Arti : 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 Boyce-Codd Normal Form (BCNF) 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) Bentuk Normal Kesatu ( 1NF / First Normal Form) Bentuk Normal Kedua ( 2NF / Second Normal Form) Bentuk Normal Ketiga ( 3NF / 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 Bentuk Normal Kedua Ciri Bentuk normal kesatu adalah : Setiap data dibentuk dalam flat file (file datar/rata) Data dibentuk dalam satu record demi satu record dan nilai field Adalah atomic value. Tidak ada set atribut yg berulang-ulang dan bernilai ganda (multivalue) Bentuk Normal Kedua Syarat : Telah memenuhi kriteria bentuk normal kesatu Atribut bukan kunci haruslah bergantung secara fungsi pada primary key 71
NORMALISASI DATA Bentuk Normal Ketiga Ketergantungan Transitif Telah memenuhi kriteria bentuk normal kedua Semua atribut bukan primer tidaK 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
Terima Kasih 73