21
©Silberschatz, Korth and Sudarsha 1.1 Database System Concepts Pengantar Pengantar Seputar sistem basisdata Cara pandang Data Model Data Bahasa untuk mendefinisikan Data Bahasa untuk memanipulasi Data Pengelolaan Transaksi Pengelolaan simpanan data Administrator Database Pengguna Database Struktur sistem menyeluruh

Pengantar

Embed Size (px)

DESCRIPTION

Pengantar. Seputar sistem basisdata Cara pandang Data Model Data Bahasa untuk mendefinisikan Data Bahasa untuk memanipulasi Data Pengelolaan Transaksi Pengelolaan simpanan data Administrator Database Pengguna Database Struktur sistem menyeluruh. Database Management System (DBMS). - PowerPoint PPT Presentation

Citation preview

Page 1: Pengantar

©Silberschatz, Korth and Sudarshan1.1Database System Concepts

PengantarPengantar

Seputar sistem basisdata

Cara pandang Data

Model Data

Bahasa untuk mendefinisikan Data

Bahasa untuk memanipulasi Data

Pengelolaan Transaksi

Pengelolaan simpanan data

Administrator Database

Pengguna Database

Struktur sistem menyeluruh

Page 2: Pengantar

©Silberschatz, Korth and Sudarshan1.2Database System Concepts

Database Management System (DBMS)Database Management System (DBMS)

Kumpulan relasi data Kumpulan program untuk mengakses data DBMS berisi informasi bagian-bagian perusahaan DBMS menyediakan lingkungan yang tepat dan efisien untuk

digunakan. Aplikasi Database :

Perbankan : semua transaksi Penerbangan : resevasi, jadwal Universitas: pendaftaran, pelulusan Penjualan : pelanggan, produk, penyimpanan Manufactur : produksi, inventori, order, jaring pemasok SDM : rekord karyawan, gaji, pemotongan pajak

Database menyentuh semua aspek kehidupan

Page 3: Pengantar

©Silberschatz, Korth and Sudarshan1.3Database System Concepts

Pentingnya Sistem Database Pentingnya Sistem Database

Pada waktu yang lalu aplikasi database dibangun diatas sistem file

Kekurangan penggunaan sistem file sebagai penyimpan data: Redundansi / kerangkapan data dan inconsistency

Format file yang tidak seragam, kerangkapan data di file-file yang berbeda

Sulit dalam mengakses data

Perlu program baru untuk mengakses data baru

Pengisolasian data — banyak file dengan format yang berbeda

Masalah integritas (keterpaduan)

Pengendalian terpadu (mis. saldo > 0) menjadi bagian dari program

Sulit untuk menambah elemen pengendali atau mengubah yang sudah ada

Page 4: Pengantar

©Silberschatz, Korth and Sudarshan1.4Database System Concepts

Pentingnya Sistem DatabasePentingnya Sistem Database

Kekurangan sistem file Pengubahan atomik

Kesalahan mungkin mengakibatkan database dalam kedaan yang tidak konsisten dengan data yang baru yang dihasilkan

Mis. Pengiriman uang dari satu rekening ke rekening yang lain harus terjadi secara lengkap atau tidak sama sekali

Akses secara bersamaan oleh banyak user

Akses secara bersama untuk meningkatkan kinerja

Akses bersama akan mengakibatkan ketidak konsistenan

– Mis. Dua orang membaca dan megubah data saldo pada saat yang sama

Masalah keamanan

Sistem Database mampu mengatasi masalah tersebut diatas

Page 5: Pengantar

©Silberschatz, Korth and Sudarshan1.5Database System Concepts

Tingkat abstraksiTingkat abstraksi

Tingkat Fisik : yang menjelaskan bagaimana sebuah rekord disimpan.

Tingkat Lojik : menjelaskan simpanan data dalam database, dan relasi antar data.

type pelanggan = recordnama : string;jalan : string;kota : integer;

end;

Tingkat user (pandang): program aplikasi menyembunyikan rinci tipe data. Tingkat pandang dapat juga menyembunyikan nilai informasi untuk kebutuhan keamanan.

Page 6: Pengantar

©Silberschatz, Korth and Sudarshan1.6Database System Concepts

Cara pandang DataCara pandang Data

Arsitektur sebuah database

Page 7: Pengantar

©Silberschatz, Korth and Sudarshan1.7Database System Concepts

Skema dan IsiSkema dan Isi

Mendekati tipe dan variabel dalam bahasa pemrograman

Skema – struktur lojik dari database Mis. Database yang berisi informasi tentang himpunan nasabah dan

rekeningnya dan relasi diantaranya

Analogi dengan tipe informasi dari variabel dalam sebuah program

Skema fisik : rancangan database dalam tingkatan fisik

Skema lojik : rancangan database dalam tingkatan lojik

Instan – isi aktual dari database pada suatu waktu Analogi dengan nilai variabel

Kemandirian data fisik – memungkinkan melakukanperubahan skema fisik tanpa mengubah skema lojik Aplikasi bergantung pada skema lojik

Secara umum, antar muka antara berbagai tingkat dan komponen harus dapat didefinisiikan dengan baik sehingga perubahan di suatu bagian tidak memberikan dampak banyak pada bagian lainnya.

Page 8: Pengantar

©Silberschatz, Korth and Sudarshan1.8Database System Concepts

Model Data Model Data

Sekumpulan alat untuk mendefinisikan data Relasi data Semantik data data constraints (kekakuan data)

Model Relasi Entitas

Model Hubungan

Model yang lain : object-oriented model semi-structured data models Older models: network model and hierarchical model

Page 9: Pengantar

©Silberschatz, Korth and Sudarshan1.9Database System Concepts

Model Hubungan EntitasModel Hubungan Entitas

