View
223
Download
0
Category
Preview:
Citation preview
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
PendahuluanPendahuluan
Sistem Basis DataSemester Genap Th Ajaran 2012/2013
Budi Susanto
2
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Materi Perkuliahan● Konsep dan arsitektur sistem basis data (#1)● Blok Pembangunan Basis Data (#2)● Pemodelan Basis data (#3, #4)● Normalisasi Basis Data Relational (#5, #6)● SQL Dasar (#7)● SQL Aggregate + Himpunan (#8)● SQL Relasi, DDL, DML (#9, #10)
3
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Materi Perkuliahan● Pengindeksan dalam Basis data (#11)● Metode Transaksi pada Database (#12)● Penguncian pada Akses Bersama (#13)● Pengembangan Aplikasi Database (#14)
4
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Materi Praktikum● Pengenalan Fasilitas OracleXE● Operasi DDL● Operasi DML● Penerapan Normalisasi● Operasi Query Aggregate● Fungsi-fungsi SQL● Operasi Himpunan● Operasi Subquery● Operasi View dan Index
5
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Kontrak Perkuliahan● Bobot Penilaian
– TTS : 10%
– TAS : 10%
– Tugas : 40% (4 kali tugas)
– Praktikum: 40%● Tes 8 kali : 80% ● Tes Akhir : 20%
6
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Buku Pegangan● Bryla, Bob & Loney, Kevin. 2008. Oracle
Database 11g DBA Handbook. McGrawHill.● Powell, Gavin. 2006. Beginning Database
Design. Wrox, Willey Publishing.● Powell, Gavin & McCullogh-Dieter, Carol. 2005.
Oracle SQL Jumpstart with Example. Elsevier, Inc.
● Silberschatz, Abraham & Korth, Henry F. & Sudarshan S. 2002. Database System Concepts. Fourth Edition, McGraw Hill.
7
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Tiket Masuk Kelas● membawa buku atau foto copy materi dari buku
wajib sesuai dengan materi pada pertemuan aktif
● WAJIB mengenakan SEPATU dan BAJU/KAOS BERKERAH
● TOLERANSI TERLAMBAT MASUK KELAS 20 Menit
8
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Pengantar Basis Data● Tujuan Sistem Basis Data
● View of Data
● Model-model Data dan Evolusinya
● DML
● DDL
● Manajemen Transaksi
● Management Penyimpanan
● Administrasi Database
● Pemakai Database
9
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
DBMS● Database Management System
– Kumpulan data yang saling berelasi (inter)
– Sekumpulan program untuk mengakses data
● DBMS berisi informasi tentang sebuah perusahaan/organisasi tertentu.
● DBMS menyediakan sebuah lingkungan yang mudah dan efisien untuk digunakan.
● Database telah masuk di semua aspek kehidupan.
10
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Tipe Basisdata● Pemilihan pemodelan basisdata dipengaruhi
oleh kebutuhan aplikasi.● Secara fungsinya, basisdata dikelompokkan:
– Transaksional
– Decision Support System (DSS)
– Hybrid
11
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Basisdata Transaksional● Sebuah basisdata yang didasarkan pada
perubahan-perubahan kecil pada basisdata (traksaksi kecil).
● Fungsi utamanya: – untuk menambah data,
– mengubah data yang ada,
– menghapus data yang ada,
● Semua dilakukan terhadap data yang kecil.
12
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Contoh Basisdata Transaksional● Basisdata client/server
– Melayani pemakai dalam perusahaan tunggal.
– Jumlah pemakai antara 1 – ribuan.
– Basisdata Client-server melayani untuk concurrency rendah dan throughput rendah pada waktu yang sama karena jumlah pemakai dapat diatur.
● Basisdata OLTP– Basisdata OLTP membutuhkan kemampuan
concurrency.
– Jumlah pemakai Internet tidak dapat diatur.
13
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Basisdata DSS● Melayani kebutuhan manajerial/eksekutif
– Data warehouse database● Dapat menggunakan pemodelan data yang sama
dengan transaksional. ● Berisi data history beberapa tahun untuk menyediakan
kemampuan perkiraan. ● Sehingga butuh kapasitas besar, melebihi OLTP.
– Data mart● Mengambil sebagian kecil dari data warehouse.
– Reporting database● Merupakan tipe data warehouse namun berisi data aktif
(bukan arsip/historical).
14
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Basisdata Hybrid● Merupakan campuran akan kebutuhan
concurrency OLTP dan tipe data Warehouse. – Dalam lingkungan yang menjalankan operasi lebih
kecil,
– Basisdata hybrid yang lebih kecil merupakan pilihan yang lebih cost-effective,
– Sederhana, sebab terdapat satu basisdata — mesin, lisensi, SDM lebih sedikit.
15
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Tujuan Sistem Basis Data● Pada awalnya, aplikasi database menggunakan
sistem file.● Kekurangan menggunakan sistem file untuk
menyimpan data:
– Redudancy dan inkonsistensi Data● Format file banyak, duplikasi informasi di file berbeda
– Kesulitan dalam pengaksesan data ● Perlu menulis program baru untuk tugas baru
– Isolasi data — banyak file dan format
– Masalah integritas● Integrity constraints (mis. Saldo > 0) bagian dari app.● Sulit menambah atau mengubah constraint
16
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Tujuan Sistem Basis Data (lanj.)– Atomicity update
● Kegagalan menyebabkan basisdata dalam keadaan tidak konsisten
– Akses bersamaan oleh beberapa pemakai● Akses bersamaan yang tak terkontrol dapat
menyebabkan inkonsistensi– Mis. Dua pemakai membaca saldo dan mengupdatenya pada
saat yang sama
– Masalah keamanan
● Sistem basis data menawarkan solusi untuk masalah-masalah di atas.
17
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Level Abstraksi● Level Fisik:
– Bagaimana sebuah record disimpan.
● Level Logika: – Menggambarkan data disimpan dalam basis data,
dan hubungan antar data. (struktur record)
● Level View : – Program aplikasi menyembunyikan detil tipe data
atau data tertentu untuk alasan keamanan.
18
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Arsitektur Basis Data
19
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Instan dan Skema● Seperti tipe dan variabel dalam pemrograman.● Skema – struktur logika basis data
– Skema Fisik : rancangan basisdata pada level fisik
– Skema logika: rancangan basisdata pada level logika
● Instan – isi sebenarnya dari basis data pada satu waktu tertentu – nilai variabel
● Ketidakketergantungan Data Fisik – kemampuan untuk mengubah skema fisik tanpa mengubah skema logika
20
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Model Data● Sebuah kumpulan alat untuk menggambarkan
● data ● Hubungan data● Semantik data● Batasan (constraint) data
● Model Entity-Relationship ● Model Relational● Model-model lain :
● Model berbasis objek● Model data semi-terstruktur● Model lama: model jaringan dan model hirarki
21
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Evolusi Model Data
22
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Model E-R
● E-R memodelkan dunia nyata.
– Entitas (objek)
– Hubungan antar entitas● Rancangan dari model E-R biasanya dikonversikan ke
Model Relational untuk penyimpanan dan pemrosesan.
23
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Model Relational
c u s t o m e r -n a m e
C u s t o m e r - i dc u s t o m e r -s t r e e t
c u s t o m e r -c i t y
a c c o u n t -n u m b e r
J o h n s o n
S m i t h
J o h n s o n
J o n e s
S m i t h
1 9 2 - 8 3 - 7 4 6 5
0 1 9 - 2 8 - 3 7 4 6
1 9 2 - 8 3 - 7 4 6 5
3 2 1 - 1 2 - 3 1 2 3
0 1 9 - 2 8 - 3 7 4 6
A l m a
N o r t h
A l m a
M a i n
N o r t h
P a l o A l t o
R y e
P a l o A l t o
H a r r i s o n
R y e
A - 1 0 1
A - 2 1 5
A - 2 0 1
A - 2 1 7
A - 2 0 1
A t t r i b u t e s
24
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Contoh Model Relational
25
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Sejarah Model Relational
26
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Data Definition Language (DDL)● Notasi khusus untuk mendefinisikan skema
basis data● DDL compiler menghasilkan sekumpulan tabel
yang disimpan dalam data dictionary.● Data dictionary berisi metadata (yaitu data
tanpa data)– Skema basisdata
– Bahasa untuk penyimpan dan definisi data● Bahasa dimana struktur penyimpanan dan metode akses
digunakan oleh sistem basisdata● Perluasan dari DDL
27
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Data Manipulation Language (DML)● Bahasa untuk mengakses dan manipulasi data
yang diorganisasikan dengan model data tertentu– DML juga sebagai bahasa query
● Dua kelas bahasa– Prosedural – pemakai menyebutkan data apa yang
diperlukan dan bagaimana mendapatkan data tsb.
– Nonprosedural – pemakai menyebutkan data apa yang diperlukan tanpa menyebutkan bagaimana mendapatkannya
28
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
SQL● SQL: bahasa non-prosedural● Program aplikasi secara umum mengakses
basis data melalui satu dari:– Perluasan bahasa untuk menanamkan SQL,
– API (Application program interface), mis. ODBC/JDBC, yang memungkinkan query SQL dikirim ke basisdata.
select account.balancefrom depositor, accountwhere depositor.customer-id = ‘192-83-7465’ and
depositor.account-number = account.account-number
29
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Administrator Basisdata● Mengkoordinasikan semua aktifitas sistem basisdata
● Harus memiliki pemahaman resource informasi perusahaan dan kebutuhannya.
● Tugas administrator basisdata:
– mendefinisi skema
– Mendefinisikan stuktur penyimpanan dan metode akses
– Memodifikasi organisasi skema dan fisik
– Mempercayakan otoritas pemakai untuk mengakses basisdata
– Mendefinisikan integrity constraint
– Memantau unjukkerja dan merespon kebutuhan
30
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Manajemen Transaksi● Sebuah transaksi adalah sekumpulan operasi
yang melakukan sebuah fungsi logika tunggal dalam aplikasi basisdata
● Komponen Manajemen Transaksi memastikan bahwa basisdata tetap konsisten walaupun sistem gagal (mis. listrik padam) dan transaksi gagal.
● Manajer Concurrency-control mengontrol interaksi antar transaksi yang terjadi bersamaan, untuk memastikan konsistensi basisdata.
31
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Manajemen Penyimpan● Manajer penyimpan (Storage manager) adalah
sebuah modul yang menyediakan antarmuka antara penyimpan data level rendah dalam basisdata dan program aplikasi dan query yang dikirimkan ke sistem.
● Manajer penyimpan bertanggung jawab:– Interaksi dengan manajer file
– Efisiensi menyimpan, mengambil dan meng-update data
32
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Arsitektur Sistem
Keseluruhan
33
Teknik InformatikaUKDWSistem Basis DataSistem Basis Data
Arsitektur Aplikasi
● Arsitektur Two-tier : contoh: client menggunakan ODBC/JDBC untuk komunikasi dengan basisdata
● Arsitektur Three-tier : contoh: aplikasi web dan aplikasi menggunakan “middleware”
Recommended