Download - Bab1 pendahuluan

Transcript
Page 1: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.1Database System Concepts

Bab I : PendahuluanBab I : Pendahuluan

� 1. Tujuan Sistem Database� 2. Tinjauan Data� 3. Model Data� 4. Bahasa Definisi Data (Data Definition Language)� 5. Bahasa Manipulasi Data (Data Manipulation

Language)� 6. Manajemen Transaksi� 7. Manajemen Penyimpanan� 8. Pengatur Database (Database Administrator)� 9. Pengguna Database (Database Users)� 10. Struktur Sistem Kaseluruhan

Page 2: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.2Database System Concepts

Database Management System/Database Management System/ Sistem Sistem Manajemen Manajemen Basisdata (DBMS)Basisdata (DBMS)

� Pengumpulan data yang saling berhubungan.

� Kumpulan program untuk mengakses data.

� DBMS berisi informasi mengenai suatu perusahaan tertentu.

� DBMS menyediakan suatu lingkungan yang nyaman sekaligus efisien untuk digunakan.

� Aplikasi database.

� Database Applications:� Perbankan : seluruh transaksi.

� Maskapai penerbangan : pesanan tempat, jadwal penerbangan.

� Universitas : pendaftaran, kelulusan.

� Penjualan : pelanggan, produk, pembelian.

� Pabrik : produksi, stok simpanan, pesanan, rantai persediaan.

� Sumber Daya Manusia : catatan pegawai, gaji, potongan pajak.

� Database mencakup seluruh aspek dalam hidup kita.

Page 3: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.3Database System Concepts

Tujuan Sistem DatabaseTujuan Sistem Database

� Awal mulanya, aplikasi database dibangun pada sistem file paling atas.

� Kelemahan penggunaan sistem file untuk menyimpan data :� Kelebihan data dan tidak konsisten

� Format file yang berulang-ulang, salinan informasi pada file yang berbeda-beda.

� Kesulitan dalam mengakses data � perlunya menulis program baru untuk melaksanakan tiap

tugas baru

� Isolasi data - format dan file yang berulang-ulang.

� Masalah integritas � Kendala integritas (mis. neraca perhitungan >0) menjadi

bagian dari kode program. � Sulit untuk menambah hal baru atau mengubah yang sudah

ada

Page 4: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.4Database System Concepts

Tujuan Sistem Database (Lanjutan)Tujuan Sistem Database (Lanjutan)

� Kelemahan penggunaan sistem file (lanjutan) � Pembaharuan hal-hal kecil

� Gangguan/kerusakan dapat menyebabkan database dalam keadaan yang tidak tetap dengan sebagian pembaruan ikut terbawa.

� Mis. transfer uang dari satu account ke account yang lain mungkin bisa berhasil atau malah tidak sama sekali.

� Akses yang bersamaan oleh banyak pengguna.� Akses bersamaan yang dibutuhkan untuk penampilan � Akses bersamaan yang tidak terkontrol bisa mengakibatkan

ketidakteraturan. – Mis. dua orang yang membaca suatu perhitungan dan

memperbaruinya disaat yang bersamaan

� Masalah keamanan.

� Sistem database menawarkan solusi dari semua masalah diatas

Page 5: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.5Database System Concepts

Tingkatan AbstraksiTingkatan Abstraksi

� Level fisik : menggambarkan bagaimana suatu catatan (record) (mis.pelanggan) disimpan.

� Level logika : menggambarkan data yang tersimpan dalam database dan keterkaitan/hubungan antar data.

type customer = recordname : string;street : string;city : integer;

end;

� View level (level sudut pandang): program aplikasi menyembunyikan detail dari tipe data. Sudut pandang (view) ini juga dapat menyembunyikan informasi (mis.gaji) untuk tujuan keamanan.

Page 6: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.6Database System Concepts

Tinjauan DataTinjauan Data

Arsitektur untuk suatu sistem database

Page 7: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.7Database System Concepts

