Upload
ngoque
View
215
Download
1
Embed Size (px)
Citation preview
Konsep Dasar Basis Data
Dr.Budi Setiyono, MT
Apa itu …
Basis gudang/markas/tempat berkumpul/tempat bersarang
Data• Fakta mengenai “dunia” (sesuatu ataupun kejadian/event)
• Pengetahuan tentang fakta yang direkam dan mempunyai artiimplisit
Basis Data• Himpunan kelompok data (arsip) yang saling berhubungan yang
diorganisasi sedemikian rupa agar dapat dimanfaatkan secara cepatdan mudah.
• Kumpulan data yang saling berhubungan yang disimpan secarabersama sedemikian rupa tanpa pengulangan yang tidak perlu.
• Computerized recording system
Apa itu …
DBMS/Data Base Management System
Sekumpulan program untuk Pengelolaan Basis Data
(Database Management System / DBMS), antara lain untuk
• Mendefinisikan Basis Data : type data, strukture,
constraints
• Membangun DB: Menyimpan data
• Manipulasi DB : query, update, report
• Sharing sebuah DB : mengijinkan multiple user dapat
mengakses data secara bersamaan
Apa itu …
Contoh s/w DBMS : Oracle
SQL Server
MS Access
MySQL
PostGress
DB2, dll
5
Sistem :
sebuah tatanan yang terdiri atas sejumlah komponen fungsional
(dengan tugas/fungsi khusus) yang saling berhubungan dan secara
bersama-sama bertujuan untuk memenuhi suatu proses/pekerjaan
tertentu
Sistem basis data :
perpaduan antara basis data dan DBMS, terdiri dari komponen –
komponen sbb :
•Hardware
•Software
•Basis data
•DBMS
•User
•Aplikasi lain
Apa itu …
6
TUJUAN BASIS DATA
Mengatur data/mengorganisasikan data
agar diperoleh kemudahan, ketepatan,
dan kecepatan dalam pengambilan
kembali
Aplikasi Basis Data
Perbankan : meliputi semua transaksi
Airlines: reservasi, penjadwalan (schedules)
Universitas: registrasi
Penjualan : konsumen, produk, persediaan
Manufacturing: produksi, inventori, order, supply
Human resources: data pegawai, gaji, pajak
hampir semua aspek kehidupan terkaitdengan basis data
Users/Programmers
Software to Process
Queries/Programs
Application Programs/Queries
Software to Access
Stored Data
DATABASE
SYSTEM
DBMS
SOFTWARE
Stored Database
Definition
(Meta-Data)
Stored
Database
Lingkungan Sistem Basis Data
Pola dalam penyimpanan data
Sistem pemrosesan berkas tradisional.
tiap aplikasi memiliki berkas sendiri sendiri
Dependensi data-program
Perubahan data membuat sejumlah program perludimodifikasi
Duplikasi data
Data yang sama muncul pada beberapa berkas
Keterbatasan berbagi data (Isolasi data - banyak format file)
Waktu pengembangan lama
Perlu membuat program untuk mengakses data
Problem integritas (kekonsistensian)
Batasan integritas (misalnya saldo > 0) menjadi bagian dari program
Keamanan data tidak terjamin
Sistem Pemrosesan Berkas Tradisional
Bentuk pemrosesan dasar
yang lahir sebelum
database muncul
Berkecunderungan tidak
berbagi berkas (Setiap
aplikasi memiliki berkas
tersendiri)
Aplikasi
Personalia Personalia
Aplikasi
Pelatihan Pelatihan
Sistem Pemrosesan Berkas Tradisional
Dependensi data-program
Perubahan data membuat sejumlah program perlu dimodifikasi
Duplikasi data
Data yang sama muncul pada beberapa berkas
Keterbatasan berbagi data (Isolasi data - banyak format file)
Waktu pengembangan lama
Perlu membuat program untuk mengakses data
Problem integritas (kekonsistensian)
Kekakangan integritas (misalnya saldo >) menjadi bagian dariprogram
Keamanan data tidak terjamin
Pendekatan Sistem Database
Independensi program-data
Meminimalkan redundansi data
Meningkatkan konsitensi data
Meningkatkan kemampuan berbagai data
Meningkatkan produktivitas pengembangan aplikasi
Meningkatkan pencapaian standarisasi
Meningkatkan kualitas data
Meningkatkan tanggapan dan kemudahan akses terhadapdata
Mengurangi pemeliharaan program
1-5 1-13
1-5a 1-14
Define UNIVERSITY database
Structure of the record
STUDENT ( Name , Number, Class, Major)
COURSE ( Name , Number, Credit, Dept.)
Data type of data element
Name: a string of characters
Number: integer
Grade: {A,B,C,D,F,I}
…..
Constraints
The sections that students take must be taught by some instructors.
1-5b 1-15
Construct UNIVERSITY database
Store data on storage medium
˙store data for each student, course, section, grade repot, prerequisite
˙records in various files may be related to one another
Manipulate UNIVERSITY database
Query:
Retrieve the transcript ( a list of all courses and grades) of Smith.
Update:
Create a new section for the database course for this semester.
Independensi Program-Data
Struktur data pada database terpisah dengan program
Perubahan struktur data tidak membuat program harus
dimodifikasi
Struktur Data
Kode
Program
Paradigma lama
Kode
Program
Pendekatan database
Database
Redundansi Data
Redundansi data dapat dikurangi dengan cara data yang
sama untuk aplikasi yang berbeda dijadikan satu
Data Pegawai
Bagian penggajian
Bagian pelatihan
Data Pegawai
Data Pegawai
Contoh redundansi dataMengatasi redundansi data
18
Syarat basis data yang baik :
-Tidak adanya redundansi dan inkonsistensi data
Redundansi Data
Konsistensi Data
Pengurangan redundansi data berimplikasi pada
peningkatan konsistensi data (mengurangi
kemungkinan untuk tidak konsisten)
Contoh: Dua biro perjalan tidak terhubung
ke database milik maskapai penerbangan. Apa
yang terjadi kalau salah satu biro sudah
menjual tempat duduk nomor 4 padahal biro
yang lain tidak tahu?
Berbagi Data
Data dapat diakases oleh banyak
pemakai dengan tetap
memperhatikan otorisasi
Istilah multiuser menyatakan bahwa
sebuah data bisa diakses oleh banyak
orang dalam waktu yang bersamaan
Tanggapan dan Akses
Sistem database memberikan tanggapan dan akses yang
cepat sekalipun pemakai adalah orang yang tidak tahu
tentang pemrograman
Dengan menggunakan perintah dalam level SQL
(Structured Query Language) yang mudah untuk dipahami
oleh orang awam, akses terhadap database mudah sekali
dilakukan
Produktivitas Pengembangan Aplikasi
Kemudahan dalam mengakses database
membuat waktu untuk pengembangan
aplikasi dapat dipersingkat
Sistem database menyediakan banyak tool
yang berguna untuk pembuatan aplikasi
Report generator
Form generator
Standarisasi
Standarisasi seperti nama data, panjang data, kemungkinan
nilainya, dan bahkan prosedur untuk mengaksesnya dapat
diatur oleh yang berwewenang (DBA)
Contoh:
Nama pegawai selalui bertipe Aplhanumeric dengan panjang
maksimal 35 karakter.
Semua pemrogram menggunakan standar tersebut
Kualitas Data
Kualitas data sangat berpengaruh terhadap pemerolehaninformasi yang berkualitas
Adanya kekangan (constraint) dalam database membuatpelanggaran terhadap isi data oleh pemakai tidak akanditoleransi oleh sistem dengan sendirinya
Kekangan adalah suatu aturan yang diterapkan pada data dan tidak bisa dilanggar oleh pemakai. Contoh: Agama hanya bisa diisi dengan I, K, H, B, P. Sistem database akanmenolak kalau huruf X dicoba untuk dimasukkan
Pemeliharaan Program
Perubahan terhadap struktur data dengan berbagai alasan
seringkali dilakukan selama tahapan pemeliharaan;
misalnya data baru ditambahkan atau panjang suatu data
ditambah
Perubahan seperti ini tidak selalu membuat program-
program yang telah jadi harus ikut diubah
Abstraksi Data
Physical level mendiskripsikan bagaimana record-record disimpan.
Logical level: mendiskripsikan data yang disimpan dalam data base dan keterkaitan diantaran data-data tersebut.
Misal : type customer = recordname : string;street : string;city : integer;
end;
View level: program aplikasi yang menyembunyikan detail dari tipe data ( mungkin juga informasi) untuk tujuan kemanan.
View Data
Instance dan schema
Menyerupai tipe dan variable dalam bahasa pemrograman
Schema – struktur logic dari database
Misal database terdiri dari informasi mengenai himpunan customers dan accounts serta keterkaitannya
Physical schema: desain database pada level physical
Logical schema: desain database pada level logical
Instance – isi aktual dari data base pada suatu waktu
dapat dianalogikan nilai dari suatu variable
Physical Data Independent
Kemampuna untuk memodifikasi skema physical tanpa
merubah logical schema
Aplikasi tergantung pada skema logic
Interface antara berbagai level dan komponen harus
didefinisikan dengan baik sehingga perubahan pada
sebagaian tidak akan mempengaruhi bagian yang lain.
User Data Base
User dibedakan berdasarkan cara berinteraksi dengan sistem
Application programmers – pemakai berinteraksi dengan system melalui Data Manipulation Language (DML)
Sophisticated users – Pemakai berinteraksi dengan request database menggunakan SQL
Specialized users – Pemakai yang menulis aplikasi basis data non konvensional, tetapi untuk keperluan-keperluan khusus, missal untuk aplikasi AI, Pengolahan Citra, yang mengkin mengakses basis data dengan atau tanpa DBMS.
Naive users – Pemakai yang berinteraksi dengan basis data melalui pemanggilamn suatu program aplikasi
Database administrator
Orang/user yang mengkoordinasi segala aktivitas dari DBMS mempunyai tugas-tugas antara lain : Mendefinisikan Skema
Mendefinisikan satruktur storage dan metode pengaksesannya
Memodifikasi skema dan organisasi physical (jika diperlukan)
Memberikan grant (wewenang) pada user dalam mengakses databse
Memberikan spesifikasi integritas constraints
Memonitoring performance dan merespon untuk melakukan perubahan jika diperlukan
Struktur System secara menyeluruh
1-13 1-33
When not to use a DBMS
Main costs of using a DBMS:
- High initial investment in hardware, software,training
and possible need for additional hardware.
- Overhead for providing generality, security, recovery, integrity, and
concurrency control.
- Generality that a DBMS provides for defining and processing data.
When a DBMS may be unnecessary:
- If the database and applications are simple, well defined, and not
expected to change.
- If there are stringent real-time requirements that may not be met
because of DBMS overhead.
- If access to data by multiple users is not required.