BASIS DATA - .:elista:.

Download Report

Transcript BASIS DATA - .:elista:.

Basis Data I






Pendahuluan
Pengertian BD & SBD
Tujuan & Keuntungan BD
Kekangan dlm BD
Pandangan thd BD
Model Data
Dpt diakses…








ER_M
Semantic Model
Hierarchycal Model
Network Model
RDBM
elearning.akprind.ac.id
enrolment key: …..
elista.akprind.ac.id
User-paswd: …..
Schema & Subschema
Studi Kasus Perancangan BD
Pengembangan SBD
edhy sutanta-teknik informatika-fti-ista yogyakarta
1
Basis Data II
1.
2.
3.
4.
5.
6.
7.
8.
9.
Pemodelan sistem
Perancangan BD dg teknik ER_M
Perancangan BD dg teknik normalisasi
Integrasi perancangan BD u/ SIM
Optimalisasi rancangan BD
Bugs system
Dpt diakses…
Studi Kasus
Paket-paket DBMS
Proyek Akhir (Presentasi Tugas 04)
edhy sutanta-teknik informatika-fti-ista yogyakarta
elearning.akprind.ac.id
enrolment key: …..
elista.akprind.ac.id
User-paswd: …..
2
BASIS DATA
edhy sutanta-teknik informatika-fti-ista yogyakarta
3

basis data = basis + data
edhy sutanta-teknik informatika-fti-ista yogyakarta
4

Sistem bilangan biner





0
1
10
11
100

basis ????
edhy sutanta-teknik informatika-fti-ista yogyakarta
5

Sistem bilangan oktal











0
1
2
3
4
5
6
7
10
11
12

basis ????
edhy sutanta-teknik informatika-fti-ista yogyakarta
6

Sistem bilangan decimal













0
1
2
3
4
5
6
7
8
9
10
11
12

basis ????
edhy sutanta-teknik informatika-fti-ista yogyakarta
7

Sistem bilangan hexadecimal



















0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
10
11
12

basis ????
edhy sutanta-teknik informatika-fti-ista yogyakarta
8



basis masa PDIP
basis masa PKB
basis tukang ojek

basis ???
edhy sutanta-teknik informatika-fti-ista yogyakarta
9

basis = ..........
edhy sutanta-teknik informatika-fti-ista yogyakarta
10


SPP mahasiswa ISTA akan naik mulai semester ini
SPP per bulan = 20.000.000

Data ???
edhy sutanta-teknik informatika-fti-ista yogyakarta
11





Bambang Tri Hatmojo suami Mayangsari
Mayangsari istri Bambang Tri Hatmojo
Bambang Tri Hatmojo + Mayangsari mpy …. anak
Anaknya bernama …………………
Tadi pagi Bambang Tri Hatmojo menceraikan istrinya

Data ???
edhy sutanta-teknik informatika-fti-ista yogyakarta
12

data = ……….
edhy sutanta-teknik informatika-fti-ista yogyakarta
13

basis data = database
edhy sutanta-teknik informatika-fti-ista yogyakarta
14
Pengertian BD

James Martin (1975)
A database may be defined as a collection of
interrelated data stored together without
harmful or unnecessary redundancy to serve
one or more applications in an optimal
fashion; the data are stored so that they are
independent of programs with use the
data; a common and controlled approach its
used in adding new data and in modifying
and retrieving existing data within the
database
edhy sutanta-teknik informatika-fti-ista yogyakarta
15







sekumpulan interrelated data
disimpan scr bersama2 pd suatu media
tanpa mengatap 1 sm lain a/ tdk perlu kerangkapan
data (controlled redundancy))
disimpan dg cara2 ttt  mudah digunakan a/
ditampilkan
dpt digunakan o/ 1/lbh program aplikasi scr optimal
disimpan tanpa tgt dg program yg menggunakan
disimpan sdmkrp shg pe+, pengambilan & modifikasi dpt
dilakukan dg mudah & terkontrol
edhy sutanta-teknik informatika-fti-ista yogyakarta
16

