SISTEM BASIS DATA
BAB II SISTEM BASIS DATA
Tujuan
Mengerti yang dimaksud dengan Sistem Basis Data dan komponen-komponennya Mengetahui abstraksi data yang menunjukkan bagaimana para pemakai melihat data Mengetahui bahasa basis data yang menjadi perantara user untuk berinteraksi dengan basis data Mengetahui struktur sistem basis data secara keseluruhan
Pengertian
Merupakan sistem yang terdiri atas kumpulan file (table) dalam sebuah basis data di sebuah sistem komputer yang saling berhubungan dan sekumpulan program pengelola basis data (DBMS :Database Management System) yang memungkinkan beberapa pemakai dan atau program lain untuk mangakses dan memanipulasi file-file (table-table) tersebut
Keuntungan penerapan sistem basis data :
Terkontrolnya kerangkapan dan inkonsistensi data Terpeliharanya keselarasan data Data dapat dipakai bersama-sama Memudahkan standarisasi Memudahkan penerapan batasan-batasan pengamanan Terpeliharanya integritas data Terpeliharanya keseimbangan atas perbedaan kebutuhan data dari setiap aplikasi Program / data independen
Kelemahan penerapan sistem basis data :
Mahal dalam implementasi Rumit / komplek Kesulitan penanganan proses recovery dan backup Kerusakan pada sistem basis data dapat mempengaruhi departemen yang terkait
Komponen Utama
Perangkat Keras (HardWare) Sistem Operasi (Operating System) Basis Data (DataBase) Sistem Pengelola Basis Data (DBMS) Aplikasi atau perangkat lunak yang bersifat opsional Pemakai (User)
Pemrogram Aplikasi Pengguna Mahir (Casual User) Pengguna Awam (End User/Naïve User) Pengguna Khusus (Specialized User)
Abstraksi Data
Tingkatan / Level dalam melihat data dalam sebuah basis data.
Level Fisik (Physical Level) Level Konseptual (Conceptual Level) Level Penampakan (View Level)
Penjelasan Level abstraksi data : Level fisik (Physical level) Merupakan level yang paling rendah dalam abstraksi data.menjelaskan bagaimana data disimpan secara fisik (sesungguhnya suatu data disimpan).Struktur data yang komplek disajikan dalam level ini. Pemakai ( user) melihat data sebagai gabungan struktur dan datanya sendiri.Level ini didefinisikan sebagai sebuah Skema Internal. Level Konseptual ( Conseptual Level) Menjelaskan data apa yang disimpan dalam basis data beserta hubungannya dengan data lain (relasi), sehingga menjelaskan keseluruhan basis data.Level ini digunakan oleh database administrator untuk menentukan informasi apa yang disimpan dalam basis data.Level ini didefinisikan sebagai Skema Konseptual Level penampakan (View Level) Disebut juga Level Eksternal.merupakan level tertinggi dalam basis data, dan sebagai level user.User disini meliputi programmer,end user atau database administrator(DBA).Didefinisikan sebagai Skema Eksternal.
Abstraksi Data View 1
View 2
Level Konseptual
Level Fisik
View 3
Bahasa Basis Data
Terdiri dari sejumlah perintah (statement) yang diformulasikan dan dapat diberikan oleh pengguna dan dikenali/diproses oleh DBMS untuk melakukan suatu aksi/pekerjaan tertentu. Komponen Bahasa Basis Data
Data Definition Language (DDL) Data Manipulation Language (DML)
Data Definition Language
Digunakan untuk menspesifikasikan struktur/skema basis data yang menggambarkan/mewakili desain basis data secara keseluruhan. Hasil kompilasi perintah DDL disimpan dalam file yang disebut kamus data yaitu File yang berisi metadata (data yang mendeskripsikan data sesungguhnya).File ini sll dibaca ketika dilakukan pembacaan/penulisan data pada basis data Struktur penyimpan dan metode akses yang digunakan oleh sistem basis data disebut dengan data storage and definition language
Data Manipulation Language (DML)
Digunakan user untuk mengakses/memanipulasi basis data Bentuk manipulasi
Pencarian kembali data lama(select) Penyisipan data baru (insert) Penghapusan data (delete) Pengubahan data (update)
Jenis DML
Prosedural Non Prosedural
Penjelasan DML :
DML Prosedural : user menentukan data apa dan bagaimana cara mendapatkannya.Misal : dBase III,Foxbase. DML nonProsedural : user menentukan data apa dan tidak perlu mengetahui bagaimana cara mendapatkannya. Misal : SQL
Database Management System (DBMS) :
DBMS atau system manajemen basis data adalah perangkat lunak (software) yang menangani semua pengaksesan basis data. Mempunyai fasilitas membuat,mengakses, memanipulasi dan memelihara basis data. Tujuan DBMS : menyediakan lingkungan data yang nyaman dan efisien untuk digunakan dalam menerima dan menyimpan informasi dari dan ke basis data.
Gambar DBMS : Data
file file D
file
DBMS
Data
Fungsi DBMS :
Mengolah pendefinisian data ( data definition) Menangani permintaan user untuk mengakses data ( data manipulation) Dapat memeriksa security dan integrity data yang didefinisikan oleh data base administrator ( data security dan integrity) Dapat menangani kegagalan pengaksesan basis data yang disebabkan oleh kesalahan sistem, kerusakan disk, dll ( data recovery dan concurency) Menyediakan kamus data ( data dictionary) Menangani unjuk kerja dari semua fungsi se efisien mungkin (performance)
Manajer Basis Data
Modul program yang menyediakan antarmuka (interface) antar penyimpanan data low level dalam basis data dengan program aplikasi dan query yang diterima oleh sistem. Tugasnya:
Berinteraksi dengan manajer file Pelaksanaan integrity Pelaksanaan Keamanan Backup dan recovery Kontrol konkurensi
Administrator Basis Data
Orang yang mempunyai wewenang untuk mengendalikan sistem basis data. Tugasnya:
Mendefinisikan Skema Konseptual,skema internal Mendefinisikan Struktur penyimpanan dan metode akses Memodifikasi skema dan organisasi fisik Menjamin otorisasi untuk mengakses data Menspesifikasikan integrity constraint (Pembatas)
Struktur Sistem Keseluruhan ( Komponen fungsional/ modul) DBMS :
File Manager
Database Manager
Menerjemahkan perintah query menjadi instruksi yang dimengerti oleh database manager
DML Precompiler
Menetapkan antarmuka
Query Processor
Mengatur alokasi penyimpanan
Mengubah perintah DML menjadi bentuk perintah normal
DDL Compiler
Mengubah perintah DDL menjadi tabel yang berisi metadata
Naïve User
Programer Aplikasi
Casual User
Database Admin
Program Aplikasi
System Calls
Query
Skema Basis Data
DML Precompiler
Query Processor
DDL Compiler
Kode Obyek Program Aplikasi
Database Manager
File Manager
File Data Kamus Data
Model data :
Konsep model data digunakan untuk menjelaskan struktur basis data Kumpulan dari alat bantu konsep untuk menjelaskan data, relasi data, arti data dan batasan data.
Kelompok Model Data : ada 3
1.Object-Based Logical Model 2.Record –Based Logical Model 3.Physical Data Model
1.Object-Based Logical Model : Digunakan untuk menjelaskan data pada level konseptual dan view. Beberapa model object-based logical model antara lain : A.Entity Relationship Model (E – R Model) Berisi kumpulan obyek dasar yang disebut entitas dan hubungan antar obyek tersebut disebut relasi.Penggambaran E – R model dengan 4 komponen, yaitu : Kotak : menyatakan himpunan entitas Elips : menyatakan atribut Wajik (diamond) : menyatakan relasi antar entitas Garis : menghubungkan antar obyek dalam diagram E-R Komponen kotak, elips dan wajik diberi label nama.
Contoh E – R Model : NamaKul
Nama
KodeKul
Hari
Alamat
NPM
Jam
Atribut Mahasiswa
Entitas
Mengikuti
Relasi
MataKuliah
B.Semantic Data Model Hampir sama dengan Entity Relationship model dimana relasi antara obyek dasar tidak dinyatakan dengan simbol tetapi menggunakan kata-kata (Semantic). Tanda-tanda yang digunakan dalam semantic data model sbb :
Menunjukan arahnya Menunjukkan atribut C. Object Oriented Model Object Oriented Model berbasis kumpulan obyek.Misal : ADBO (Analisis Desain Berorientasi Obyek), contoh : bahasa pemrograman Java
D.Functional Data Model
2.Record- Based Logical Model : Model logika Record Bases digunakan untuk menjelaskan data pada level konseptual dan View, menjelaskan seluruh struktur logika dari basis data serta diskripsi implementasi pada level yang lebih tinggi.Macam-macam model Logika record Bases sbb : a. Model relasional ( Relational Model). Model ini disusun dalam bentuk tabel dua dimensi yang terdiri atas baris ( record) dan kolom ( field), pertemuan antara baris dengan kolom disebut item data ( data value), tabel-tabel yang ada dihubungkan sedemikian rupa menggunakan field-field kunci ( key field) sehingga dapat meminimalkan duplikasi data. Model paling sederhana, paling banyak digunakan,mudah digunakan, mempunyai kemampuan dalam mengakomodasi berbagai kebutuhan pengelolaan basis data.
Tingkatan-tingkatan data dalam model relasional : Karakter : berupa numerik ( angka 0 – 9), huruf ( A-Z,a-z) atau karakter khusus : *,&,%,# ,dll. Field / Atribut : bagian dari record yang menunjukkan suatu item data yang sejenis.Misal : field Nama, field NIP,dll.Disebut juga kolom. Record / Tupple : kumpulan data value dari atribut yang berkaitan sehingga dapat menjelaskan sebuah entitas secara lengkap. Disebut juga baris. Tabel / Entitas : Benda atau obyek dalam dunia nyata yang dapat dibedakan dari obyek-obyek lainnya. Disebut juga file. Basis Data : kumpulan dari tabel-tabel yang saling berrelasi, disusun secara logis, sehingga menghasilkan informasi yang bernilai guna dalam proses pengambilan keputusan. Hubungan antar tabel dlm model relasional : satu ke satu ( one to one), satu ke banyak (one to many),banyak ke satu ( many to one), banyak ke banyak ( many to many).
b.
Model Hierarki ( Hierarchical Model ) Disebut juga model pohon, karena serupa pohon terbalik.Menggunakan pola hubungan orangtua dan anak.Simpul (dinyatakan dengan simbol lingkaran atau kotak) yang terhubung dengan simpul dibawahnya disebut orang tua , dan setiap orang tua memiliki hubungan 1( 1:1) atau banyak (1:M).Simpul dibawah orangtua disebut anak, dan setiap anak hanya memiliki satu orang tua.simpul orang tua yang tidak memiliki orang tua disebut akar, dan simpul yang tidak mempunyai anak disebut daun .Hubungan antara anak dan orangtua disebut cabang.Contoh : Perguruan AKAR Tinggi
FTI
TK
Anak
FE
TI
EA
FP
EM
PA
PSosek
Kelemahan model Hierarki : Ketidakmampuan dalam mengelola hubungan many to many karena dalam kead ini banyak terdapat duplikat (redundansi) data serta keterbatasan pemakaiannya , maka model ini sudah banyak ditinggalkan. c. Model Jaringan ( Network Model) : Data dinyatakan sebagai kumpulan baris (record) dan relasi dinyatakan dengan garis penghubung yang disebut pointer.Menyerupai model hierarki, hanya orang tua disebut pemilik dan anak disebut anggota.Contoh :
Pemilik
Jurusan TI
MK Basis Data
Ahmad
Ibad
MK PPM
Juli
MK PO II
Iwan
Murni
Kelemahan model jaringan : Kompleks dan sulit dalam proses query, juga dalam hal manipulasi data yang harus dilaksanakan dengan menelusuri data pointer pada setiap recordnya. Oleh karena itu model ini jarang dipakai. Kelebihan model jaringan : Efisien dalam penyimpanan data, karena tidak ada data duplikat ( redundansi), akses cepat karena langsung memanfaatkan pointer ke alamat fisik data.
3.
Physical Data Model :
Untuk menjelaskan data pada level terendah. Macam nya al : Unifying model Frame memory