Anda di halaman 1dari 31

Sistem Basis Data

Andri Suprayogi-2013
 Sebelum suatu basis data dapat digunakan,
strukturnya perlu dirancang terlebih dahulu
 Pekerjaan perancangan basis data bersifat
konseptual dengan pendekatan “paper and
pencil”
 Menggunakan tabel yang telah ada, atau
kumpulan entitas yang akan dibuatkan basis
datanya

2
 Istilah dalam basis data
 Tahapan Perancangan basis data
 Model Rancangan Basis Data
- Model Relasional
- Model Entity Relationship

3
 Entitas, merupakan data dari segala sesuatu yang dapat
didefinisikan secara independen, misalkan mahasiswa, dosen,
ruangan, mata kuliah, dst
 Atribut, merupakan komponen dari atau penyusun suatu entitas
misalnya Mahasiswa = > nama, nim, alamat, prodi dst
 Hubungan konseptual antar entitas atau relasi, yang merupakan
keterkaitan antara suatu entitas dengan entitas lain yang
dideklarasikan secara deskriptif:
Setiap mahasiswa mengambil banyak mata kuliah
Setiap mata kuliah diambil oleh banyak mahasiswa
Setiap dosen mengampu beberapa mata kuliah
Setiap mata kuliah diampu oleh minimal satu dosen
4
Secara umum proses perancangan Basis Data terdiri dari 6 tahapan
yaitu [Ramakhrisnan, Gerkhe, 2000]:
(1)
(1) Analisis
Analisis kebutuhan
kebutuhan

(2)
(2) Desain
Desain konseptual
konseptual

(3)
(3) Desain
Desain logis
logis

(4)
(4) Perbaikan
Perbaikan skema
skema

(6)
(6) Desain
Desain keamanan
keamanan (5)
(5) Desain
Desain fisik
fisik

5
Secara umum proses perancangan Basis Data terdiri dari 6 tahapan yaitu
[Ramakhrisnan, Gerkhe, 2000]:
(1)Analisis kebutuhan
Tahapan pertama dalam mendesain basis data adalah mengumpulkan
informasi mengenai data apa saja yang akan disimpan pada basis data,
proses apa saja yang dilakukan pada data , serta siapa saja pengguna yang
membutuhkan data tersebut.

(2)Desain konseptual
Merupakan tahapan pembangunan model terstruktur seperti hubungan
antar entitas berdasarkan informasi yang dikumpulkan pada tahap
pertama, beserta aturan-aturan yang membatasi pemodelan tersebut

6
(3) Desain logis
Merupakan tahap pemilihan model DBMS untuk mengimplementasikan
model konseptual menjadi skema basis data. Terkait dengan SIG
yang lebih banyak menggunakan model relasional, maka pembuatan
desain logis adalah dengan menyusun instruksi berbasis SQL untuk
pembuatan entitas, relasi dan atribut-atributnya dalam representasi
berbentuk tabel.

(4) Perbaikan skema


Merupakan tahap analisis dari relasi untuk mengidentifikasi potensi
permasalahan dan memperbaikinya. Teori normalisasi relasi atau
restruktur relasi digunakan agar model memenuhi persyaratan-
persyaratan tertentu
7
(5)Desain fisik
Pada tahap ini dipertimbangkan beban kerja yang dapat didukung
oleh basis data dan kemungkinan perbaikan ulang dari desain
agar memenuhi performa yang diinginkan. Pada tahap ini
dilakukan pemberian indeks (indexing) atau mengubah susunan
skema dari tahap sebelumnya .

(6) Desain keamanan


Pada tahap ini, dilakukan identifikasi mengenai bagian dari basis data
yang dapat diakses dan yang tidak boleh diakses. Terkait dengan
pengguna, tahap ini menjamin tiap mengguna hanya dapat
mengakses bagian yang diperlukan saja

8
Model Relasional
Model relasional diterapkan pada suatu struktur data dalam bentuk
tabel yang sudah ada. Berdasarkan objek-objek dan relasi-relasi
yang ada, kemudian tabel direkonstruksi ulang sehingga menjadi
suatu basis data yang konsisten. Proses rekonstruksi ulang ini
disebut sebagai Normalisasi

Perancangan basis data yang dimulai dari model ini (Relasional)


memiliki sifat pendekatan Bottom up dimana data dianalisis dari
elemen-elemen tabel (atribut) sebelum entitasnya ditentukan

Untuk dapat lebih memahami persoalan yang dapat muncul pada suatu
basis data, maka terlebih dahulu diperkenalkan model Model
Relasional 9
Entity-Relationship (ER)
Model data entity-relationship (ER) memungkinkan untuk
mendeskripsikan data yang terkait pada real-world dalam
pengertian entitas-entitas dan hubungan antar entitas. Model ini
banyak digunakan untuk membuat desain awal basis data dan
terkait dengan tahap 1 hingga 3 dari tahapan perancangan basis
data.