Database processing






data oriented & bkn program oriented
dpt digunakan o/ pemakai yg berbeda2 a/
bbrp prog aplikasi tanpa mengubah BD
data dlm BD dpt berkembang dg mudah
(volume – struktur)
data yg ada dpt memenuhi kebutuhan
sistem2 baru scr mudah
data dpt digunakan dg cr yg berbeda2
data redundancy minimal
edhy sutanta-teknik informatika-fti-ista yogyakarta
17

File processing





hny dpt digunakan o/ 1 program aplikasi
berhub dgn persoalan ttt u/ sist yg
direncanakan
perkembangan data hny mgkn tjd pd
volume data
hny dpt digunakan dgn 1 cr ttt saja
kerangkapan data
edhy sutanta-teknik informatika-fti-ista yogyakarta
18
Hirarkhi Data
Sistem Basis Data
Basis Data
File
Record
Agregat Data
Data item
Byte
Bit
edhy sutanta-teknik informatika-fti-ista yogyakarta
19
Data Model:


OBDM




RBDM




ERM
Semantic
Binary
Hierarchycal
Network
RBDM
PBDM


UM
FM
edhy sutanta-teknik informatika-fti-ista yogyakarta
20
SISTEM BASIS DATA
edhy sutanta-teknik informatika-fti-ista yogyakarta
21
Pengertian SBD

sekumpulan susbsistem yg tda





BD
para pemakai yg menggunakan BD scr
bersama2
personal2 yg merancang & mengelola BD
teknik2 u/ merancang & mengelola BD
sist komputer
edhy sutanta-teknik informatika-fti-ista yogyakarta
22
Elemen SBD



BD
Software





perancangan
pengelolaan
dBase III++, Foxbase, Foxpro, Visual Dbase, Visual
Foxpro, Delphi, Ms Access, MySQL
Hardware
Brainware


pemakai
spesialis informasi


perancang
pengelola
edhy sutanta-teknik informatika-fti-ista yogyakarta
23
SW


OS




MS DOS, PC DOS, Windows, Unix, Linux
language software
DBMS
application software
edhy sutanta-teknik informatika-fti-ista yogyakarta
24

HW




I
P
O
Memory
edhy sutanta-teknik informatika-fti-ista yogyakarta
25

DBMS adalah SW

U/ pengelolaan basis data



DDL
DML
DCL





Penyimpanan
Pengaturan
Mekanisme pengamanan data
Pemakaian data scr bersama
Pemaksaan akurasi data
edhy sutanta-teknik informatika-fti-ista yogyakarta
26
Hubungan DBMS & Aplikasi BD
End-User
Aplikasi
Basis Data
Naive-User
DBMS
Basis
Data
edhy sutanta-teknik informatika-fti-ista yogyakarta
27
Model hubungan DBMS & Aplikasi BD


DBMS terpisah dg aplikasi
DBMS menyatu dg aplikasi
edhy sutanta-teknik informatika-fti-ista yogyakarta
28

DBMS terpisah dg aplikasi




Aplikasi tidak berinteraksi lgs dg BD, ttp mll DBMS sbg
perantara.
DBMS bisa melakukan aktifitas sendiri yg bisa ditangkap
o/ aplikasi
Contoh DBMS : MS SQL Server, Oracle, CA-OpenIngres,
Sybase, Informix, IBM DB2
Cocok u/ aplikasi single-user / standalone, yg ringan
Aplikasi
DBMS
Aplikasi
Basisdata
edhy sutanta-teknik informatika-fti-ista yogyakarta
29

DBMS menyatu dg aplikasi





Aplikasi BD yg dibuat menyatu dg DBMS pd saat
pemakaiannya
Aplikasi BD berada ‘di bawah’ DBMS (sub-ordinate)
DBMS hrs diaktifkan dulu sgl menjalankan aplikasi
Contoh DBMS : dBase III+, FoxBase, FoxPlus, CAClipper, MS-Access
Cocok untuk aplikasi multi-user, yg berat
DBMS
DBMS
|
|
Aplikasi
Aplikasi
Basis
Data
edhy sutanta-teknik informatika-fti-ista yogyakarta
30
Arsitektur Aplikasi BD
Pertimbangan memilih arsitektur aplikasi BD:




Keunggulan teknologi
Faktor biaya
Sesuai dg kebutuhan pemakai
edhy sutanta-teknik informatika-fti-ista yogyakarta
31
Jenis arsitektur aplikasi BD:




stand alone
centralized
client-server
edhy sutanta-teknik informatika-fti-ista yogyakarta
32
Stand alone:



DBMS+BD+aplikasi ditempatkan pd 1 komp
Hny dp dipakai o/ 1 pemakai pd saat ttt
edhy sutanta-teknik informatika-fti-ista yogyakarta
33
Basis
data
Application
server
Centralized:



Tda:

1 server

se-jml terminal
2 macam:


Thin client
Fat client
Dumb terminal
Dumb terminal
File server
Basis
data
workstations
edhy sutanta-teknik informatika-fti-ista yogyakarta
workstations
34

Client server:


U/ mengatasi kelemahan pd sistem centralized
Tda:



Client
Server
 aplikasi basis data
 DBMS + BD
2 macam :

Arsitektur 2-tier

Arsitektur 3-tier
edhy sutanta-teknik informatika-fti-ista yogyakarta
35
Arsitektur 3-tier:
DBMS server
Basis
data
Client
workstation
workstation
Client
workstation
edhy sutanta-teknik informatika-fti-ista yogyakarta
workstation
36
Pertimbangan memilih SW u/ membangun aplikasi BD:


Kecocokan DBMS & development tools


Sw yg dipilih hrs menjamin tersedianya fasilitas yg dp digunakan u/
berinteraksi dg DBMS scr penuh
Dukungan development tools thd arsitektur aplikasi BD

Tdk semua development tools memberi dukungan yg baik thd arsitektur
client-server

Independensi development tools & DBMS



Idealnya hny ada 1 macam DBMS yg dipilih u/ mengelola BD
Perlu kompromi saat memilih development tools yg cocok u/ semua DBMS
Kemudahan pengembangan & migrasi aplikasi BD


Development tools yg dipilih hrs mendukung pengembangan ke masa
depan, ex: web based
kemudahan migrasi, ex: dari form-base mjd web based
edhy sutanta-teknik informatika-fti-ista yogyakarta
37
Pertimbangan kinerja/kecepatan operasi ke BD
ditentukan o/:







DBMS
Arsitektur HW yg mjd platform
Jml pemakai yg terlibat
Volume data yg diolah
Tingkat kompleksitas operasi BD
Cara penulisan aplikasi BD
edhy sutanta-teknik informatika-fti-ista yogyakarta
38
Pertimbangan dl penulisan aplikasi BD:

1.
2.
3.
4.
5.
6.
Se-dpmgk memanfaatkan indeks primer / sekunder dl stp
proses query ke BD
Menghindari pemakaian fungsi ato perhitungan pd query,
terlebih pd kriteria query
Operasi join pd beberapa tabel dp digunakan u/ efisiensi
perintah & banyaknya data yg hrs ditangani
Pd sistem multi-user dg tk konkurensi tinggi, sesegara mgk
melepaskan penguncian tabel di akhir stp query
Manfaatkan se-bykmgk fungsi yg tlh disediakan DBMS ato
development tools dl operasi BD
Jk ada perintah looping dg penelusuran ke slrh BD pd se-bh
tabel, se-dpmgk menempatkan berbagai perintah yg tdk
relevan di luar perulangan
edhy sutanta-teknik informatika-fti-ista yogyakarta
39
Se-dpmgk memanfaatkan indeks primer / sekunder dl
stp proses query ke BD:


Contoh:

SELECT…. FROM pegawai WHERE idpegawai = vidpegawai

UPDATE pegawai SET …WHERE idpegawai = vidpegawai