InstanceInstance dan Skema dan Skema

� Serupa dengan tipe dan variabel dalam bahasa pemrograman� Skema - struktur logis dari database

� mis. database berisi informasi mengenai kumpulan pelanggan dan accountnya serta hubungan antara keduanya.

� dapat diterapkan untuk mengetik informasi dari suatu variabel pada suatu program.

� Skema fisik : desain database pada level fisik.� Skema logis : desain database pada level logika.

� Instance - muatan sebenarnya dari database pada batas waktu tertentu.� dapat diterapkan pada nilai dari suatu variabel.

� Kebebasan Data Fisik - kemampuan untuk memodifikasi skema fisik tanpa mengubah skema logika� aplikasi tergantung pada skema logika.� pada umumnya penghubung antara level dan komponen yang bermacam-

macam harus benar-benar ditegaskan, sehingga jika ada perubahan dibeberapa bagian tidak akan berpengaruh serius pada yang lain

Page 8: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.8Database System Concepts

Model DataModel Data

� Seperangkat alat untuk menggambarkan � data

� hubungan data

� semantik data

� kendala data

� Model Entity-Relationship� Model Relational � Model lain :

� model yang berorientasi obyek

� model data semi-struktur

� model terdahulu : model network dan model hirarki

Page 9: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.9Database System Concepts

Model Model Entity-RelationshipEntity-Relationship

Contoh skema dari model entity-relationship

Page 10: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.10Database System Concepts

Model Model Entity RelationshipEntity Relationship (Lanj.) (Lanj.)

� Model E-R dalam dunia nyata

� Entities/entitas (objects)

� mis. pelanggan, account, bank cabang

� Hubungan (relationship) antar obyek (entitas)

� mis. account A-101 dipegang oleh pelanggan Johnson

� Hubungan (relationship) kumpulan depositor menyesuaikan pelanggan dengan account

� Yang paling banyak digunakan untuk desain database

� Desain database pada model E-R biasanya dipakai juga untuk desain pada model relasional (akan dibahas nanti) yang digunakan untuk penyimpanan dan pemrosesan

Page 11: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.11Database System Concepts

Model Relasional Model Relasional

� Contoh data tabular pada model relasional

customer-name

Customer-idcustomer-street

customer-city

account-number

Johnson

Smith

Johnson

Jones

Smith

192-83-7465

019-28-3746

192-83-7465

321-12-3123

019-28-3746

Alma

North

Alma

Main

North

Palo Alto

Rye

Palo Alto

Harrison

Rye

A-101

A-215

A-201

A-217

A-201

Attributes

Page 12: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.12Database System Concepts

Contoh Database RelationalContoh Database Relational

Page 13: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.13Database System Concepts

Bahasa Definisi DataBahasa Definisi Data / Data Definition / Data Definition Language (DDL)Language (DDL)

� Catatan khusus untuk mendefinisikan skema database� E.g.

create table account ( account-number char(10), balance integer)

� DDL compiler menghasilkan suatu kumpulan tabel yang tersimpan dalam sebuah kamus data (data dictionary )

� Kamus data berisi metadata (yaitu data mengenai data):� skema database

� data bahasa definisi (definition language) dan penyimpanan (storage)

� bahasa yang mana struktur penyimpanan dan metode2 aksesnya hanya khusus digunakan oleh sistem database.

� biasanya merupakan perluasan dari bahasa definisi data.

Page 14: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.14Database System Concepts

Bahasa Manipulasi DataBahasa Manipulasi Data / Data / Data Manipulation Language (DML)Manipulation Language (DML)

� Bahasa untuk mengakses dan memanipulasi data diatur oleh model data yang sesuai

� DML juga dikenal sebagai bahasa query

� Dua kelas bahasa

� Prosedural - pengguna mengkhususkan pada data apa yang dibutuhkan dan bagaimana untuk memperoleh data tersebut.

� Nonprosedural - pengguna mengkhususkan pada data apa yang dibutuhkan tanpa mengkhususkan bagaimana untuk memperoleh data tersebut.

