You are on page 1of 48

BASIS DATA RELASIONAL

ELEMEN
BASIS DATA & BASIS DATA
RELASIONAL

Amalia Nurani Basyarah


Ilmu Komputer, 2018
Review…

Data Representasi dari fakta mengenai suatu obyek

Basis Data Kumpulan data (arsip) yang saling berhubungan

Sistem  tabel basis data,


Sistem Basis Data dbms, pemakai, sistem
komputer

Aplikasi pengelola
DBMS basis data
Abstraksi Data
Sistem basis data biasanya menyembunyikan
detail tentang bagaimana data disimpan
dan diperlihara  agar interface lebih
Abstraksi
friendly. data
Oleh karena itu, seringkali data yang terlihat
oleh pemakai sebenarnya berbeda dengan
yang tersimpan secara fisik.

Abstraksi data merupakan level dalam


bagaimana melihat data dalam sebuah
sistem basis data.
Abstraksi Data
Level Abstraksi Data

1. Level Fisik
Level terendah, menunjukkan bagaimana sesungguhnya data
disimpan. Pada level ini pengguna berurusan dengan data sebagai
teks, angka atau bahkan kumpulan bit data.

2. Level Lojik/Konseptual
Menggambarkan data secara fungsional yang disimpan dalam basis
data dan hubungannya dengan data lain. Pemakai pada level ini
misalnya mengetahui bahwa data pegawai disimpan dalam
beberapa tabel.
Level Abstraksi Data

3. Level Penampakan
Level tertinggi, hanya menunjukkan sebagian dari basis data. Tidak
semua pengguna basis data akan terlibat dengan semua data yang
disimpan. Aplikasi tampilan ini mengkonversi data asli (fisik) menjadi
data bermakna (lojik). Misalkan, data hari yang disimpan dalam kode
(1 untuk senin, 2 untuk selasa, dst) akan ditampilkan bukan sebagai
kode tapi langsung nama harinya.
Skema Data
Skema Data
Penyusun Sistem Basis Data
• Bit, merupakan sistem angka biner yang terdiri atas
angka 0 dan 1
• ƒ
Byte, merupakan bagian terkecil, dapat berupa
karakter numerik, huruf, ataupun karakter khusus
yang membentuk suatu item data / field. 1 Byte
digunakan untuk mengkodekan 1 karakter
• ƒData item (field), merepresentasikan suatu atribut
dari suatu record yang menunjukkan suatu item
dari data, misalnya nama, alamat. Kumpulan dari
field membentuk suatu record
• ƒ
Record, menggambarkan suatu unit data individu
yang tertentu. Kumpulan dari record membentuk
suatu file.
• ƒ
File, terdiri dari record-record yang
menggambarkan satu kesatuan data yang sejenis
Tipe File
Tipe file yang digunakan dalam sistem basis data :

1. File induk (master file)


a. File induk acuan (reference master file)
 Recordnya relatif statis, jarang berubah nilainya
 Contoh : file daftar gaji, matakuliah

b. File induk dinamik (dynamic master file)


 Nilai dari recordnya sering berubah atau diupdate
sebagai hasil suatu transaksi
 Contoh : file stok barang
Tipe File
2. File transaksi (Transaction file)
 ƒDisebut juga file input. Digunakan untuk merekam
data hasil transaksi
 ƒContoh file penjualan barang

3. File laporan (report file)


 Disebut juga file output. Berisi informasi sementara
yang akan ditampilkan sebagai laporan
Tipe File
4. File sejarah (history file)
 Disebut juga file arsip (archieval file).
 ƒMerupakan file yang berisi data masa lalu yang
sudah tidk aktif lagi, tapi masih disimpan sebagai arsip

5. File pelindung (backup file)


 Merupakan salinan dari file-file yang masih aktf di
dalam basis data pada saat tertentu
ƒDigunakan sebagai cadangan apabila file basis
data yang aktf mengalami kerusakan atau hilang
Bahasa Basis Data
Bahasa basis data merupakan perantara bagi
pemakai dengan basis data dalam berinteraksi, yang
telah ditetapkan oleh pembuat DBMS
Dapat dibedakan menjadi 2, yaitu :

a. Data Definition Language (DDL)