Contoh skema dalam model hubungan entitas

Page 10: Pengantar

©Silberschatz, Korth and Sudarshan1.10Database System Concepts

Model E-R dari dunia nyata Entitas (objek)

Mis. nasabah, rekening, bank cabang

Relasi antar entitas

Mis. Rekening nomor A-101 milik nasabah yang bernama Johnson

Himpunan relasi depositor menggabungkan dara nasabah dengan data rekening

Kegunaan lebih luas dari rancangan database Rancangan Database dalam model E-R biasanya diterjemahkan

dalam rancangan model relasional yang mana akan digunakan dalam penyimpanan dan pengolahan

Page 11: Pengantar

©Silberschatz, Korth and Sudarshan1.11Database System Concepts

Model Relasional Model Relasional

Contoh tabel data dalam model relasional

customername

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

Atribut

Page 12: Pengantar

©Silberschatz, Korth and Sudarshan1.12Database System Concepts

Contoh Database Relasional Contoh Database Relasional

Page 13: Pengantar

©Silberschatz, Korth and Sudarshan1.13Database System Concepts

Bahasa untuk mendefinisikan data Bahasa untuk mendefinisikan data (DDL)(DDL)

Notasi khusus untuk mendefinisikan skema database Mis.

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

Compiler DDL menghasilkan sekumpulan tabel yang tersimpan sebuah dalam kamus data

Kamus Data berisi metadata (data tentang data) Skema database Simpanan data dan bahasa untuk mendefinisikan

Bahasa yang digunakan untuk menspesifikasikan susunan penyimpanan dan metoda akses yang digunakan dalam sistem database

Dapat juga perluasan dari bahasa yang mendefinisikan database

Page 14: Pengantar

©Silberschatz, Korth and Sudarshan1.14Database System Concepts

Bahasa untuk memanipulasi data (DML)Bahasa untuk memanipulasi data (DML)

Bahasa untuk mengakses dan memanipulasi data dan mengelompokkan sesuai model data DML disebut juga bahasa query

Dua kelas bahasa Prosedural – user menspesifikasikan apa data yang dibutuhkan dan

bagaimana mendapatkannya

Nonprosedural – user menspesifikasikan data yang dibutuhkan tanpa memikirkan bagaimana data tersebut diperoleh

SQL adalah bahasa query yang banyak digunakan

Page 15: Pengantar

©Silberschatz, Korth and Sudarshan1.15Database System Concepts

SQLSQL

SQL: sebagai bahasa non prosedural Contoh : cari nama nasabah dengan nomor rekening192-83-7465

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

Contoh : Cari saldo dari nasabah dengan nomor rekening 192-83-7465select account.balancefrom depositor, accountwhere depositor.customer-id = ‘192-83-7465’ and depositor.account-number = account.account-

number

Program aplikasi biasanya mengakses database melalui salah satu berikut Bahasa yang ada fasilitasnya SQL

Antar muka program aplikasi (mis. ODBC/JDBC) yang mana memboleh queri SQL untuk mengirim database

Page 16: Pengantar

©Silberschatz, Korth and Sudarshan1.16Database System Concepts

Pengguna Database Pengguna Database

User dibedakan dari cara bagaimana mereka berinteraksi dengan sistem

Pemrogram aplikasi – interaksi dengan DML

Sophisticated user – format bahasa query

Specialized users – menulis khusus aplikasi database dan tidak terlibat dalam pemrosesan data

Naïve users – mengakses data dengan program aplikasi yang telah tersedia Mis. Orang yang mengakses data melalui internet, teller bank dll

Page 17: Pengantar

©Silberschatz, Korth and Sudarshan1.17Database System Concepts

Database AdministratorDatabase Administrator

Mengkoordinir seluruh aktifitas sistem basis data; database administrator mempunya penguasaan yang baik tentang sumber daya informasi yang dibutuhkan perusahaan.

Database administrator melakukan: Mendefinisikan skema

Mendefinisikan susuna penyimpanan dan metode aksesnya

Memodifikasi organisasi skema dan fisik

Menentukan hak akses pengguna

Menspesifikasikan aturan keterpaduan

Berpersan seperti agen lisensi bagi user

Memonitor kinerja dan tanggap terhadap kebutuhan perubahan

Page 18: Pengantar

©Silberschatz, Korth and Sudarshan1.18Database System Concepts

Pengelolaan TransaksiPengelolaan Transaksi

Sebuah trannsaksi adalah sekumpulan operasi yang mempunyai sebuah fungsi lojik dalam sebuah aplikasi database

Komponen pengelolaan transaksi meyakinkan bahwa databsae selalu konsisten dan benar bila ada kesalahan OS atau transaksi.

Mengendalikan transaksi yang bersamaan sehingga database tetap konsisten.

Page 19: Pengantar

©Silberschatz, Korth and Sudarshan1.19Database System Concepts

Pengelolaan PenyimpananPengelolaan Penyimpanan

Dalah modeul programn yang menyediakan antar muka antara simpanan data tingkat rendah dengan program aplikasi dan query yang dibutuhkan.

Pengelola penyimpanan bertanggung jawab terhadap: Interaksi dengan file manager

Efisiensi penyimpanan, pembacaan data dan updating data

Page 20: Pengantar

©Silberschatz, Korth and Sudarshan1.20Database System Concepts

Gambaran sistem Gambaran sistem

Page 21: Pengantar

©Silberschatz, Korth and Sudarshan1.21Database System Concepts

Arsitektur AplikasiArsitektur Aplikasi

Two-tier architecture: mis. Pemrograman client dengan menggunakan ODBC/JDBC untuk komunikasi dengan databaseThree-tier architecture: mis. web-based applications, dan applications yang dibangun dengan menggunakn “middleware”