DELETE FROM pegawai WHERE idpegawai = vidpegawai
edhy sutanta-teknik informatika-fti-ista yogyakarta
40
Menghindari pemakaian fungsi ato perhitungan pd
query, terlebih pd kriteria query



Contoh:
SELECT ‘01’+LEFT(nomhs,2) AS vthn FROM mahasiswa WHERE …
Diganti menjadi :
SELECT nomhs AS vnim FROM mahasiswa WHERE thn_masuk =
‘01’+left(vnim,2)
Catatan:
Pd arsitektur cilent-server :

Perintah awal: pencarian data & penerapan fungsi dilakukan di server

Perintah baru: dibuat fungsi & perhitungan bukan merup bag
perintah query, server hny melakukan pencarian data, sdg-kan
pengerjaan fungsi dilakukan di client
Contoh:
SELECT … FROM kuliah WHERE LEFT(kdmtk,3)=’TFD’
Diganti menjadi
SELECT … FROM kuliah WHERE kdmtk LIKE ‘TFD%’
Catatan:

Perintah awal: tdk menggunakan kunci primer

Perintah baru: menggunakan indeks kunci primer
edhy sutanta-teknik informatika-fti-ista yogyakarta
41
Operasi join pd beberapa tabel dp digunakan u/
efisiensi perintah & banyaknya data yg hrs ditangani




Contoh:
Ada 2 perintah:

SELECT kdmtk AS vkdmtk, nilai AS vnilai FROM nilai WHERE
nomhs=vnomhs

Select sks AS vsks FROM kuliah WHERE kdmtk=vkdmtk
Dapat digabungkan mjd:

SELECT a.nilai AS vnilai, b.sks AS vsks FROM nilai a, kuliah b
WHERE a.nomhs=vnomhs AND a.kdmtk=b.kdmtk
edhy sutanta-teknik informatika-fti-ista yogyakarta
42

Pd sistem multi-user dg tk konkurensi tinggi, sesegara
mgk melepaskan penguncian tabel di akhir stp query
Proses dilakukan dl 2 tahap

menyimpan sementara di buffer memory

menuliskan ke dl disk

U/ membatalkan proses ada perintah rollback

Contoh:
INSERT INTO nilai (nomhs, kdmtk) VALUES (vnomhs,
vkdmtk) COMMIT
Catatan:
Commit  u/ merekam ke disk

edhy sutanta-teknik informatika-fti-ista yogyakarta
43
Manfaatkan se-bykmgk fungsi yg tlh disediakan DBMS
ato development tools dl operasi BD


Contoh:
SELECT COUNT (*) AS vjumlah FROM mahasiswa WHERE nomhs=vnomhs
IF vjumlah=0 THEN
ECHO “Tidak ketemu..”
ELSE
SELECT nama AS vnama FROM mahasiswa WHERE nomhs=vnomhs
ENDIF
Akan lebih baik, jika diganti mjd:
SELECT nama AS vnama FROM mahasiswa WHERE nomhs=vnomhs
Inquire_sql (jumlah=rowcount)
IF vjumlah=0 THEN
ECHO “Tidak ketemu…”
ELSE
ECHO “Nama : “;&vnama
ENDIF
edhy sutanta-teknik informatika-fti-ista yogyakarta
44

Jk ada perintah looping dg penelusuran ke slrh BD pd
se-bh tabel, se-dpmgk menempatkan berbagai
perintah yg tdk relevan di luar perulangan
I=1
Buka tabel X
While (row belum habis) do
Tampilkan pesan “Sedang diproses…”
Total=total+y
Rata=total/i
I=i+1
Ke row berikutnya
Endwhile
Tampilkan total dan rata
Algoritma di atas dapat
diperbaiki mjd:
I=0
Tampilkan pesan “Sedang diproses…”
Buka tabel X
While (row belum habis) do
Total=total+y
I=i+1
Ke row berikutnya
Endwhile
Rata=total/i
Tampilkan total dan rata
edhy sutanta-teknik informatika-fti-ista yogyakarta
45
Pemeliharaan Integritas BD dl Aplikasi BD



