OVERVIEW BASIS DATA RELASIONAL. Oleh: Ir. M. Ramadhan, MT

dokumen-dokumen yang mirip
BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

BASIS DATA. Desain Database dan Normalisasi. Fakultas Ilmu Komputer UDINUS

PERANCANGAN BASIS DATA. Alif Finandhita, S.Kom

PERANCANGAN BASIS DATA

Tujuan Umum Tujuan Khusus Pokok Bahasan/Materi

Copyright 2005 PENS-ITS C H A P T E R

SISTEM BASIS DATA. Pertemuan 4. 3 SKS Semester 2 S1 Sistem Informasi Nizar Rabbi Radliya

C H A P T E R. Copyright 2005 PENS-ITS

C H A P T E R 5-8. Normalisasi Database. Arif Basofi, S.Kom, MT.

Pemodelan Basis Data Entity-Relationship Diagram (contoh kasus 2) Yusuf 2010

Pertemuan Transformasi ER-MODEL INDIKATOR. 1. Memahami ER model 2. Menerapkan transformasi ER- Model ke Model Relasional.

MODUL 1 SEPUTAR PERANCANGAN DATABASE. 1.1 Entity-Relationship Model (ER Model) dan Entity Relationship Diagram (ERD)

PERANCANGAN SISTEM TERINCI DATABASE

PERANCANGAN SISTEM DATABASE

Perancangan Basis Data

Pertemuan 7-8 NORMALISASI

Review Basis Data 1. by: Ahmad Syauqi Ahsan

Basis Data 1 - TIS3333

PERANCANGAN SISTEM TERINCI DATABASE

SISTEM BASIS DATA (Lanjutan) :

Normalisasi Bagian I

Normalisasi Data. Author : Minarni, S.Kom.,MM

SISTEM BASIS DATA AUB SURAKARTA

Pertemuan 2-3 ER-MODEL

BAB III PERANCANGAN BASIS DATA DGN TEKNIK NORMALISASI

ENTITY RELATIONSHIP DIAGRAM. SiBaDa Sesi 4

BAB V. dimengerti, mudah dipelihara, mudah memprosesnya, dan mudah untuk dikembangkan sesuai kebutuhan baru

Hanif Fakhrurroja, MT

Perancangan Basis Data

NORMAL FORM. Normalisasi Table sendiri terbagi atas bentuk normal ke 1 sampai bentuk normal ke 5. lebih jelasnya

ENTITY RELATIONSHIP DIAGRAM. By Tim Dosen

PERTEMUAN 6. Normalisasi Database (Conoly-chap 14) (Ramakisman -chap 15)

Materi 4 BASIS DATA 3 SKS Semester 4 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

NORMALISASI DATA POKOK BAHASAN. Pendahuluan

Normalisasi. Yusuf 2010

Konsep Normalisasi dan Anomali Tabel

BAB 2 LANDASAN TEORI

STMIK AMIKOM YOGYAKARTA

DESAIN DATABASE DAN NORMALISASI

Copyright 2005 PENS-ITS C H A P T E R. Normalisasi Database

Model Data Dalam SBD

Perancangan Basis Data Relasional. (Entity Relationship Model) By : Hanung N. Prasetyo

SISTEM BASIS DATA 1 Imam Asrowardi, S.Kom.

BAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL

MENGENAL BASIS DATA BERORIENTASI OBJEK. Oleh: Ir. M. Ramadhan, MT

NORMALISASI UNTUK BASIS DATA RELASIONAL

BAB II LANDASAN TEORI

Pertemuan 5 TEHNIK NORMALISASI

Teknik Perancangan Basis Data

SISTEM BASIS DATA Imam Asrowardi, S.Kom.

Sistem Basis Data ( )

Normalisasi Lanjut. I. Review Normalisasi

Database System 4 Normalization

ASSALAMU ALAIKUM WR.WB

BASIS DATA. Model Data Relational. Fakultas Ilmu Komputer UDINUS

MODEL RELASI DAN NORMALISASI DATABASE

BAB IV Normalisasi Data

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI : S1 KOMPUTERISASI AKUNTANSI Semester : 2

ANALISA RANCANGAN DATABASE

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI : S1 SISTEM INFORMASI Semester : 2

BAB II LANDASAN TEORI. (Davis, 1995, hal.68). Informasi menurut Gordon B. Davis adalah data yang telah