ƒ Dengan bahasa ini kita dapat membuat tabel baru,
membuat indeks, mengubah tabel, menentukan
struktur tabel, dll.
 Hasil dari kompilasi perintah DDL menjadi Kamus
Data, yaitu data yang menjelaskan data
sesungguhnya.
 Contoh : Create, Modify report, Modify
Bahasa Basis Data
b. Data Manipulation Lanƒguage (DML)
 Berguna untuk melakukan manipulasi dan pengambilan
data pada suatu basis data.
 Contoh: insert, update, delete, dll
 Alat/aplikasi: dbase 3+, foxbase, SQL, QBE
Model Data

 Model data merupakan suatu cara untuk


menjelaskan bagaimana pemakai dapat
melihat data secara logik.

 Ada 2 jenis model data:


 Model data berbasis objek
 Model data berbasis record
Model Data
1. Model data berbasis objek
Merupakan himpunan data dan relasi yang
menjelaskan hubungan logik berdasarkan objek antar
data dalam suatu basis data

a. Entity Relationship model (ERD)


Merupakan model untuk menjelaskan hubungan antar
data dalam basis data berdasarkan persepsi bahwa
real world terdiri dari objek-objek dasar yang
mempunyai hubungan / relasi antara objek tersebut
Model Data

Contoh Entity Relationship model (ERD)


Model Data
b. Semantic model
Merupakan model dimana relasi antar objek
dinyatakan dengan kata-kata (semantic)
Model Data
2. Model data berbasis record
Model ini mendasarkan pada record untuk
menjelaskan kepada user tentang hubungan logik antar
data dalam basis data

a. Relational Model
Menjelaskan tentang hubungan logik antar data
dalam basis data dengan memvisualisasikan ke dalam
bentuk tabel-tabel yang terdiri dari sejumlah baris dan
kolom yang menunjukkan atribut tertentu.
Model Data

Contoh Relational Model


Model Data
b. Hierarchical model
 Menjelaskan tentang hubungan logik antar data
dalam basis data dalam bentuk hubungan
bertingkat (hirarki)
 Elemen penyusunnya disebut node, yang berupa
rinci data, agregat data, atau record
Model Data

Contoh Hierarchical Model


Model Data
c. Network Model
 Hampir sama dengan model hirarki, dan digambarkan
sedemikian rupa sehingga child pasti berada pada
level yang lebih rendah daripada parent.
 Sebuah child dapat memiliki lebih dari satu parent.
Model Basis Data

 Model basis data  Suatu mekanisme yang


digunakan untuk mengorganisasi data secara fisik
dalam disk dan berdampak pula pada
bagaimana mengelompokkan dan membentuk
keseluruhan data terkait sistem yang sedang
ditinjau.
 Beberapa model basis data antara lain: Model
basis data Relasional, Hirarki, dan Jaringan.
 Model basis data yang sering/ paling banyak
diterapkan adalah Model Basis Data Relasional.
Basis Data Relasional

 Basis Data relasional menggunakan tabel dua


dimensi yang terdiri atas baris dan kolom untuk
memberi gambaran sebuah berkas data.

 Baris dan kolom dalam Model Data Relasional


menunjukkan elemen dari tabel.

 DBMS yang menggunakan konsep relasional


disebut sebagai RDMBS  Relational database
management system.
Istilah dalam Basis Data Relasional

Nim Nama Alamat


1543001 Andi Medan
1543002 Budi Jakarta
1543003 Cristine Kalimantan
1543004 Doni Aceh
1543005 Effendi Sulawesi
Istilah dalam Basis Data Relasional

 Record : sebuah baris dalam suatu relasi. Disebut


juga tuple.
 Cardinality : banyaknya record dalam sebuah
relasi
 Atribut : suatu kolom dalam sebuah relasi

 Derajat / degree : banyaknya kolom dalam relasi


 Domain : batasan nilai dalam atribut dan tipe
datanya
Istilah dalam Basis Data Relasional
 Candidate Key : atribut atau sekumpulan atribut yang
unik yang dapat digunakan untuk membedakan suatu
record
 Primary Key : salah satu dari CK yang dipilih dan
dipakai untuk membedakan suatu record
 Alternate key : CK yang tidak dipilih menjadi PK
 Unary relation : suatu relasi yang hanya mempunyai
