03 pengenalan basis data
Transcript of 03 pengenalan basis data
1
3Pengenalan
Basis Data
Terminologi Dasar
• Entity (Entitas)
Merupakan segala sesuatu yang bisa kita simpan sebagai
informasi, menggambarkan obyek yg ada dan bisa
dibedakan dari obyek yg lain.
Kumpulan entitas disebut entity set
Dalam sistem basis data, entitas digambarkan sebagai
record
Sebutan lain : Segment, Tuple, Baris
• Attribute (Atribut)
Entitas memiliki beberapa sifat (properties) yang dinyatakan sebagai atribut.
Dalam sistem basis data, atribut digambarkan sebagai field.
Sebutan lain : Data item, Data Element, Elementary Item
Terminologi Dasar (cont)
• File (Berkas) Table in modern Database
File [basis data] merupakan kumpulan dari [logical]
record bertipe sama, yang memiliki nama.
• Database (Basis Data)
Merupakan kumpulan dari berbagai tipe record, yang
memiliki relasi antar record atau antar field.
• Database System (Sistem Basis Data)
Merupakan kumpulan dari basis data yang saling
terpisah, tapi dikelola secara bersama.
• Database Management System (Sistem Pengelln Basis Data)
Kumpulan aplikasi dan tools yang digunakan untuk
pengelolaan sistem basis data
Terminologi Dasar (cont)
• Database User (Pengguna Basis Data)
End User / Terminal User
User yang menggunakan data secara langsung di depan
terminal menggunakan bahasa khusus (bahasa query)
Application Programmers (Pemrogram Aplikasi)
Seseorang yang merancang program aplikasi dengan
menggunakan data yang tersimpan dalam basis data, dengan
menggunakan sebuah bahasa pemrograman (konvensional /
khusus)
Database Administrator
Merupakan user yang bertanggung jawab dalam merancang
dan merawat struktur basis data, untuk memenuhi kebutuhan
pengguna yang lain.
Terminologi Dasar (cont)
• Data Independence
Merupakan ketidak-tergantungan antara logical (user)
view dan physical view
Memerlukan interface untuk mapping / konversi
antar level
• DBMS / System programmer / designer
Seseorang yang merancang dan mengembangkan DBMS / utilitas sistem, berhadapan langsung dengan cara penyimpanan data secara “fisik” guna memperoleh performansi maksimum.
Terminologi Dasar (cont)
• Logical view
Merupakan istilah yang digunakan untuk menerangkan
berbagai aspek data, dengan mengacu kepada pandangan
USER
NIP Nama Dosen Mata Kuliah
131471489 Hidayat MIK100
131471489 Hidayat MIK107
131471498 Marsono MIK105
131471498 Marsono MIK110
131471498 Marsono MIK117
Terminologi Dasar (cont)
• Physical view
Merupakan istilah yang digunakan untuk menggambarkan cara
sesungguhnya data disimpan dalam media simpan
Logical record layout
Record A
Record H
Record Q
Record Z
Record D
Record R
A
H
Q
Z
D
R
Physical record layout
USER (Aplikasi / Tool)
View-1 View-2
BaseTable-4
BaseTable-3
BaseTable-2
BaseTable-1
File1
File3
File2
Virtual View
Real View
Stored Data
Le
ve
l F
isik
Le
ve
l L
og
ik
Arsitektur Basis Data
External Level . . . . . . .
Conceptual Level
Internal
Independence . . . . . . . . . . . . . . . . . . . . C / I mapping
External
Independence . . . . . . . . . . . . . . . . . . . E / C mapping
. . . . . . .Internal Level
Beberapa Istilah untuk Data View
Referensi External Level Conceptual Level Internal Level
CODASYL Sub schema Schema Physical Data
ANSI X3 SPARC
External SchemaConceptual
SchemaInternal Schema
IBM DL/1Program
Specification Block (PSB)
Logical Data Base Description (DBD)
Physical DBD
Lainnya
Submodel,
Local View, Programmer
View
Model,
Conceptual Model,
Entity Set,
Overall/Global Logical View,
Entity Record,
Physical View
Dialog Komputer – Terminal User
Konversi Program aplikasi
untuk DIALOG
Data View
OrganisasiLogic
Pemrogram
OrganisasiLogicGlobal
StrukturData
Terminal
OrganisasiSimpanan
Fisik
Sub schema / External view
Schema / Conceptual view
Physical layout / Internal view
Konversi oleh DBMS
Konversi oleh DBMS
Pandangan userDi terminal
Pandangan Pemrogram
Aplikasi
Pandangan Data Base
Administrator
Pandangan DBMS
Designer
External View / Sub-schema
• Pemrogram aplikasi tak membutuhkan seluruh tatanan basis
data
• Pemrogram aplikasi hanya membutuhkan kumpulan record
dengan elemen2 data yang berhubungan dengan kebutuhannya
Pemrogram A :
PEGAWAI
NO_PEG GAJI
Pemrogram B :
PEGAWAI
NO_PEG KODE_DEPT
• Setiap pemrogram bisa menggunakan bahasa yang berbeda
• Diperlukan Data Sublanguage (DSL)
DDL (Data Definition Language)
DML (Data manipulation Language)
Conceptual View / Schema
• Merupakan pandangan Data Base Administrator sebagai
penyimpulan dari seluruh kebutuhan para pemrogram
aplikasi
Data Base Administrator :
PEGAWAI
NO_PEG KODE_DEPT GAJI
• Memerlukan Data Description (schema) Language
Internal View / Physical Layout
• Menunjukkan cara sesungguhnya bagaimana data
disimpan dalam media, dengan spesifikasi tentang :
buffering, paging, pengendalian overflow, addressing,
indexing, chaining, dll.
• Physical data description language berperan
melakukan mapping dari global / conceptual data
description ke dalam penyimpanan fisik.
Subschema A
Shema
PhysicalData Base
Description
Pemetaan Subschema
A ke Schema
Subschema B
Aplikasi1
Aplikasi2
Aplikasi3
Aplikasi4
Aplikasi5
Pemetaan Subschema
B ke Schema
Pemetaan ke
penyimpanan fisikDilakukan oleh DBMS
MODEL STRUKTUR BASIS DATA
• Setiap sistem basis data memiliki cara
pengorganisasian data (secara logic) yang berkaitan
dengan beberapa model, yang disebut Struktur Data
• Struktur data menunjukkan tentang bagaimana
elemen data dalam basis data dihubungkan secara
logic satu terhadap yang lain
• Tiga struktur data yang biasa digunakan oleh paket
DBMS adalah : Hierarki (inverted tree), Jaringan
(Network), dan Relational
Struktur Data Hierarki
Data diorganisir dalam bentuk pohon
terbalik, dimana relasi antara elemen data selalu
berbentuk One-To-Many.
Jurusan A
Dosen 1 Dosen 2
MK 1 MK 2 MK 3 MK 4
Jurusan B
Dosen 3 Dosen 4
MK 5 MK 6 MK 7 MK 8
Struktur Data Hierarki (cont)
• Dalam struktur hierarki, setiap elemen
(node/simpul) dihubungkan dengan elemen pada
level yang lebih tinggi, disebut induk (parent).
• Elemen tertinggi: ROOT, tidak memiliki PARENT
• Setiap elemen tengah disebut CHILD, bisa memiliki
beberapa CHILD, namun hanya memiliki satu
PARENT
• Elemen tanpa CHILD disebut LEAVES
Struktur Data Hierarki (cont)
1
2
6
53 4
7 8 9 10 11 12 13 14
15 16 1817 19
Struktur Data Hierarki (cont)
JURUSAN
DOSEN
M K
Skema Relasi
antar Record dalam
Struktur Hierarki
Tersusun atas
Record dan Link
Struktur Data Hierarki (cont)
Jurusan PTR
A
B
Jurusan PTR
A D1 D2
B D3 D4
Dosen PTR
D1
D2
D3
D4
Dosen PTR
D1 MK1 MK2
D2 MK3 MK4
D3 MK5 MK6
D4 MK7 MK8
MATA KULIAH
MK1
MK2
MK3
MK4
MK5
MK6
MK7
MK8
MATA KULIAH
MK1
MK2
MK3
MK4
MK5
MK6
MK7
MK8
Struktur Data Network
Seperti Hierarki, tetapi hubungan antara elemen data
bisa berbentuk kombinasi relasi Many-To-One dan
relasi Many-To-Many. Setiap elemen bisa memiliki
lebih dari satu PARENT
1
2 3
4
1 2
3 4 5
6
10
7
98
11Gambar 1 Gambar 2
Struktur Data Network (cont)
• Struktur Network bisa memiliki skema sederhana
seperti Gambar 1, atau sangat kompleks seperti
Gambar 2.
• Contoh problem :
Dari contoh struktur hierarki, bila mata kuliah yang
sama ternyata diberikan pada kedua jurusan serta
ada mata kuliah yang diampu oleh lebih dari satu
dosen, maka struktur data menjadi berubag bentuk
ke struktur network.
Struktur Data Network (cont)
Jurusan A
Dosen 1 Dosen 2
MK 1 MK 2 MK 3 MK 4
Jurusan B
Dosen 3 Dosen 4
MK 5 MK 6 MK 7 MK 8
Struktur Data Network (cont)
Skema Relasi antar Record dalam Struktur Network
Merupakan file (kumpulan Record) dengan Link
JURUSAN
DOSEN M K
Struktur Data Network (cont)
Jurusan PTR
A D1 D2 MK1 MK2 MK3 MK4 MK5 MK7
B D3 D4 MK3 MK4 MK5 MK6 MK7 MK8
Dosen PTR
D1 MK1 MK2 MK3 A
D2 MK3 MK4 MK5 A
D3 MK5 MK6 B
D4 MK4 MK7 MK8 B
MATA KULIAH PTR
MK1 A D1
MK2 A D1
MK3 A B D1 D2
MK4 A B D2 D4
MK5 A B D2 D3
MK6 B D3
MK7 A B D4
MK8 B D4
STRUKTUR DATA RELASIONAL
• Data digambarkan dalam bentuk tabel 2 dimensi
(file flat – mendatar)
• Secara logic, tabel tsb sama dengan file
• Setiap baris menggambarkan record
• Setiap kolom menggambarkan field
• Pengulangan tak bisa dihindari
(mengorbankan data redundancy principle)
Konversi Struktur Hierarki ke Relasional
Susun Tabel Relasional yang dapat mengakomodir
struktur hierarki berikut:
Jurusan A
Dosen 1 Dosen 2
MK 1 MK 2 MK 3 MK 4
Jurusan B
Dosen 3 Dosen 4
MK 5 MK 6 MK 7 MK 8
STRUKTUR DATA RELASIONAL (cont)
• Struktur data
relasional yang
diturunkan dari
contoh struktur
data hierarki
• Group Jurusan
diulang 4 kali
• Group Dosen
diulang 2 kali
Jurusan Dosen Mata Kuliah
A D1 MK1
A D1 MK2
A D2 MK3
A D2 MK4
B D3 MK5
B D3 MK6
B D4 MK7
B D4 MK8
Susun Tabel Relasional dari struktur Network ini
Jurusan A
Dosen 1 Dosen 2
MK 1 MK 2 MK 3 MK 4
Jurusan B
Dosen 3 Dosen 4
MK 5 MK 6 MK 7 MK 8
Database - Advantages & Disadvantages(http://www.cl500.net/pros_cons.html)
Advantages• Reduced data redundancy• Reduced updating errors and increased consistency• Greater data integrity and independence from applications programs• Improved data access to users through use of host and query
languages• Improved data security• Reduced data entry, storage, and retrieval costs• Facilitated development of new applications program
Disadvantages• Database systems are complex, difficult, and time-consuming to design• Substantial hardware and software start-up costs• Damage to database affects virtually all applications programs• Extensive conversion costs in moving form a file-based system to a
database system• Initial training required for all programmers and users
LATIHAN
• Identifikasi entitas yang perlu disimpan dalam
basis data perpustakaan
• Susun model struktur basis data yang
sesungguhnya
• Ubah model struktur basis data tsb ke model
struktur relasional
• TEMUKAN dan SUSUN CONTOH yang LAIN