Sbg sarana u/ meyakinkan bhw nilai-2 data dl BD sll benar,
konsisten, sll curent
Dp dilakukan dg cr:

Memastikan bhw nilai-2 data adl benar sjk dimasukkan
pertama kali

Membuat program u/ mengecek keabsahan data pd saat
dimasukkan ke komputer



Penolakan / pembatalan aksi (cancelation)
Pengisian nilai kosong pd field ttt (nullify)
Penjalaran perubahan (cascade)
edhy sutanta-teknik informatika-fti-ista yogyakarta
46
Integritas yg hrs dijaga:





Keunikan data:

Definisi struktur tabel dg membuat indeks primer unik

Pengkodean dl aplikasi BD pd saat pemasukan/penambahan data
 lebih user-friendly

Kedua cara tsb diterapkan bersamaan
Domain data:

Penetapan tipe data pd stp field dl tabel

Pengisian validation rule dari DBMS
Referensial:

Kesalahan referensial dp menimbulkan kesalahan baru

Pengecekan pd INSERT, UPDATE, DELETE
Aturan nyata:

Sangat kasuistis

Tidak berlaku umum

Pada kasus yg berbeda, aturannya akan berbeda pula
Catatan:
Untuk mengakomodasi perbedaan business role , dp dilakukan dg
menyiapkan tabel khusus yg menampung nilai-2 konstanta yg dibutuhkan
aplikasi pd saat dijalankan yg mudah diubah tanpa mengakibatkan
perubahan aplikasi ato struktur BD
edhy sutanta-teknik informatika-fti-ista yogyakarta
47
ADMINISTRASI & MANAJEMEN BD
edhy sutanta-teknik informatika-fti-ista yogyakarta
48
Administrasi


Dokumentasi



Model basis data
Menentukan proses yg diperlukan u/ pembentukan & perawatan
file, & pemanggilan informasi
Dokumen:



Schema
Kerelasian antara relasi dl BD
Definisi variabel yg dipakai
Manajemen




Manajemen aktivitas BD
Manajemen struktur BD
Manajemen DBMS
edhy sutanta-teknik informatika-fti-ista yogyakarta
49



Manajemen aktivitas BD
Apabila slm penerapan ada perubahan BD, mk perubahan & ujicoba
dilakukan pd BD cadangan
Manajemen aktifitas data merupakan tugas DBA
edhy sutanta-teknik informatika-fti-ista yogyakarta
50

Tugas DBA lainnya:


Menentukan standard, panduan, pengawasan prosedur, & membuat dokumentasi u/
memastikan tdk tjd tumpang tindih dl pengaturan data
Mengatur kepemilikan data, hak akses, & hak merubah data – terutama jk bbrp
pemakai mengakses data yg sama
Who can do what to which data




Mengembangkan teknik & prosedur recovery
 akibat machine failure, media failure, communications failure, data user failure
Menyampaikan informasi ttg prosedur operasi & melakukan pelatihan pd user
Menerapkan kebijakan terkait dg aktifitas data, jk ada user yg melanggar, mk DBA
berhak memberi hukuman
Ber-tgjwb u/ menyusun & merawat slrh dokumen sistem:







Contoh Standard yg dimaksud:



Aktifitas data
Database standards
Data ownership
Retrieval & access rights
Recovery procedures
Policy enforcement
Stp field hrs mpy nama & format baku
Stp record hrs mpy standard nama, format, metode akses
Stp file BD hrs mpy standard nama & relasi dg file lain
edhy sutanta-teknik informatika-fti-ista yogyakarta
51
Hal-2 yg perlu dipantau dalam aktivitas BD :

Statistik penggunaan HW




Statistik penggunaan file



Merup rasio penggunaan akses ke file  fetch, get next, update
Dp disimpan dl log file
Statistik penggunaan record



