Basis Data Pertemuan 3

advertisement
Basis Data
Pertemuan 3
Weny Mistarika R.
Acara perkuliahan hari ini


Review materi dan tugas minggu lalu
Langkah-langkah pembuatan basis data
(bagian 1)
Arsitektur basis data

Basis data terdiri dari 3 level abstraksi

Views (External schemas) menjelaskan
bagaimana pengguna melihat data
contoh :


Course_info(cid: string, enrollment: integer)
Conceptual schema mendefinisikan data yang
disimpan dalam database berupa entitas beserta
relasi-relasinya.
contoh:
 Students(sid: string, name: string, login: string,
age: integer, gpa: real)
Faculty(fid: sttring, fname: string, sal: real)
 Courses(cid: string, cname: string, credits:
integer)
 Enrolled(sid: string, cid: string, grade: string)
Physical schema menjelaskan detil
penyimpanan data (bagaimana skema
konseptual disimpan dalam disk dan tape)
contoh:




Relations disimpan dalam bentuk “unordered files”.
Buat index pada kolom pertama dari tabel Students.

View View View
1
2
3
 Conceptual
Schema
 Physical
Schema
Bahasa dalam DBMS
Komponen dalam bahasa basis data


Data Definition Language (DDL)
Data Manipulation Language (DML)
Contoh dari DDL dan DML ????
Model data

Evaluasi tugas !!!
Model data



Merupakan konsep model data untuk
menjelaskan struktur basis data.
Ada beberapa macam model data yang
digunakan dalam basis data.
Contoh beberapa model data:



Hierarchy data model
Network data model
Relational data model
Hierarchy data model
Disebut juga model pohon, karena serupa
pohon terbalik.
 Menggunakan pola hubungan orangtua
(parent) dan anak (child).
 Setiap orang tua dapat memiliki satu atau
lebih anak.
 Setiap anak hanya memiliki tepat satu
parent.

Hierarchy data model
dept
Memungkinkan banyak
terjadi pengulangan data
karena setiap simpul hanya
dapat memiliki satu parent.
employee
child
office
Network data model




Pada network model data, terdapat sekumpulan
pemilik dan anggota.
Orang tua pada hierarchy model, berperan
sebagai pemilik pada network model. Sedangkan
anak pada hierarchy model berperan sebagai
anggota pada network model.
Setiap pemilik dapat memiliki satu atau lebih
anggota.
Setiap anggota memungkinkan memiliki banyak
pemilik.
Network data model
Jurusan TI
MK Basis Data
Alice
Bob
MK B.Inggris
Charlie
MK Kalkulus
Dart
Komplex dalam proses queri maupun
manipulasi data
Evin
Relation data model





Relational data model berbentuk kumpulan
tabel 2 dimensi, dengan kolom merupakan
field, dan baris merupakan record.
Pertemuan antara baris dan kolom disebut
item atau value.
Tabel-tabel yang terbentuk saling
berhubungan.
Hubungan antar tabel : satu ke satu ( one to
one), satu ke banyak (one to many),banyak ke
satu ( many to one), banyak ke banyak ( many
to many).
Data model ini paling banyak digunakan.
Langkah pembuatan basis data
1.
2.
3.
4.
5.
6.
Analisis kebutuhan (Requirements Analysis)
Desain basis data konseptual (Conceptual Database
Design)
Desain basis data logikal (Logical Database Design)
Penghalusan skema (Schema Refinement)
Desain basis data fisik (Physical Database Design)
Desain aplikasi & sekuritas (Application and Security
Design)
1. Analisis kebutuhan


Merupakan langkah awal untuk mendesain
database.
Pada tahap ini, semua kebutuhan user
terhadap database harus didapatkan secara
detail seperti :







Laporan atau informasi apa yang diinginkan
Data apa yang akan disimpan dalam database
Aplikasi apa yang dibangun
Operasi apa saja yang akan sering dilakukan
Batasan-batasan apa yang diperlukan
dll
Analisa kebutuhan dapat dilakukan dengan
diskusi atau wawancara kepada pengguna.
2. Desain basis data konseptual



Membuat ER model berdasarkan hasil analisis
kebutuhan.
ER model merupakan salah satu contoh
desain model data.
Tujuannya untuk membuat deskripsi yang
lebih simple terhadap data sesuai dengan
pemahaman user dan developer.
3. Desain basis data logikal


Mengonversi hasil desain basis data
konseptual ke dalam skema basis data pada
DBMS.
Atau mengubah skema ER kedalam skema
database relasional.
4. Penghalusan skema


Bertujuan untuk menganalisis skema basis
data relasional dan mengidentifikasi masalahmasalah yang mungkin muncul serta
memperbaikinya.
Penghalusan skema dilakukan dengan cara
normalisasi.
5. Desain basis data fisik

