Model-Model Basis Data
Pengantar Sistem Basis Data
Rifqi Hammad, [Link]
• Capaian Pembelajaran
Memahami Pentingnya Data Model
1 Mahasiswa harus mampu menjelaskan
pentingnya data model dalam perancangan
basis data
Menjelaskan Model-Model Basis Data
2 Mahasiswa harus mampu menjelaskan
macam-macam model basis data
Pemodelan Data
Problem dalam desain basis data
Pengantar
Proses
Data
Informasi
Model Data
Permasalahan utama merancang
basis data adalah perbedaan
sudut pandang antara pengguna
menentukan
terhadap data.
Pengguna
Dampak: Rancangan basis
data tidak memenuhi
kebutuhan pengguna Komunikasi antara
pengguna
Sudut Pandang Kebutuhan Data
Contoh perbedaan sudut pandang pengguna terhadap data
Manajer Manajer Manajer Manajer
Pembelian Inventaris Penjualan Keuangan
• Data biaya • Data • Data • Data
barang persediaan penjualan keuangan Perusahaan
• Data barang barang • Data
pemasok pemasukan
barang- • Data
barang pengeluaran
Mahasiswa Dosen Jurusan BAAK
• Data mata • Data absensi • Data • Data
Universitas
kuliah mahasiswa akademik mahasiswa
• Data isian • Data ujian • Data
KRS mahasiswa perkuliahaan
• Data KHS
Proses Desain Basis Data
Tahapan dalam perancangan basis data
Desain
Basis
Data
Desain Implementasi
Desain Logik
Konseptual Fisik
Pemodelan
Data
Model Data
Model Data
Model Data
Pemodelan Data
Konsep pemodelan data
Pemodelan
Proses menghasilkan
model data
Model Data
Manfaat
Database
Memenuhi informasi
Sistem Akademik
Blok Model Data
Entitas kebutuhan pengguna
Atribut Mahasiswa Memudahkan struktur
informasi
Relasi Dosen
KRS
Mata
Batasan Kuliah
Tahap Pemodelan Data
Tahapan dalam melakukan pemodelan data
Desain
1 Konseptual
Desain
Identifikasi semua entitas
2 Logik
yang dibutuhkan
Detailkan setiap entitas
dengan menyertakan
Identifikasi keterkaitan atributnya
antar entitas
Menentukan atribut
kuncinya
tools ER-Diagram Normalisasi
Model Data
Model Data merupakan struktur basis data yang memiliki karakterisitik,
1
relasi, batasan, dan transformasi yang bertujuan merepresentasikan suatu
domain permasalahan tertentu.
Suatu domain permasalahan (objek) dapat memiliki model data yang
2
berbeda-beda.
Suatu model data tidak dapat dinilai mana yang terbaik. Untuk menilai
3
kelayakan model data berdasarkan apakah model data yang dihasilkan
memenuhi kebutuhan pengguna.
Komponen Model Data
Komponen-komponen pembentuk model data
Entitas Atribut
(Entity) (Attribute)
Komponen
Model Data
Relasi Batasan
(Relations) (Constraints)
Entitas
Pengertian mengenai entitas
Entitas (Entity) :
• Objek yang mewakili sesuatu yang ada di dunia nyata,
• Setiap objek dapat dibedakan atau diidentifikasikan secara unik dengan
objek lainnya.
Objek Fisik Objek Konsep Objek Kejadian
• Rumah • Pekerjaan • Penjualan
• Manusia • Departemen / • Pembelian
• Kendaraan divisi • Peminjaman
• Peralatan • Jadwal • dll
• dll • Kasus
• Dll
Himpunan Entitas
Pengertian mengenai himpunan entitas
Himpunan Entitas (Entity Set) :
• Sekumpulan instan entitas yang mempunyai tipe yang sama (sejenis) dan berada dalam
lingkup yang sama membentuk suatu himpunan entitas.
• Contoh : sekumpulan orang yang menjadi mahasiswa pada suatu perguruan tinggi,
dapat didefinisikan sebagai himpunan entitas mahasiswa.
Entitas NIM Nama_mhs Alamat_mhs Tgl_lahir
0700001 Pascal Menjangan 9, Subang 20236 25-2-1996
Himpunan 0700002 Rudi Pogung 12, Jogjakarta 60342 10-5-1999
Entitas
0600002 Firdaus Wilis 7, Semarang 50234 9-12-1998
Mahasiswa
0500003 Ruben Durian Raya, Semarang 50276 20-10-1997
0400034 Fajar Dodokan Raya, Mataram 83121 3-11-1998
Contoh Himpunan “Entitas Fisik”
n
na u s i a En Him
p u n t it a pu
Him s Ma s H nan
ew
n tita an
E
entitas entitas
manusia hewan
entitas
entitas handphone
kendaraan
e
nan hon
Ent Himp pu ndp
itas una m
K en n Hi Ha
s
dar
a an t it a
En
Contoh Himpunan “Entitas Konsep”
Himpunan Entitas
Profesi
entitas
profesi
Mahasiswa Pesepakbola Dokter
Himpunan Entitas
Departemen
entitas
departemen
Atribut
Pengertian atribut
Atribut (Attribute) :
Mendeskripsikan karakteristik / properti yang melekat pada suatu
himpunan entitas.
Himpunan Atribut
atribut
Entitas Manusia
• No KTP
• Nama
• Alamat
• Tanggal Lahir
• Gender
Contoh
• Umur
Entitas Manusia
• Hobi
• No Hp
Contoh Lain Atribut
Contoh Atribut
Entitas kendaraan
• No Mesin
• No Plat
t
bu
• Model
ri
at
• Merk
• Warna
Himpunan • Tahun Pembuatan
Entitas • Harga
Kendaraan
Hubungan (Relationship)
Pengertian hubungan
Relasi (Relationship) :
Hubungan antara beberapa entitas. Ada tiga jenis hubungan antar
entitas :
One-to-many Many-to-many One-to-one (1:1
(1:M or 1..*) (M:N or *..*) or 1..1)
• 1 entitas • M (banyak) • 1 entitas hanya
memiliki relasi entitas memiliki memiliki relasi
dengan M relasi dengan N dengan 1 entitas
(banyak) entitas (banyak) entitas lainnya
Batasan
Pengertian batasan
Batasan (Constraints) :
Batasan-batasan yang dimiliki oleh suatu entitas
Hanya boleh memiliki
jumlah pemain 13 - 23
Entitas
Batasan
Tim sepakbola
Hanya boleh memiliki
1 orang pelatih
Model-Model Data
Introduction
Ada 3 model data yang terkenal, yaitu :
1 Model Hierarkial.
2 Model Jaringan.
3 Model Relasional.
Model Hierarkial
Konsep model hierarkial
Parent Root
One to many
Level 1: Component Component
Children A B
Segment
Level 2: Part 1 Part 2 Part 3
Children
Model Hierarkikal
Contoh basis data model hierarkikal
Dosen
Widya Lidya
Sistem Manajemen
Algoritma Pemrograman
Informasi Bisnis
Ida
Febri Dika Ahmad Sinta Yuli Adi
Model Jaringan
Konsep model jaringan
One to many
One to many
One to many
Dengan banyak parent
Model Relasional
Konsep basis data relasional
1 Model relasional diperkenalkan oleh [Link] tahun 1970
2 Secara logik semua data disusun / distrukturisasi kedalam relasi (tabel)
3 Model Relasional merupakan kumpulan tabel berdimensi dua (disebut
relasi atau tabel) dengan masing-masing tabel tersusun atas tuple
(baris) dan atribut (kolom).
4 Model Relasional mengandung 3 komponen inti, yaitu :
1. Struktur data, diorganisasi dalam bentuk tabel
2. Manipulasi data, dengan DML
3. Integritas data
Istilah-Istilah Dalam Model Relasional
Istilah-istilah penting dalam basis data model relasional
Atribut
kolom pada sebuah tabel
Tupel
NIM NAMA ALAMAT baris pada sebuah
10296125 Nurhayati Jakarta tabel
Relasi
Sebuah tabel yang 10296126 Astuti Depok
kardinalitas
terdiri dari 10296127 Budiman Jakarta (Cardinality)
Jumlah tupel dalam
beberapa baris dan
10296128 Quraish Bekasi sebuah tabel
kolom
10296129 Rizka Bogor
Domain
Kumpulan nilai yang valid untuk satu atau lebih atribut
Derajat (degree)
Jumlah atribut dalam sebuah tabel
Kunci Atribut (Attribute Key)
Pengertian kunci pada basis data model relasional
Kunci (Key) : Fungsi Kunci :
atribut yang digunakan untuk • Identifikasi data antara
identifikasi data antara suatu baris satu dengan baris
baris dengan baris lainnya lainnya.
pada suatu entitas karena • Menghubungkan satu tabel
memiliki nilai unik. dengan tabel lainnya
Nilai Unik : Jenis-Jenis Key :
Nilai yang dimiliki oleh suatu • Kunci Super (Super Key)
cell pada satu atribut tidak • Kunci Kandidat (Candidate key)
boleh sama (tidak ada • Kunci Primer (Primary key)
redudansi). • Kunci Alternatif (Alternate key)
• Kunci Asing / Kunci Tamu (Foreign key)
• Kunci Komposite (Composite Key)
Attribute Key : Studi Kasus
Studi kasus penentuan kunci
Dibawah ini adalah data entitas Mata Kuliah yang memberikan
informasi mengenai mata kuliah
ID Kode Mata Kuliah Kurikulum Semester SKS
01 MK-001 Networking 2018 4 3
02 MK-003 Basis Data 2017 2 4
03 MK-005 Pemrograman 2017 3 3
04 MK-002 Algortima 2018 1 3
05 MK-004 Logika 2017 1 3
Super Key
Jenis-jenis kunci dalam basis data model relasional
Super Key (Kunci Super) : ID Kode Mata Kuliah Kurikulum Semester SKS
• Satu atau gabungan 01 MK-001 Networking 2018 4 3
beberapa atribut yang 02 MK-003 Basis Data 2017 2 4
dapat membedakan
03 MK-005 Pemrograman 2017 3 3
setiap baris data dalam
sebuah tabel secara 04 MK-002 Algortima 2018 1 3
unik. 05 MK-004 Logika 2017 1 3
ID Kode Mata Kuliah Kombinasi
k ey • Bisa menjadi • Bisa menjadi • Dimungkinkan • ID + Kode
per kunci kunci menjadi kunci • ID + Mata
Su • Karena • Karena • Dengan syarat Kuliah
memiliki nilai memiliki nilai penamaan • Kode + Mata
unik unik yang unik Kuliah
Candidate Key
Jenis-jenis kunci dalam basis data model relasional
Candidate key Candidat Key (Kunci Kandidat) :
• Super Key dengan
jumlah atribut yang
paling sedikit
ID Kode Mata Kuliah Kurikulum Semester SKS
01 MK-001 Networking 2018 4 3
02 MK-003 Basis Data 2017 2 4
03 MK-005 Pemrograman 2017 3 3
04 MK-002 Algortima 2018 1 3
05 MK-004 Logika 2017 1 3
Primary Key
Jenis-jenis kunci dalam basis data model relasional
Primary Key (Kunci Primer) : Syarat Primary Key :
Primary key
• Candidate key yang • Nilai tidak boleh NULL (kosong).
dipilih untuk • Nilai harus unik (tidak ada yang sama).
mengidentifikasi baris • Nilai jarang diubah
ID Kode Mata Kuliah Kurikulum Semester SKS
01 MK-001 Networking 2018 4 3
02 MK-003 Basis Data 2017 2 4
03 MK-005 Pemrograman 2017 3 3
04 MK-002 Algortima 2018 1 3
05 MK-004 Logika 2017 1 3
Alternate Key
Jenis-jenis kunci dalam basis data model relasional
Alternate Key (Kunci Alternatif) :
Alternate key
• Candidate key yang tidak dipilih
sebagai primary key.
ID Kode Mata Kuliah Kurikulum Semester SKS
01 MK-001 Networking 2018 4 3
02 MK-003 Basis Data 2017 2 4
03 MK-005 Pemrograman 2017 3 3
04 MK-002 Algortima 2018 1 3
05 MK-004 Logika 2017 1 3
Perbandingan Kunci
Jenis-jenis kunci dalam basis data model relasional
Super Key
Alternate key
Primary key
ID Kode Mata Kuliah Kurikulum Semester SKS
01 MK-001 Networking 2018 4 3
02 MK-003 Basis Data 2017 2 4
03 MK-005 Pemrograman 2017 3 3
04 MK-002 Algortima 2018 1 3
05 MK-004 Logika 2017 1 3
Foreign Key
Jenis-jenis kunci dalam basis data model relasional
Foreign Key (kunci Asing atau kunci tamu)
• Merupakan sembarang atribut yang menunjuk kepada primary key pada tabel
lain.
• Jika sebuah primary key terhubung ke tabel lain, maka keberadaan primary key
pada tabel tersebut disebut sebagai Foreign Key.
• Foreign key akan terjadi pada suatu relasi yang memiliki kardinalitas one to
many atau many to many.
• Primary Key dan Foreign Key adalah atribut yang sama, namun di tabel yang
berbeda. Artinya, nama_atribut sebagai Primary dan Foreign diusahakan harus
sama.
Foreign Key
Contoh penggunaan foreign Key
Primary Key Primary Key
Foreign Key
Sifat-sifat Relasi (Tabel)
Sifat-sifat relasi pada model basis data relasional
1. Nilai Null pada suatu atribut adalah nilai yang tidak diketahui atau kosong,
bukan nilai Nol atau 0.
2. Setiap penamaan relasi (tabel) dalam basis data harus memiliki nama yang
unik (tidak sama).
3. Setiap penamaan atribut (kolom) dalam suatu relasi harus memiliki nama
yang unik.
4. Setiap nilai cell (perpotongan baris dan kolom) dalam suatu relasi harus
bersifat atomik (bernilai tunggal).
5. Nilai untuk setiap atribut harus berdomain sama.
6. Setiap tuple (baris) harus dapat dibedakan secara unik (melalui primary key)
Sifat-sifat Relasi (Tabel)
Contoh-contoh yang tidak memenuhi sifat-sifat relasi
Tbl_Siswa Tidak memenuhi sifat relasi. Tidak memenuhi sifat relasi.
Tbl_Dosen Karena ada nama atribut yang sama. Karena dalam satu atribut
ada domain berbeda
Tbl_Siswa
Tidak memenuhi sifat relasi.
Karena ada nama tabel yang sama.
Tidak memenuhi sifat relasi.
Tidak memenuhi sifat relasi. Karena tidak memiliki primary key
Karena ada cell yang bernilai ganda
Terima Kasih
Referensi M. Nurkholis Abdillah