Merup % waktu aktifitas yg diperlukan u/ mengakses prosesor, channel,
controller, disk
Digunakan u/ menentukan tk kesibukan kerja sistem
Biasanya dilakukan o/ OS
Frek pengaksesan record u/ dibaca ato di-update dp menjadi bahan
pertimbangan dl optimalisasi & pembuatan backup BD
Tanggal & waktu akses dapat digunakan u/ menjaga integritas BD
Statistik penggunaan atribut


Frek penggunaan atribut, baik pd proses update, ato sbg kunci pd
pencarian
Dp dilihat dari schema / kerelasian antar tabel
edhy sutanta-teknik informatika-fti-ista yogyakarta
52
Manajemen struktur BD


Tgjwb DBA:

Merancang skema



Mengawasi terjadinya redundancy





Menyusun laporan scr berkala mengenai pemakai yg aktif, file & data yg
dipakai, metode akses yg digunakan
Catatan tjd-nya kesalahan  U/ menentukan apk perlu perubahan struktur BD
u/ pe+ performance
Menjadwalkan & mengadakan pertemuan apabila tjd perubahan struktur
BD
Menerapkan perubahan shema


Redundancy dp tjd pd performance & data integrity
DBA hrs menetapkan prosedur ttt u/ melaks rekonsiliasi data u/ menghindari
redundancy
Melakukan pengawasan konfigurasi permintaan atas perubahan struktur
basisdata


DBA biasanya tdk terlibat dl peranc BD mulai awal
OKI, stp perubahan struktur BD yg berpengaruh pd schema / kerelasian hrs
dicatat
Perubahan hrs dilakukan pd BD ujicoba, agar user dp mengujinya sbl
diterapkan pd
Merawat dokumentasi pemakai

U/ mempero/ informasi ttg perubahan yg tlh dilakukan, bgmn, kapan
edhy sutanta-teknik informatika-fti-ista yogyakarta
53
Manajemen DBMS


Tugas DBA:

Menyusun laporan ttg kinerja BD





Dp diuji dg: menjalankan contoh program & mencatat waktu proses pd
kegiatan nyata
Pengujian dp dilaks mll rutin program ato mll fasilitas dl DBMS
Melakukan investigasi atas keluhan pemakai
Melakukan analisa atas laporan & keluhan
Melakukan “tuning” atau “optimizing”

Ex:





buffers size
size of a transaction
numbers of shared file
Jk mungkin “tuning” pd SW komunikasi & OS dg BD
 Ex:
Mengatur agar program tersimpan resident di memori
Mengatur alokasi SD HW & saluran komunikasi
Mengevaluasi & menerapkan fasilitas baru
edhy sutanta-teknik informatika-fti-ista yogyakarta
54
DBA
edhy sutanta-teknik informatika-fti-ista yogyakarta
55
Vice President
Data Processing
DBA
Manager
Systems
Manager
Operations
edhy sutanta-teknik informatika-fti-ista yogyakarta
Manager
Programming
56
Personil
DBA
Tugas
1. Mengatur staf u/ memastikan pengembangan BD berjalan lancar
2. Merencanakan ke-bth BD di masa mendatang
Documentation &
1. Menciptakan & merawat dokumentasi BD & standard
standards manager 2. Menyebarluaskan informasi ttg standard
3. Mengadakan pelatihan
User
representatives
Mewakili user dl menentukan ke-bth BD & menyampaikannya pd DBA
Operations
representatives
1. Mewakili bagian operasional yg berkaitan dg komputer
2. Menetapkan ke-bth BD masa depan yg diperlukan dl keg
operasional
3. Memantau kinerja BD
4. Melakukan “tuning” OS
DBMS
configuration
manager
1. Memahami DBMS & merawat konfigurasi pengawasan
2. Melakukan pemantauan & “tuning” pd DBMS
3. Menguji fasilitas baru pd DBMS
Performance
monitor
1. Menyusun & menganalisa kinerja sistem
2. Melakukan investigasi atas keluhan pemakai
edhy sutanta-teknik informatika-fti-ista yogyakarta
57
edhy sutanta-teknik informatika-fti-ista yogyakarta
58