Meliputi pembuatan index dan tuning basis
data yang bertujuan memercepat performansi
basis data.
6. Desain sekuritas dan aplikasi


Pada tahap ini mendeskripsikan role masingmaing pengguna.
Apa saja yang dapat dilakukan oleh masingmasing role, dan apa saja yang tidak dapat
dilakukan.
Look closer…
1. Analisis kebutuhan
Contoh dari hasil analisis kebutuhan:
 Berdasarkan hasil rapat dengan pemilik sebuah
perusahaan, perusahaan tersebut menginginkan
basis data untuk mencatat pegawai, departemen
dan proyek yang dikerjakan.
 Dari data pegawai, yang dicatat adalah no
pegawai, nama pegawai, dan alamat pegawai.
 Pegawai bekerja pada departemen.
 Departemen memiliki id departemen dan nama
departemen.
 Setiap departemen dapat menjalankan satu atau
lebih project.
2. Desain basis data konseptual

Dari hasil analisis kebutuhan, digambarkan
sebuah model konseptual data dalam bentuk
Entity Relationship Diagram (ERD) atau
Conceptual Data Model (CDM).

ERD atau Conceptual Schema / conceptual data
model (CDM) digenerated menjadi Physical
Schema / Physical Data Model (PDM)
ERD/CDM
PDM
DATABASE
ER DIAGRAM


Teknik pemodelan data yang menggambarkan
entitas dan hubungan antar entitas dalam
sebuah sistem informasi.
ERD memiliki dua komponen utama:


Entity / entitas
Relationship / hubungan
Simbol ER-Diagram
Nama
Simbol
Entitas
Nama
Entitas
Atribut
Nama
Atribut
Primary
Key
Entitas
Lemah
Hubungan /
relationship
s
Atribut
PK
Nama Entitas
Lemah
Nama
hubung
an
Nama
Atribut
Turunan
Atribut
multivalue
Primary Key
Entitas
Lemah
Hubungan
dengan
Entitas
Lemah
Simbol
Nama
Atribut
Nama
Atribut
Atribut
PK
Nama
hubungan
Entitas / entity




Entity merupakan object di dunia nyata yang
dapat dibedakan dari object lain.
Entity memiliki atribut.
Setiap entity memiliki sebuah key.
Entity yang sama (memiliki atribut yang
sama) membentuk sebuah set entity.
Entitas / entity

Contoh : entity pegawai -> memiliki atribut id,
nama, alamat.
ID
Nama
Pegawai
Alamat
Relationship



Merupakan hubungan antar entitas.
Relationship dapat memiliki atribut deskriptif
yang mencatat informasi tentang hubungan.
Contoh : pegawai bernama Beggy bekerja
pada departemen Informasi.
ID
Nama
Pegawai
Alama
t
sejak
Bekerj
a_pad
a
IDD
dnam
e
Departem
en
Key constraint

Seorang pegawai dapat bekerja pada banyak
departemen, dan satu departemen dapat
seja
memiliki
banyak
pegawai.
Nam
Alam
dnam
ID
IDD
a
Pegawai

at
k
Bekerj
a_pad
a
e
Departeme
n
Contoh key constraint apabila seorang pegawai
dapat mengepalai beberapa departemen,
sementaraNam
setiap Alam
departemen
seja hanya dapat dnam
ID
IDD
k
a
at
e
dikepalai oleh satu pegawai
Pegawai
Meng
epalai
Departeme
n
Key constraint

1-to-1

1-to Many

Many-to-1  Many-to-Many
1/1/91
Peg1
Peg2
Peg3
Peg4
2/2/92
3/3/93
4/4/94
51
75
89
5/5/95
pegawai
Bekerja_pada
departemen
Participation constraint


Merupakan bentuk pertisipasi suatu entitas atau
relasi terhadap entitas atau relasi lainnya.
Terdapat 2 jenis partisipasi:



Total participation/ partisipasi total
Partial parciation / partisipasi parsialcontoh
Contoh: pada hubungan mengepalai, setiap
departemen pasti memiliki seorang kepala,
sehingga hubungan antara departemen dan
mengepalai adalah partisipasi total. Sedangkan
tidak semua karyawan mengepalai departemen,
sehingga hubungan antara karyawan dan
mengepalai adalah partisipasi parsial.
Participation constraint
ID
Nam
a
Pegawai
Alam
at
seja
k
IDD
Bekerj
a_pad
a
dnam
e
Departeme
n
Meng
epalai
seja
k
Partisipasi total ditandai dengan garis tebal
untuk menggambarkan hubungan
Selamat Belajar

Download