Sistem menurut KKBI adalah susunan yang teratur dari pandangan, teori, asas, dan
sebagainya. Basis Data adalah suatu kumpulan data terhubung yang
disimpan secara bersama-sama pada suatu media, yang diorganisasikan berdasarkan
sebuah skema atau struktur tertentu, dan dengan software untuk melakukan
manipulasi untuk kegunaan tertentu. Sistem Basis Data adalah
suatu sistem menyusun dan mengelola record-record menggunakan computer untuk
menyimpan atau merekam serta memelihara data operasional lengkap sebuah
organisasi/perusahaan sehingga mampu menyediakan informasi yang optimal yang
diperlukan pemakai untuk proses mengambil keputusan.
a. Perangkat keras
b. Sistem operasi
c. Basis data
d. Sistem pengelola
basis data (DBMS)
e. User
Tipe file yang digunakan dalam
sistem basis data :
A. File Induk (master file)
Ada 2 file induk :
- File induk acuan (reference master file). Recordnya relatif statis, jarang berubah nilainya. Contoh : file daftar gaji, matakuliah.
- File induk dinamik (dynamic master file). Nilai dari recordnya sering berubah atau diupdate sebagai hasil suatu transaksi. Contoh : file stok barang
B. File Transaksi
Disebut juga file input.
Digunakan untuk merekam data hasil transaksi. Contoh file penjualan barang
C. File Laporan (report file)
Disebut juga file
output. Berisi informasi sementara yang akan ditampilkan sebagai laporan
D. File Sejarah (history file)
Disebut juga file arsip
(archieval file). Merupakan file yang berisi data masatapi masih disimpan
sebagai arsip
E. File Pelindung (backup file)
Merupakan salinan dari
file-file yang masih aktf di dalam basis data pada saat tertentu. Digunakan
sebagai cadangan apabila mengalami kerusakan atau hilang.
Bahasa basis data merupakan perantara bagi pemakai dengan basis
data dalam berinteraksi, yang telah ditetapkan oleh pembuat DBMS. Dapat
dibedakan menjadi 2, yaitu :
1. Data Definition Language (DDL)
Dengan bahasa ini kita
dapat membuat tabel baru, membuat indeks, mengubah tabel, menentukan struktur
tabel, dll. Hasil dari kompilasi perintah DDL menjadi Kamus Data, yaitu data
yang menjelaskan data sesungguhnya. Contoh : Create, Modify report, Modify
2.
Data Manipulation Language (DML)
Berguna untuk melakukan
manipulasi dan pengambilan data pada suatu bsis data, yang berupa insert,
update, delete, dll.
Ada 2 jenis, dan,yaitu
prosedural (ditentukan data yang diinginkan dan cara mendapatkannya) dan
non-prosedural (tanpa menyebutkan cara mendapatkannya). Contoh : dbase 3+,
foxbase, SQL, QBE
Integritas Data
Akurasi dan Kebenaran data. Informasi yang disimpan pada basis
data hanya akan bagus jika DBMS turut membantu mencegah adanya informasi yang
salah yang masuk ke basis data. Batasan Integritas Data adalah syarat yang
dispesifiksikan pada basis data untuk membatasi data yang dapat disimpan di
dalam basis data. Jika basis data memenuhi semua batasan integritas yang
dispesifikasikan pada skema basis datanya, maka basis data tersebut sudah bisa.
Data akan tetap terjaga, tetap akurat, konsisten, dan handal.
Integritas Data dapat Di kelompokan menjadi 2
bagian :
1. Integritas data yang berada dalam relasi,
yaitu integritas entitas dan integritas domain.
2. Integritas yang berada di luar relasi, yaitu
integritas referensial
Selain itu ada juga integritas yang ditentukan
sendiri di dalam suatu perusahaan, yaitu integritas perusahaan (Enterprise
integrity/ user Defined Integrity).
Secara garis besar integritas data dalam model
relasional meliputi :
1. Integritas Entitas
2. Integritas Domain
3. Integritas Referensial
4. Integritas Enterprise
Berarti
suatu aksi atau perbuatan yang dilakukan oleh program bertujuan untuk mengakses
atau mengubah data yang terdapat di database. Transaksi ini hanya mengenal dua
hasil yaitu berhasil keseluruhan atau gagal keseluruhan.
Transaksi mempunyai 4
elemen, diantaranya adalah :
·
Atomicity : Ini berarti
bahwa transaksi haruslah berhasil secara keseluruhan, atau gagal sama sekali.
·
Consistency : Menjaga
konsistensi data di database
·
Isolation : Transaksi
yang dilakukan secara bersamaan haruslah bisa dimulai dan bisa berakhir.
·
Durability : Setelah
transaksi berakhir, data yang berubah tidak boleh kembali ke data awal walaupun
sistem mati.
Status-status yang dapat
dicapai oleh sebuah transaksi sejak mulai dilaksanakan hingga selesai atau
batal adalah:
1.Aktif yang merupakan
status awal (initial state) sebuah transaksi yang menunjukkan transaksi
tersebut masih dieksekusi.
2.Berhasil Sebagian
(Partially Committed) yaitu keadaan yang dicapai transaksi tepat pada saat
operasi terakhir dalam transaksi selesai dikerjakan.
3.Gagal yang merupakan
keadaan dimana sebuah transaksi terhenti pengeksekusiannya sebelum tuntas sama
sekali.
4.Batal yaitu keadaan
dimana sebuah transaksi dianggap tidak/belum dikerjakan yang tentu dengan
terlebih dahulu diawali dengan mengembalikan semua data yang telah diubah ke
nilai-nilai semula. (yang menjadi tanggung jawab DBMS).
5. Committed adalah keadaan
dimana transaksi telah dinyatakan berhasil dikerjakan seluruhnya dan basis data
telah merefleksikan perubahan-perubahan yang memang diinginkan transaksi.
Concurrency
DBMS
menginzinkan banyak transaksi dalam waktu yang bersamaan untuk mengakses suatu
data yang sama. Concurrency ini dibutuhkan agara data tidak saling menggangu. 3
masalah concurrency, antara lain :
1.
Lost Update
2.
Uncommitted dependency
problem
3.
Incosistent analysis
problem
4.
Looking Protocol
Looking
adalah Jika sebuah transaksi ingin record/resource tidak berubah dalam waktu
tertentu maka dia meminta lock. Ada dua macam lock, anatra lain :
EXCLUSIVE LOCK (X-LOCK)
-> transaksi tersebut dapat melakukan perubahan dan pembacaan terhadap data
tersebut. Jika transaksi A memegang Xlock pada sebuah record, maka permintaan
lock (X,S) pada record yang sama harus diabaikan. Transaksi yang ingin
mengupdate harus mempunyai X-Lock.
SHARED LOCK (S-LOCK)
-> transaksi tersebut hanya bisa melakukan pembacaan. Jika transaksi A
memegang Slock pada record R maka: Permintaan Xlock transaksi lain pada R
ditolak sedangkan Permintaan Slock transaksi lain pada R diterima.
X-Lock dan S-Lock
dipegang sampai transaksi selesain(Commit dan Rollback).
·
Deadlook
Deadlok adalah Situasi
dimana dua atau lebih transaksi dalam kondisi wait-state, satu sama lain
menunggu lock dilepaskan sebelum dapat memulai. Salah satu pecahkan deadlokk
adalah salah satu harus dipaksa rollback.
Level Isolasi Transaksi
Isolasi Transaksi
merupakan tingkatan pengaruh antar transaksi yang dipengaruhi karena kinerja RDMS.
Didalam transaksi terdapat 3 hal yang harus dicegah, antara lain adalah :
1.
Dirty Read ->
Transaksi membaca data dari hasil transaksi lainnya yang gagal. Kedua transaksi
tersebut berjalan bersamaan.
2.
Nonrepeatable Read ->
Transaksi membaca ulang data yang telah di baca sebelumnya karena data tersebut
telah dimodifikasi oleh transaksi lainnya.
3.
Phantom Read ->
Transaksi membaca sebuah data yang telah hilang akibat dari transaksi yang
lainnya.
4.
Untuk mencegah
terjadinya 3 hal yang diatas, maka pada Oracle terdapat 2 level isolasi yang
dapat diimplementasika, antara lain :
5.
Read Commit ->
Transaksi hanya dapat melihat perubahan data setelah transaksi lain telah
commit pada data tersebut.
6.
Serializable -> evel
isolasi yang menyediakan isolasi transaksi yang paling ketat. Level ini
mengemulasikan eksekusi transaksi secara serial, menjadikan transaksi
dieksekusi satu setelah yang lainnya,seperti secara serial, bukan secara
bersamaan (pararel).
Back end programming
Back-end
Programming dalam Sistem basis data merupakan salah satu cara dalam menjala
integritas data dalam sebuah basisdata dimana ini adalah sebuah program yang
berjalan di belakang sebuah transaksi. Back-end Programing dalam hal di sini
dalah pemongraman dalam oracle yaituAnonymous PL/SQL, Procedure, dan Triger. Beberapa
jenis fungsi-fungsi yang sering dipakai dalam back-end programming antara lain:
1. Stored Procedure : Stored Procedure adalah
sekumpulan perintah SQL yang disusun dalam sebuah prosedur yang memiliki nama
dan fungsi tertentu.
2. Function : Function sedikit berbeda dengan
Stored Procedure, disini ada nilai yang dikembalikan.
3. Trigger : Secara keseluruhan trigger hampir sama
dengan Procedure dan Function, hanya saja untuk Trigger dioperasikan secara
otomatis ketika terdapat aktivitas statement-statement SQL seperti Insert,
Update dan Delete. Trigger ini bisa diaktivasi sebelum atau pun sesudah
terjadinya satatement-statement tersebut.
XML
XML
(Extensible Markup Language) merupakan adalah bahasa markup serba guna yang
direkomendasikan oleh W3C (World Wide Web Consortium) untuk mendeskripsikan
berbagai macam data. XML menggunakan markup tags seperti halnya HTML (Hypertext
Markup Language) namun penggunaannya tidak terbatas pada tampilan halaman web
saja.
Bahasa
XML dapat menjawab interoperability dari HTML memiliki platform independen,
language independen. Bahasa XML merupakan bahasa yang aman untuk saling
berkomunikasi karena data dan library langsung dikirim pada satu penerima
sehingga orang lain tidak tahu isi informasi tersebut.
Beberapa keuntungan yang
didapat dari file XML, diantaranya:
1. Ekstensibilitas, dapat ditukar atau digabung
dengan dokumen XML lain.
2. Memungkinkan pemrograman yang lebih baik maka
dibuat suatu softwarepengolah XML.
3. Memisahkan data dan presentasi. Yang akan
direpresentasikan dalam XML dan XSLT (Extensible Stylesheet Language
Transformations).
4. Pencarian data yang cepat karena XML merupakan
data dalam format yang terstruktur.
5. Untuk
pertukaran data.
6. Dokumen XML dapat digunakan untuk berbagai macam
tujuan, seperti: sebagai penyimpan data (database) yang mudah dibaca oleh
pengguna karena disimpan dalam bentuk teks.
7. Standar transfer data, dapat digunakan untuk
pengiriman data transaksi antar perusahaan atau mengirim data dari DBMS
(Database Management System) yang berbeda (misalnya dari Oracle ke SQL Server).
8. Sebagai acuan membuat bahasa baru, seperti WML
(Wireless Markup Language) yang digunakan pada telepon seluler dengan protokol
WAP (Wireless Application Protocol) atau VoiceXML yang digunakan sebagai bahasa
markupuntuk pengenalan suara, dialog, aplikasi interaksi respon suara maupun
DTMF (Dual-Tone Multi-Frequency Signaling) seperti aplikasi pengisian pulsa atau
call center dan sebagainya.
9. Sebagai file konfigurasi, di Java dokumen-dokumen XML sering
kita jumpai seperti file server.xml dan web.xml yang digunakan Tomcat atau
perintah-perintah query yang disimpan dalam file XML yang dipakai pada
frameworkiBatis atau Hibernate.
Aturan dalam penggunaan XML yaitu :
1. Penamaan tag Case sensitive
2. Tag tidak boleh menggunakan angka
3. Tag tidak boleh menggunakan spasi,-,.
Referensi:
·
Perkuliahan Sistem Basis
Data Budi Laksono Putro budi.staf.upi.edu