satu kolom
 Binary relation : suatu relasi yang hanya mempunyai
dua kolom
 Ternary relation : suatu relasi yang mempunyai tiga
kolom
Karakteristik Basis Data Relasional

Relasi dalam model basis data relasional memiliki


karakteristik:
 Semua entry / elemen data pada suatu baris dan
kolom tertentu harus mempunyai nilai tunggal (single
value), atau suatu nilai yang tidak dapat dibagi lagi
(atomic value), bukan suatu kelompok pengulangan
 Semua entry / elemen data pada suatu kolom tertentu
dalam relasi yang sama harus mempunyai jenis yang
sama
 Masing-masing kolom dalam sutu relasi mempunyai
nama yang unik
 Pada suatu relasi / tabel yang sama tidak ada dua
baris yang identik
Komponen Relasi BDR

Tabel relasional mempunyai 2 komponen :


a. Intention
b. Extention
Komponen Relasi BDR

a. Intention
Adalah bagian yang permanen dari suatu tabel/relasi.
Intention bersifat independen terhadap waktu.

 Terdiri dari dua bagian yaitu struktur penamaan (naming


structure) dan batasan integritas (integrity constraint)
 Struktur penamaan menunjukkan nama tabel dan nama atribut
yang ada lengkap dengan dengan batasan nilai dan tipe
datanya
 Batasan integritas dipengaruhi oleh integritas referential yang
meliputi key constraint dan referensial constraint.
 Key constraint tidak mengijinkan adanya nilai null pada atribut
yang digunakan sebagai PK
 Referentil constraint memberikan aturan bahwa nilai-nilai dalam
atribut kunci yang digunakan untuk menghubungkan ke basis
data lain tidak diijinkan memiliki nilai null
Komponen Relasi BDR

Intention

struktur penamaan batasan integritas


 nama tabel  key constraint
 nama atribut  referensial constraint
 batasan nilai
 tipe datanya
Komponen Relasi BDR

 Referential constraint memberikan aturan bahwa nilai-nilai


dalam atribut kunci yang digunakan untuk menghubungkan ke
basis data lain tidak diijinkan memiliki nilai null
Komponen Relasi BDR

a. Intention
Contoh:
Struktur suatu tabel :

Employee(EmpNo int(4),
EmpName varchar(40),
Age int(2),
Dept char(2)
)
Komponen Relasi BDR

b. Extention
Adalah sekelompok tuples (record/baris) yang muncul pada
suatu tabel/relasi.

 Menunjukkan bagian dari tabel-tabel pada suatu waktu,


cenderung berubah sewaktu-waktu .
 Isinya berubah-ubah sesuai dengan proses yang terjadi,
misalkan pembuatan (create), penghapusan atau
pengubahan data.
Komponen Relasi BDR

b. Extention
Contoh:
Sebelum ditambahkan beberapa baris

Setelah ditambahkan beberapa baris


Ilustrasi Basis Data Relasional

 Untuk mengilustrasikan Model Data Relasional


secara lebih nyata, berikut diambil contoh
sederhana yang berkaitan dengan pendidikan
perguruan tinggi.
 Basis data ini terdiri atas 3 buah tabel yaitu
Mahasiswa, Dosen dan Matakuliah
 Sebelum penerapan basis data dapat dilakukan
(dengan menggunakan salah satu perangkat
keras DBMS), maka terlebih dahulu harus diketahui
contoh data yang akan digunakan. Contoh data
ini digunakan untuk mengetahui karakteristik
masing-masing tabel data.
Ilustrasi Basis Data Relasional
Berikut contoh data yang akan digunakan
a. Data Mahasiswa dengan isi sebagai berikut

NIM Nama Mahasiswa Alamat Mahasiswa Tgl Lahir

980001 Ali Akbar Jl. Merdeka No. 10 Jakarta 40121 2 Jun 1979

980002 Budi Haryanto Jl. Gajah Mada No. 2 Jakarta 45123 6 Okt 1978

980003 Iman Faisal Komp Griya Asri Asri D2 Depok 40151 13 Mei 1978

980004 Indah Susanti Jl. Adil No. 123 Bogor 43212 21 Jan 1979