Perancangan basis data yang dimulai dari model ini (ER) memiliki
sifat pendekatan Top Down dimana data dianalisis dari entitas
terlebih dahulu sebelum ditentukan atribut-atributnya.

10
PERTANYAAN ?

11
Model Relasional

12
Tabel merupakan unit dasar basis data yang sering digunakan untuk
mendeskripsikan model konseptual dari basis data (entitas dan
atributnya). Secara eksternal suatu tabel dapat disebut sebagai tabel
kemunculan :
STOCK Nama Tabel
Entitas/relasi

Tipe Part# Part -description quantity –in-stock


P2 Nut 5000 Nilai
P1 Bolt 8500
Record
P3 Washer 9750
P4 Nut 2326

Secara Internal sebagai Tipe Tabel :


Stock (part#, part-description, quantity-in-stock)
13
Null Value
 Secara rasional, suatu atribut memiliki nilai null (kosong) jika belum

diketahui atau tidak akan bernilai.


 Sebagai contoh, jumlah telur dari entitas ayam yang akan ditetaskan

memiliki suatu nilai walau dapat saja belum diketahui. Namun Jumlah
telur entitas gajah tentu saja tidak akan memiliki nilai.
 Ditandai dengan nilai tabel yang kosong.

Penomoran
Untuk mempersingkat penamaan, kata No/Number/Nomor selanjutnya
digantikan dengan simbol ‘#’

14
Mekanisme Perancangan Basis Data

Karena Struktur data pada suatu basis data memiliki sifat :


 Entitas dengan atributnya bersifat hirarkhis,

 Hubungan antar Entitas bersifat relasional

 Entitas Dikumpulkan dalam satu integrated data storage

Maka Perancangan Basis Adalah Mengamati Tabel untuk mendapat :


 Entitas dan atributnya (determinan & identifier)

 hubungan antar entitas berdasarkan kesamaan atributnya

15
Aturan dasar kondisi Normal

Terdapat beberapa kondisi normal dari tabel sebagai representasi dasar


dari basis data. Diantaranya:
1. Setiap perpotongan baris/kolom hanya boleh memiliki nilai atribut
tunggal, nilai atribut jamak tidak diperbolehkan
2. Urutan baris dan kolom pada satu record tidak penting, setiap baris
dan kolom dapat dipertukarkan tanpa mengubah informasi
3. Setiap baris pada suatu tabel harus dapat dibedakan, tidak boleh ada
dua baris yang semua atributnya memiliki nilai yang sama.

16
Determinan
Pada suatu tabel (entitas), atribut A merupakan determinan dari atribut
B jika setiap nilai B hanya berelasi dengan nilai A tertentu saja

Identifier
Pada suatu tabel (entitas), satu (atau sekelompok) atribut merupakan

identifier jika setiap nilainya dapat dihubungkan dengan seluruh nilai


dari atribut lain pada suatu record (baris) di tabel tersebut
hanya boleh terdapat satu atribut identifier dalam suatu baris tabel

Sifat determinan dan identifier dilihat dari karakteristik datanya

17
Stock
Part# Part -description quantity –in-stock
P2 Nut 5000
P1 Bolt 8500
P3 Washer 9750
P4 Nut 2326

Determinan : Part# -> part description, Part# -> quantity –in-stock


part description =>quantity-in-stock
Identifier : Part#->Part-description , Part# -> quantity –in-stock

18
A. Repeating Groups : Merupakan kondisi dimana atribut dari suatu
record terdiri dari banyak nilai yang banyak terdapat pada arsip data.
Kondisi ini menyebabkan relasi antar data yang ada tidak dapat dihitung
dengan tepat
Supplier-Part
Supplier# Supplier-name Part#
S5 Wells P1
S2 Heath P1,P4
S7 Barron P6
S9 Edwards P8, P2, P6

19
Untuk mengeliminasi repeating groups beberapa tahapan perlu
dilakukan, diantaranya
(1) Dekomposisi atau menempatkan tiap atribut berulang pada record
yang berbeda
(2) Mengisi null value dengan informasi yang terkait
Supplier-Part Supplier-Part
Supplier# Supplier-name Part# Supplier# Supplier-name Part#
S5 Wells P1 S5 Wells P1
S2 Heath P1 S2 Heath P1
P4 S2 Heath P4
S7 Barron P6 S7 Barron P6
S9 Edwards P8 S9 Edwards P8
P2 S9 Edwards P2
P6 S9 Edwards P6
20
Book
Book# Title author
246 Biology Chan
172 Physics Green, Newton
246 Biology Chan

Order
Order# Part# Quantity-ordered
123 P4 5
P7 12
138 P2 10
P4 20
P8 16

Apa yang salah pada kedua tabel Di atas ? 21


Book
Book# Title author
246 Biology Chan
172 Physics Green
172 Physics Newton

Order
Order# Part# Quantity-ordered
123 P4 5
123 P7 12
138 P2 10
138 P4 20
138 P8 16
22
Redundansi : Merupakan kondisi duplikasi namun secara konseptual,
eliminasi atribut tidak akan menghilangkan informasi
Part Part
Supplier# Part# Part- Supplier# Part# Part-
description description
S2 P1 Bolt S2 P1 Bolt
S7 P6 Bolt S7 P6 Bolt
S2 P4 Nut S2 P4 Nut
S5 P1 bolt S5 P1 -

23
Duplikasi : Merupakan kondisi dimana suatu atribut memiliki dua
(atau lebih) nilai yang identik. Kendati demikian, penghilangan nilai
pada salah satu atribut menyebabkan hilangnya informasi

Part Part
Part# Part- Part# Part-
description description
P2 Nut P2 -
P1 Bolt P1 Bolt
P3 Washer P3 Washer
P4 nut P4 nut

24
B. Eliminasi Redundansi
 Untuk menghilangkan redundansi, maka tabel yang memiliki

informasi redundant dipecah (diantaranya) menjadi dua tabel


 Identifier suatu tabel dapat menjadi target identifier tabel lain

Identifier Determinan

Part Supplier - Part Part – Part-description


Supplier# Part# Part- Supplier# Part# Part# Part-
description S2 P1 description
S2 P1 Bolt S7 P6 P1 Bolt
S7 P6 Bolt S2 P4 P6 Bolt
S2 P4 Nut S5 P1 P4 Nut
S5 P1 bolt Target Identifier
25
Hasil pada hal 20 dari proses repeating groups masih memiliki nilai yang
redundant atau berlebih. Pengosongan nilai suatu atribut tidak
menghilangkan informasi

Supplier-Part Supplier-Part
Supplier# Supplier-name Part# Supplier# Supplier-name Part#
S5 Wells P1 S5 Wells P1
S2 Heath P1 S2 Heath P1
S2 Heath P4 S2 - P4
S7 Barron P6 S7 Barron P6
S9 Edwards P8 S9 Edwards P8
S9 Edwards P2 S9 - P2
S9 Edwards P6 - Edwards P6
26
Karena hasil pada hal 20 memiliki nilai yang redundant, maka perlu
dilakukan proses lanjutan diantaranya , (3) pemecahan tabel supplier-part
menjadi 2 tabel entitas Supplier & relasi Suppl-Part :
Supplier Suppl-Part
Supplier# Supplier-name Part# Supplier# Supplier-name Supplier# Part#
S5 Wells P1 S5 Wells S5 P1
S2 Heath P1 S2 Heath S2 P1
S2 Heath P4 S7 Barron S2 P4
S7 Barron P6 S9 Edwards S7 P6
S9 Edwards P8 S9 P8
S9 Edwards P2 S9 P2
Identifier
S9 Edwards P6 S9 P6

Dari sudut pandang tipe tabel, maka tabel Supplier-Part (Supplier#,


supplier-name, Part#) menjadi tabel Supplier (Supplier#,Supplier-name)
dan tabel Supp-Part(Supplier#,Part#) 27
Terkait dengan model logisnya, terdapat jebakan rasional dari rancangan
tabel dimana suatu tabel yang “nampaknya” tidak redundant dapat
menjadi redundant jika ada penambahan data baru
Part
Part Supplier# Part# Part-
Supplier# Part# Part- description
description S2 P1 Bolt
S2 P1 Bolt S7 P6 Bolt
S7 P6 Bolt S2 P4 Nut
S2 P4 Nut S5 P1 bolt
a. Tabel Non - Redundant
b. Tabel Redundant

28
C. Enterprise Rules : Untuk menghindari jebakan dalam perancangan
tabel, perlu diterapkan aturan-aturan deskriptif pengisian tabel (Enterprise
Rules) sehingga redundansi data dapat dihindari. Aturan tersebut berkaitan
dengan hubungan konseptual antar entitas. Dari contoh sebelumnya :

(1.a) Satu Part# hanya dapat diasosiasikan dengan satu


part-description
(1.b) Satu part-description dapat saja terkait dengan banyak
Part#
(2.a) Suatu Supplier# dapat dikaitkan dengan banyak Part#
(2.b) Suatu Part# dapat dikaitkan dengan banyak Supplier#

29
1. Buatlah basis data ternormalisasi dari tabel di bawah ini
dengan pendekatan model relasional.

2. Per kelompok, Anggota 2-3 orang (Diskusi)


3. Dalam bentuk Laporan

30
Petunjuk :
1. Dekomposisi tabel untuk menghilangkan atribut
yang memuat repeating groups (P.19)
2. Tentukan kumpulan field yang mungkin menjadi
entitas, kemudian pecah ke dalam tabel-tabel
kecil sebagai entitas yang mandiri dan tentukan
Atribut masing-masing tabel yang dapat dijadikan
target Identifier tabel lain P. 25
3. Amati entitas yang dideskripsikan pada tabel yang
telah dipecah lalu buat deskripsi logis (enterprise
rules) dari hubungan antar entitasnyanya P. 29
31

Anda mungkin juga menyukai