NORMALISASI. Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI : DIII MANAJEMEN INFORMATIKA Semester : 2

Desain Sistem Basis Data. 1. Struktur Basis Data 2. Normalisasi Data 3. ERD (entity relationship diagram)

Pemodelan Data (1) Week 2

BAB 2 LANDASAN TEORI

Bagian 4 Normalisasi. Kuliah Basis Data Pra S2 Ilmu Komputer - FMIPA Drs. Agfianto Eko Putra, M.Si.

Normalisasi Database

Pendekatan Normalisasi

PARADIGMA VOL. IX. NO. 2, APRIL 2007

Bentuk normal pertama (1NF) untuk menghilangkan atribut bernilai jamak. Bentuk normal kedua (2NF) untuk menghilangkan kebergantungan parsial.

ERD, EERD DAN PEMETAAN KE MODEL RELASIONAL

ER (Entity-Relationship) Model dan Mapping ke Model Relasional. Politeknik Elektronika Negeri Surabaya

Relational Database & Pemodelan Data [Review]

NORMALISASI BASIS DATA. Institut Teknologi Sumatera

BAB I NORMALISASI DATABASE

P7 Perancangan Database

BAB 2 LANDASAN TEORI

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

DESAIN DATABASE. Pertemuan 06 3 SKS

PERTIMBANGAN MELAKUKAN DENORMALISASI PADA MODEL BASIS DATA RELASI. Gandung Triyono

Pertemuan 3 dan 4 : MODEL DATA RELASIONAL

Desain Data Base. Proses Desain Data Base

Database Design. Pemodelan data & Model Entity-Relationship. Pertemuan 4. Dahlia Widhyaestoeti, S.Kom

Entity Relationship Model

BAB 2 LANDASAN TEORI

Basis Data. Pemodelan Database dengan ER Diagram (Entity Relationship Diagram) Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

ANOMALI. Anomali ada 3 jenis yaitu: Anomali pengubahan Anomali penyisipan Anomali penghapusan

Entity Relationship Model

Database Systems: Ch. 3: The Relational Model. History of The Relational Model. Learning Objectives

Model Relational. S# Nama Status Kota S1 Hanato 20 Bandung S2 Andi 10 Jakarta S3 Shy 25 Surabaya S4 Tina 20 Medan

PERANCANGAN BASIS DATA PERTEMUAN KE -3. Rauf Fauzan, S.Kom.,M.Kom

SATUAN ACARA PERKULIAHAN MATA KULIAH SISTEM BASIS DATA 1 (MI) KODE / SKS KK / 2 SKS

Tabel dan Key dalam Database Tipe data dan Karakter pada Database. Author : Minarni, S.Kom.,MM

BAB 2 LANDASAN TEORI

Normalisasi Donny Yulianto, S.Kom

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

ER-DIAGRAM (ENTITY RELATIONSHIP DIAGRAM)

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

Pertemuan VII Normalization (1) Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

Transkripsi:

OVERVIEW BASIS DATA RELASIONAL Oleh: Ir. M. Ramadhan, MT

Model Relasional Yang akan dibahas: Model relasional: struktur, karakteristik, key, representasi skema basis data Integritas relasional: integritas entitas, integritas referensial Bagaimana membentuk query dalam aljabar relasional View: tujuan dan kegunaan Struktur Data Relasional Relasi: tabel yg terdiri atas baris & kolom level eksternal & konseptual Atribut: nama kolom relasi Domain: sekumpulan harga yg diizinkan u/ sebuah atau beberapa atribut Tuple: baris relasi Derajat relasi: jumlah atribut dalam relasi Kardinalitas relasi: jumlah tuple dalam relasi Basis data relasional: sekumpulan relasi yang sudah normal Karakteristik Relasi Setiap relasi bernama unik Setiap sel relasi berharga tunggal Setiap atribut bernama unik Urutan atribut tidak penting Harga sebuah atribut berasal dari domain yang sama Setiap tuple unik Urutan tuple scr teoritis tak penting