Dari data diatas dapat diketahui hal-hal (karakteristik) sebagai berikut:


 Data Mahasiswa tersebut memiliki 4 (empat) buah kolom data.
 Kolom pertama berisi data angka tetapi tidak menunjukkan suatu jumlah
(alfa numerik) dengan lebar (banyaknya karakter) tetap, yaitu 6 karakter/dijit.
 Kolom kedua berisi data karakter/string dengan lebar maksimum 30 karakter.
 Kolom ketiga berisi data karakter/string dengan lebar maksimum 60 karakter.
 Kolom keempat berisi data penanggalan.
Ilustrasi Basis Data Relasional
b. Data Dosen dengan isi sebagai berikut

Nama Dosen Alamat Dosen


Ir. Taufik Ismail Perum Dosen Griya Indah C-5 Bogor 43111
Dewi Sundari, MA Jl. Selamat No. 14 Jakarta 40121
Dr. Umar Hakim Jl. Garuda No. 2 Depok 43212

Dari data diatas dapat diketahui hal-hal (karakteristik) sebagai


berikut:
 Data Dosen diatas memiliki 2 (dua) buah kolom data.
 Kolom pertama berisi data karakter/string dengan maksimum 35
karakter.
 Kolom kedua berisi data karakter/string dengan lebar maksimum
60 karakter.
Ilustrasi Basis Data Relasional
c. Data Matakuliah dengan isi sebagai berikut

Kode Matakuliah SKS Semester


IF-110 Struktur Data 3 1
IF-310 Basis Data 4 3
KU-234 Bahasa Indonesia 2 2
MA-115 Matematika 1 3 1

Dari data diatas dapat diketahui hal-hal (karakteristik) sebagai berikut:


Data Matakuliah diatas memiliki 4 (dua) buah kolom data.
Kolom pertama berisi data karakter/string dengan maksimum 6
karakter.
Kolom kedua berisi data karakter/string dengan lebar maksimum 60
karakter.
Kolom ketiga berisi data integer dengan lebar maksimum 1.
Kolom keempat berisi data intereger juga dengan lebar max. 1.
Ilustrasi Basis Data Relasional
Berangkat dari karakteristik masing-masing kelompok data tadi,
maka kita dapat menetapkan struktur masing-masing tabel.
Secara minimal yang harus ditentukan dalam struktur tabel
adalah:
1. Nama Kolom (field)
2. Tipe data
3. Lebar (banyaknya karakter/dijit maksimum yang dapat
ditampung)

Untuk nama kolom (field) biasanya disesuaikan dengan nama


kolom dari contoh data, tetapi penamaan kolom harus diubah
karena panjang nama kolom dalam DBMS biasanya dibatasi
(pembatasan ini berbeda antar masing-masing DBMS).
Ilustrasi Basis Data Relasional
struktur dari ketiga Tabel dalam basis data dapat ditentukan sebagai
berikut:
a. Tabel Mahasiswa, dengan struktur:
Nama Kolom Tipe Lebar Deskripsi

nim character 6 nomor induk mahasiswa

nama_mhs character 30 nama setiap mahasiswa

alamat_mhs character 60 alamat setiap mahasiswa

tgl_lahir date 8 Tanggal lahir setiap mahasiswa

b. Tabel Dosen, dengan struktur:


Nama Kolom Tipe Lebar Deskripsi

nama_dos character 35 nama setiap dosen

alamat_dos character 60 alamat setiap dosen


Ilustrasi Basis Data Relasional
c. Tabel Matakuliah, dengan struktur:

Nama Kolom Tipe Lebar Deskripsi

Kd_kul character 6 kode kuliah

nama_kul character 30 nama matakuliah

sks integer 1 jumlah bobot satuan kredit semester

semester integer 1 semester diselenggarakan perkuliahan

Relasi??
 Data dosen, mahasiswa dan kuliah memang terasa berhubungan
 Tetapi dari struktur dan data yang terdapat pada ketiga tabel yang telah
digambarkan Keterhubungan (relasi) tersebut tidak terlihat secara
fisik/nyata
 Karena itu, representasi stuktur dan data dari ketiga tabel tersebut
