03 pengenalan basis data

32
3 Pengenalan Basis Data

Transcript of 03 pengenalan basis data

Page 1: 03 pengenalan basis data

1

3Pengenalan

Basis Data

Page 2: 03 pengenalan 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

Page 3: 03 pengenalan basis data

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

Page 4: 03 pengenalan 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.

Page 5: 03 pengenalan basis data

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.

Page 6: 03 pengenalan basis data

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

Page 7: 03 pengenalan basis data

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

Page 8: 03 pengenalan basis data

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

Page 9: 03 pengenalan basis data

Arsitektur Basis Data

External Level . . . . . . .

Conceptual Level

Internal

Independence . . . . . . . . . . . . . . . . . . . . C / I mapping

External

Independence . . . . . . . . . . . . . . . . . . . E / C mapping

. . . . . . .Internal Level

Page 10: 03 pengenalan basis data

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

Page 11: 03 pengenalan basis data

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

Page 12: 03 pengenalan basis data

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)

Page 13: 03 pengenalan basis data

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

Page 14: 03 pengenalan basis data

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.

Page 15: 03 pengenalan basis data

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

Page 16: 03 pengenalan basis data

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

Page 17: 03 pengenalan basis data

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

Page 18: 03 pengenalan basis data

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

Page 19: 03 pengenalan basis data

Struktur Data Hierarki (cont)

1

2

6

53 4

7 8 9 10 11 12 13 14

15 16 1817 19

Page 20: 03 pengenalan basis data

Struktur Data Hierarki (cont)

JURUSAN

DOSEN

M K

Skema Relasi

antar Record dalam

Struktur Hierarki

Tersusun atas

Record dan Link

Page 21: 03 pengenalan basis data

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

Page 22: 03 pengenalan basis data

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

Page 23: 03 pengenalan basis data

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.

Page 24: 03 pengenalan basis data

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

Page 25: 03 pengenalan basis data

Struktur Data Network (cont)

Skema Relasi antar Record dalam Struktur Network

Merupakan file (kumpulan Record) dengan Link

JURUSAN

DOSEN M K

Page 26: 03 pengenalan basis data

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

Page 27: 03 pengenalan basis data

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)

Page 28: 03 pengenalan basis data

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

Page 29: 03 pengenalan basis data

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

Page 30: 03 pengenalan basis data

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

Page 31: 03 pengenalan basis data

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

Page 32: 03 pengenalan basis data

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