Key Relasional Candidate key: sebuah atau sekumpulan atribut minimum yang secara unik mengidentifikasi sebuah tuple dalam sebuah relasi Dalam sebuah relasi mungkin ada beberapa candidate key Key dengan atribut lebih dari sebuah disebut composite key Primary key: candidate key yg dipilih utk mengidentifikasi tuple dalam relasi Foreign key: sebuah atau sekumpulan atribut dalam sebuah relasi yang cocok dengan candidate key relasi lainnya (atau relasi yang sama) Representasi Skema Basis Data Relasional Sebuah basis data relasional terdiri atas sejumlah relasi Skema relasi: nama relasi diikuti sekumpulan atribut Skema basis data relasional: kumpulan skema relasi dalam basis data tsb. Integritas Relasional Untuk menjamin keakuratan data: Integritas entitas: dalam sebuah relasi, atribut primary key tidak boleh null Null merepresentasikan harga yang belum diketahui (tidak ada) Null tidak sama dengan nol, spasi, atau string kosong Integritas referensial: jika foreign key ada dl sebuah relasi, mk harganya hrs cocok dg harga candidate key dl relasi lain (relasi yg sama) yang terhubung Enterprise constraint: aturan tambahan yg dispesifikasikan oleh user/dba

Model Entity-Relationship Pada bagian ini akan dibahas: Konsep dasar berkaitan dengan model ER (Entity-relationship) Macam-macam notasi yang digunakan dalam diagram ER Model ER menggunakan UML (Unified Modeling Language) Model ER: teknik utama untuk desain basis data konseptual Jenis Entitas Merepresentasikan sekumpulan objek dlm dunia nyata dg properti sama fisik, contoh: pegawai, dosen, surat, mobil, dsb. konseptual (abstrak), contoh: penjualan, pengalaman kerja, kuliah, dsb Jenis entitas kuat eksistensinya tidak bergantung pada entitas lain disebut juga entitas parent, owner, atau entitas dominan Jenis entitas lemah eksistensinya bergantung pada entitas lain disebut juga entitas child, dependent, atau subordinat Relationship Relationship: asosiasi (keterkaitan) antar entitas Derajat relationship: jumlah jenis entitas yang berpartisipasi dalam sebuah relationship Notasi Chen entitas entitas kuat relationship

Derajat relationship Dosen membimbing Mahasiswa binary relationship (relationship derajat dua) quaternary relationship (relationship derajat empat) mengawasi supervisor Karyawan supervisee ternary relationship (relationship derajat tiga) recursive relationship (relationship derajat satu)

Atribut Atribut: properti entitas atau relationship Contoh atribut entitas mahasiswa: NPM,, Alamat, Tgl Lahir, IPK Atribut Sederhana Atribut yang hanya terdiri atas satu komponen Contoh: gol darah, hobi, jenis kelamin Atribut Komposit Atribut yang terdiri atas beberapa komponen Misalnya alamat terdiri atas nama jalan, kelurahan, kecamatan, kota, prov. Atribut Berharga Tunggal Atribut yg hanya memiliki sebuah harga u/ sebuah entitas Contoh: gol. darah, jenis kelamin, tgl. lahir Atribut Berharga Banyak Atribut yang memiliki banyak harga untuk sebuah entitas Contoh: telepon, hobi Atribut Turunan (derived attribute) Atribut yang harganya diperoleh (turunan) dari sebuah atau sekumpulan atribut lain Contoh: gaji, IPK Notasi Chen atribut atribut berharga banyak atribut turunan

Candidate Key Sebuah/sekumpulan atribut yg secara unik mengidentifikasi sebuah entitas Misalnya No. KTP atau No. SIM untuk mengidentifikasi entitas orang Primary Key Candidate key yang dipilih untuk mengidentifikasi sebuah entitas secara unik Misalnya No.KTP dipilih sebagai primary key untuk mengidentifikasi entitas orang Notasi Chen atribut primary key Composite Key Candidate key yang terdiri atas dua atribut atau lebih Misalnya, NIM + KodeMataKuliah + Th + Smt adalah composite key yang digunakan untuk mengidentifikasi nilai mata kuliah mahasiswa Multiplicity Jumlah objek dari sebuah jenis entitas yang mungkin muncul dalam relationship Berkaitan dg multiplicity, ada tiga jenis relationship: 1 : 1 relationship (one-to-one relationship) 1 : N relationship (one-to-many relationship) M : N relationship (many-to-many relationship) 1 1 1 N M N

Notasi Chen Notasi Crow's Feet Notasi UML atribut primary key entitas atribut 1 atribut 2 atribut n Entitas atribut primary key atribut 1 atribut 2 : atribut n Entitas atribut (PK) atribut 1 atribut 2 : atribut n 1 1 relationship 1 N relationship relationship relationship 1 0..1 relationship 1 0..* relationship M relationship N relationship 1..* 0..* relationship Recursive relationship: 0..* 0..* relationship peran relationship entitas peran peran relationship entitas peran relationship peran entitas peran