� SQL adalah bahasa query yang paling banyak digunakan

Page 15: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.15Database System Concepts

SQLSQL

� SQL: bahasa non-prosedural yang banyak digunakan� E.g. cari nama pelanggan dengan id pelanggan 192-83-7465

select customer.customer-namefrom customerwhere customer.customer-id = ‘192-83-7465’

� E.g. cari perhitungan semua account yang dipegang oleh pelanggan dengan id pelanggan 192-83-7465

select account.balancefrom depositor, accountwhere depositor.customer-id = ‘192-83-7465’ and depositor.account-number = account.account-

number

� Program2 aplikasi biasanya mengakses database melalui salah satu dari :� perluasan bahasa untuk memasukkan SQL yang cocok

� Penghubung/interface program aplikasi (mis. ODBC/JDBC) yang memungkinkan query-query SQL dapat dikirim ke database

Page 16: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.16Database System Concepts

Pengguna DatabasePengguna Database

� Para pengguna dibedakan dari cara yang mereka lakukan dalam berinteraksi dengan sistem

� Pemrogram aplikasi - berinteraksi dengan sistem melalui panggilan DML.

� Pengguna mutakhir - menyusun permintaan dalam suatu bahasa pertanyaan database.

� Pengguna khusus - menulis aplikasi database khusus yang tidak sesuai kedalam kerangka pemrosesan data tradisional.

� Pengguna naif - meminta salah satu dari program aplikasi permanen yang pernah ditulis sebelumnya

� E.g. orang2 yang mengakses database pada web, bank teller, juru tulis pegawai.

Page 17: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.17Database System Concepts

Administrator Administrator DatabaseDatabase

� Mengkoordinasikan segala aktivitas dalam sistem database; administrator database memiliki pemahaman yang baik mengenai sumber2 informasi dan kebutuhan perusahaan.

� Tugas administrator database meliputi :

� Mendefinisikan skema

� Mendefinisikan metode akses dan struktur penyimpanan

� Memodifikasi organisasi fisik dan skema

� Menjamin otoritas pengguna untuk mengakses database

� Menspesifikkan kendala integritas

� Berperan sebagai penghubung dengan pengguna

� Mengawasi penampilan dan merespon terhadap permintaan akan perubahan

Page 18: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.18Database System Concepts

Manajemen TransaksiManajemen Transaksi

� Sebuah transaksi adalah sekumpulan operasi yang membentuk sebuah satuan fungsi logis dalam suatu aplikasi database

� Komponen manajemen transaksi memastikan bahwa database tetap berada dalam keadaan konsisten (benar) meskipun sistem terganggu (mis. kerusakan power dan sistem operasi bertabrakan/crash) dan transaksi terganggu.

� Persetujuan/Concurrency-kontrol manajer mengatur interaksi antar transaksi yang bersamaan, untuk menjamin kelangsungan database.

Page 19: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.19Database System Concepts

Manajemen PenyimpananManajemen Penyimpanan

� Manajer penyimpanan adalah sebuah modul program yang menyediakan penghubung antara data level rendah yang disimpan dalam database dan program2 aplikasi serta query-query yang dimasukkan ke dalam sistem.

� Manajer penyimpanan bertanggung jawab terhadap hal-hal dibawah ini :

� interaksi dengan manajer file

� penyimpanan yang efisien, mendapatkan kembali data dan memperbaruinya

Page 20: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.20Database System Concepts

Struktur Sistem KeseluruhanStruktur Sistem Keseluruhan

Page 21: Bab1 pendahuluan

©Silberschatz, Korth and Sudarshan1.21Database System Concepts

Arsitektur AplikasiArsitektur Aplikasi

Two-tier architecture : E.g.program klien menggunakan ODBC/JDBC untuk berkomunikasi dengan database

Three-tier architecture : E.g. aplikasi dasar web, dan aplikasi yang dibangun menggunakan "middleware"


Top Related