pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/minggu1.pdf · database...

33
Teknik Informatika UKDW Sistem Basis Data Sistem Basis Data Pendahuluan Pendahuluan Sistem Basis Data Semester Genap Th Ajaran 2012/2013 Budi Susanto

Upload: ngotu

Post on 01-Feb-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

Teknik InformatikaUKDWSistem Basis DataSistem Basis Data

PendahuluanPendahuluan

Sistem Basis DataSemester Genap Th Ajaran 2012/2013

Budi Susanto

Page 2: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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)

Page 3: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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)

Page 4: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 5: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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%

Page 6: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 7: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 8: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 9: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 10: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 11: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 12: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 13: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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).

Page 14: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 15: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 16: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 17: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 18: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

18

Teknik InformatikaUKDWSistem Basis DataSistem Basis Data

Arsitektur Basis Data

Page 19: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 20: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 21: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

21

Teknik InformatikaUKDWSistem Basis DataSistem Basis Data

Evolusi Model Data

Page 22: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 23: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 24: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

24

Teknik InformatikaUKDWSistem Basis DataSistem Basis Data

Contoh Model Relational

Page 25: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

25

Teknik InformatikaUKDWSistem Basis DataSistem Basis Data

Sejarah Model Relational

Page 26: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 27: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 28: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 29: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 30: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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.

Page 31: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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

Page 32: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

32

Teknik InformatikaUKDWSistem Basis DataSistem Basis Data

Arsitektur Sistem

Keseluruhan

Page 33: Pendahuluan - lecturer.ukdw.ac.idlecturer.ukdw.ac.id/budsus/pdf/basisdata/Minggu1.pdf · Database Management System ... – Bahasa untuk penyimpan dan definisi data ... Arsitektur

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”