Pada bagian ini akan dibahas: tujuan normalisasi masalah akibat adanya redundansi data Normalisasi konsep ketergantungan fungsional proses normalisasi Tujuan Normalisasi Tujuan utama perancangan basis data relasional adalah mengelompokkan atribut ke dalam relasi sehingga redundansi data (data ganda) minimum. Normalisasi: teknik untuk memperoleh sekumpulan relasi yang memenuhi kebutuhan data sebuah enterprise (perusahaan, lembaga, organisasi, dsb) Redundansi Data dan Anomali Update Adanya redundansi data menimbulkan masalah anomali update : (a) anomali penyisipan, (b) anomali penghapusan, (c) anomali modifikasi Anomali Penyisipan Bila ada pegawai baru yang ditempatkan di Cabang C3: Ke dalam relasi PegawaiCabang, selain data pegawai (NIP,, Alamat), data detail Cabang C3 (NoCabang, AlamatCabang, TelpCabang) juga harus ditambahkan dengan resiko terjadi ketidakkonsistenan data. Sebaliknya, pada relasi Pegawai, cukup ditambahkan data pegawai dan Cabang C3 tempat ia bekerja tanpa harus memasukkan detail cabang.

Relasi PegawaiCabang berikut masih memiliki data ganda (redundansi data) Pengulangan data yang sama pada NoCabang, AlamatCabang, TelpCabang Timbul masalah anomali update (penyisipan, penghapusan, modifikasi) Relasi PegawaiCabang NIP Alamat NoCabang AlamatCabang TelpCabang 04.001 Toto Jl. Kelinci 27 C5 Jl. Rivai 98 360123 04.003 Ina Jl. ABC 15 C3 Jl. Berlian 56 353637 05.007 Adi Jl. Murai 96 C3 Jl. Berlian 56 353637 05.009 Badu Jl. Merah 3 C7 Jl. Lintas 12 708090 05.017 Fulan Jl. Teduh 48 C5 Jl. Rivai 98 360123 05.022 Nia Jl. Damai 10 C3 Jl. Berlian 56 353637 Normalisasi lebih lanjut terhadap relasi di atas menghasilkan dua relasi Keduanya bebas dari masalah anomali update karena tidak ada data ganda Relasi Pegawai Relasi Cabang NIP Alamat NoCabang NoCabang AlamatCabang TelpCabang 04.001 Toto Jl. Kelinci 27 C5 C3 Jl. Berlian 56 353637 04.003 Ina Jl. ABC 15 C3 C5 Jl. Rivai 98 360123 05.007 Adi Jl. Murai 96 C3 C7 Jl. Lintas 12 708090 05.009 Badu Jl. Merah 3 C7 05.017 Fulan Jl. Teduh 48 C5 05.022 Nia Jl. Damai 10 C3

Anomali Penyisipan (Lanjutan) Bila ada cabang baru yang belum ada pegawainya: Ke dalam relasi PegawaiCabang, data detail cabang baru (NoCabang, AlamatCabang, Telepon) ditambahkan dengan atribut pegawai (NIP,, Alamat) dikosongkan. Hal ini tak mungkin karena NIP sebagai primary key tidak boleh kosong. Berarti data cabang baru tak dapat ditambahkan. Sebaliknya, pada relasi Cabang, detail cabang baru dapat ditambahkan. Anomali Penghapusan Bila pegawai dengan NIP 05.009 dihapus: Pada relasi PegawaiCabang: data detail Cabang C7 juga ikut terhapus Sebaliknya, penghapusan pegawai dengan NIP 05.009 pada relasi Pegawai tidak mengakibatkan hilangnya data detail Cabang C7. Anomali Modifikasi Misalkan Cabang C3 pindah alamat dan teleponnya berganti nomor: Pada relasi PegawaiCabang: modifikasi data harus dilakukan secara berulang ke seluruh tuple yang memuat data Cabang C3. Hal ini dapat menimbulkan ketidakkonsistenan data. Sebaliknya, modifikasi data Cabang C3 pada relasi Cabang cukup dilakukan sekali