belumlah mencukupi untuk dinyatakan sebagai sebuah basis data.
Ilustrasi Basis Data Relasional
Matakuliah NIM Nama Mahasiswa Indeks Nilai
Struktur Data 980001 Ali Akbar A
Struktur Data 980004 Indah Susanti B
Basis Data 980001 Ali Akbar
Basis Data 980002 Budi Haryanto
Basis Data 980004 Indah Susanti
Bahasa Indonesia 980001 Ali Akbar B
Matematika I 980002 Budi Haryanto C
Data Nilai merepresentasikan adanya relasi antara data Mahasiswa dengan data Kuliah untuk
menunjukkan mata kuliah yang diambil/diikuti mahasiswa dan indeks nilai yang diperoleh
mahasiswa untuk matakuliah yang diikutinya,
Seorang mahasiswa dapat mengambil/mengikuti beberapa matakuliah atau tidak mengikuti
kuliah apapun (misal: mahasiswa bernama ‘Ali Akbar’ mengambil 3 matakuliah dan
mahasiswa bernama ‘Iman Faisal’ yang tidak terlihat menunjukkan ia tidak mengikuti kuliah
apapun).
Satu matakuliah dapat diikuti oleh beberapa mahasiswa (misal: matakuliah ‘Struktur Data’
diikuti 2 mahasiswa, ‘Basis Data’ diikuti 3 mahasiswa dst..)
3 matakuliah sudah memiliki data indeks nilai dan ada 1 mata kuliah (‘Basis Data’) belum
memiliki data indeks nilai (datanya masih kosong).
Ilustrasi Basis Data Relasional
Tabel Nilai, dengan struktur:

Nama Kolom Tipe Lebar Deskripsi

nama_kul character 30 nama setiap matakuliah

nim character 6 nomor induk mahasiswa

nama_mhs character 30 nama setiap mahasiswa

indeks_nilai character 1 Indeks matakuliah yang diambil mahasiswa

 Dengan adanya tabel tambahan yang menunjukkan relasi antar


tabel sebelumnya, maka syarat minimal sebuah basis data telah
terpenuhi.
 Tetapi perlu diperhatikan, persoalan utama dalam penerapan basis
data bukanlah agar data yang dimiliki dapat segera disimpan.
 Yang paling penting yang perlu dipikirkan justru bagaimana agar
operasi-operasi selanjutnya (pencarian data, pengubahan data
hingga penghapusan data) dapat dilakukan dengan mudah
Basis Data yang Baik
Keempat buah tabel telah membentuk sebuah basis data, perlu dianalisis
lebih jauh dari berbagai aspek efisiensi tempat penyimpanan data, integritas
data, kemudahan operasi data dll. Jika aspek-aspek tersebut telah
dipertimbangkan dengan baik, maka akan melahirkan sebuah basis data
yang baik.
Berikut adalah sejumlah uraian yang menunjukkan inefisiensi basis data
perkuliahan yang berisi keempat tabel tersebut:
 Bisa saja terjadi ada lebih dari 1 dosen dengan nama (termasuk gelarnya)
yang sama.
 Pada tabel Mahasiswa dapat mengetahui nama mahasiswa melalui data
NIM-nya. Karena itu, penyertaan data nama mahasiswa pada tabel Nilai
menjadi tidak praktis/efisien, data nama mahasiswa tidak disertakan akan
tetap masih dapat mengetahui nama mahasiswa yang mengambil
matakuliah tertentu dengan mengacu ke tabel Mahasiswa.
 Jika melakukan pengubahan terhadap nama matakuliah (baik karena
kesalahan maupun perbaikan data), maka perubahan ini harus diikuti juga
dengan perubahan di tabel lain.
Basis Data yang Baik
Pembentukkan basis data yang baik (efisien) sebagai sebuah
hasil perancangan yang matang akan memberi sejumlah
karakteristik dan keuntungan seperti:

 Struktur basis data (tabel-tabel dan relasi antar tabel) yang


lebih kompak
 Struktur masing-masing tabel yang lebih efisien dan
sistematis
 Kebutuhan ruang penyimpanan data (memori sekunder) yang
lebih efisien
 Semakin kecil ukuran tabel, maka akan semakin cepat
operasi basis data yang dilakukan
 Efisiensi tersebut ditandai dengan redundansi data yang
optimal.
 Tidak ada ambiguitas data di semua tabel dalam basis data
 dll
Terima
Kasih

You might also like