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