Ketergantungan Fungsional Jika A dan B adalah atribut relasi R, maka B memiliki ketergantungan fungsional pada A (ditulis A B), jika setiap harga A berasosiasi tepat dengan satu harga B. (A dan B boleh jadi terdiri atas satu atau beberapa atribut) Determinan ketergantungan fungsional adalah atribut atau sekumpulan atribut yang ada pada sisi kiri anak panah NPM Determinan memiliki ketergantungan fungsional pada NPM NPM TIDAK memiliki ketergantungan fungsional pada NPM 2005.99.001 Amir 2005.99.001 Amir 2002.55.123 Proses Normalisasi 1NF, 2NF, 3NF, BCNF, 4NF, 5NF Pertama kali dikembangkan oleh E.F. Codd (1973): 1NF, 2NF, 3NF R. Boyce dan E.F. Codd (1974): BCNF Fagin (1977, 1979): 4NF, 5NF (sangat jarang)

1NF - First Normal Form (Bentuk Normal Pertama) Adalah relasi yang setiap perpotongan baris dan kolomnya berisi satu dan hanya satu harga. 2NF - Second Normal Form (Bentuk Normal Kedua) Relasi yang memenuhi 1NF dan setiap atribut bukan primary key memiliki ketergantungan fungsional secara penuh pada primary key. Bila A dan B adalah atribut sebuah relasi, maka B memiliki ketergantungan fungsional secara penuh pada A jika B bergantung fungsional pada A secara keseluruhan dan bukan pada sebagian dari A. 3NF - Third Normal Form (Bentuk Normal Ketiga) Relasi yang memenuhi 1NF, 2NF dan atribut yang bukan primary key tidak memiliki ketergantungan transitif pada primary key Misal A, B, C adalah atribut sebuah relasi. Jika A B dan B C, maka dikatakan C memiliki ketergantungan transitif pada A melalui B. BCNF Boyce-Codd Normal Form (Bentuk Normal Boyce-Codd) Relasi yang jika dan hanya jika setiap determinan adalah candidate key. Relasi BCNF tidak harus melalui 3NF terlebih dahulu Pengecekan BCNF perlu dilakukan apabila pada relasi tersebut : berisi dua composite candidate key atau lebih, dan sekurang-kurangnya ada sebuah atribut yang overlap

Contoh relasi yang belum BCNF Relasi tsb. menunjukkan: Relasi WawancaraMhsBaru NoTes Tgl Waktu NRP Ruang 05.012 19-08-2005 08.00 09.30 99.005 205 05.034 19-08-2005 10.00 11.30 99.005 205 05.056 19-08-2005 10.00 11.30 99.013 304 05.034 23-08-2005 08.00 09.30 99.005 304 05.056 23-08-2005 10.00 11.30 99.005 304 Seorang mhs baru diwawancara hanya sekali dalam sehari. Bila dipandang perlu, wawancara dilakukan lebih dari sekali pada hari yang berbeda. Pada hari yang sama, pewawancara menempati ruang yang sama Berdasarkan ketentuan di atas, relasi memiliki ketergantungan fungsional: NoTes, Tgl Waktu, NRP, Ruang NRP, Tgl, Waktu NoTes primary key candidate key Ruang, Tgl, Waktu NRP, NoTes NRP, Tgl Ruang candidate key Bukan candidate key Karena ada determinan yg bukan candidate key, relasi di atas belum BCNF Ketergantungan fungsional yang determinannya bukan candidate key dipisahkan dalam relasi tersendiri, sehingga diperoleh dua relasi BCNF: Wawancara (NoTes, Tgl, Waktu, NRP) RuangWawancara (NRP, Tgl, Ruang)

Setelah dinormalisasi, dari tabel WawancaraMhsBaru diperoleh dua buah tabel BCNF sbb: Relasi Wawancara NoTes Tgl Waktu NRP 05.012 19-08-2005 08.00 09.30 99.005 05.034 19-08-2005 10.00 11.30 99.005 05.056 19-08-2005 10.00 11.30 99.013 05.034 23-08-2005 08.00 09.30 99.005 05.056 23-08-2005 10.00 11.30 99.005 Relasi RuangWawancara Tgl NRP Ruang 19-08-2005 99.005 205 19-08-2005 99.013 304 23-08-2005 99.005 304

Daftar Pustaka Connolly, Thomas., et.al., 2002. Database System. Wokingham England, Addison-Wesley Publishing Company. Date, C.J, 2000. An Introduction to Database System. 7 th Edition, New York, Addison Wesley Publishing Company. 2006, M. Ramadhan