Database dan Manajemennya
Basis Data dan Sistem Basis Data
Basis data adalah, basis data terdiri dari 2 (dua) kata, yaitu kata Basis dan Data. Basis bisa di artikan sebagai markas ataupun gudang, tempat berkumpul. Sedangkan data yaitu kumpulan fakta dunia nyata yang mewakili suatu objek, seperti manusia, barang, dan lain-lain yang direkam ke dalam bentuk angka, bentuk huruf, simbol, teks, bunyi, gambar atau juga kombinasinya. Jadi pengertian basis data adalah kumpulan terorganisasi dari data – data yang saling berhubungan sedemikian rupa sehingga dapat mudah disimpan, dimanipulasi, serta dipanggil oleh penggunanya.
Definisi Basis data juga dapat diartikan sebagai kumpulan data yang terdiri dari satu atau lebih tabel yang terintegrasi satu sama lain, dimana setiap user diberi wewenang untuk dapat mengakses ( seperti mengubah,menghapus dll.) data dalam tabel-tabel tersebut.
Tujuan Basis data sendiri adalah sebagai berikut ini:
-
Kecepatan serta kemudahan dalam menyimpan, memanipulasi atau juga menampilkan kembali data tersebut.
-
Efisiensinya ruang penyimpanan, karena dengan basis data, redudansi data akan bisa dihindari. Keakuratan (Accuracy) data.
-
Ketersediaan (Availability) data.
-
Kelengkapan (Completeness) data, Bisa melakukan perubahan struktur dalam basis data, baik dalam penambahan objek baru (tabel) atau dengan penambahan field-field baru pada table.
-
Keamanan (Security) data, dapat menentukan pemakai yang boleh menggunakan basis data beserta objek-objek yang ada didalamnya serta menentukan jenis -jenis operasi apa saja yang boleh dilakukannya. Kebersamaan Pemakai (Sharability), Pemakai basis data bisa lebih dari satu orang, tetapi tetap menjaga atau menghindari masalah baru seperti: inkonsistensi data (karana data yang sama diubah oleh banyak pemakai pada saat yang bersamaan) dan juga kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data tersebut.
Sedangkan,
pengertian sistem basis data adalah sistem yang terdiri dari koleksi data atau kumpulan data yang saling berhubungan dan program-program untuk mengakses data tersebut.
Komponen Utama Sistem Basis Data :
-
Perangkat Keras (Hardware) ;
-
Sistem Operasi (Operating Sistem) ;
-
Basis data (Database) ;
-
Sistem Pengelola Basis Data (Database Management Sistem atau disingkat DBMS) Yaitu pengelola basis data secara fisik tidak dilakukan oleh pemakai secara langsung, akan tetapi ditangani oleh sebuah perangkat lunak yang khusus. Perangkat Lunak inilah yang disebut DBMS (Database Management Sistem) yang akan menentukan bagaimana data diorganisasi, disimpan, diubah serta diambil kembali. Perangkat Lunak ini juga yang menerapkan mekanisme pengamanan data, pemakaian data secara bersama-sama, konsistensi data dan sebagainya. Pemakai (User). Aplikasi atau Perangkat Lunak yang lainnya.
Tujuan Utama Sistem Basis Data sendiri adalah :
-
Menunjukkan suatu lingkungan yang tepat dan efisien didalam melakukan pengambilan (retrieving) dan penyimpanan (storing) informasi basis data, serta menyediakan antarmuka yang lebih ramah kepada user dalam melihat data.
-
Kegunaan atau Fungsi Sistem Basis Data, mengatasi masalah-masalah pemrosesan data yang sering ditemui dengan menggunakan metode konvensional, permasalah yang diatasi diantaranya:
-
Redudansi data dan juga inkonsistensi data.
-
Kesuliatan dalam pengaksesan data.
-
Data Isolation.
-
Konkurensi pengaksesan.
-
Masalah keamanan.
-
Masalah Integritas.
Pemakai sistem basis data diantaranya:
Programmer Aplikasi yaitu orang atau pemakai yang berinteraksi dengan basis data melalui Data Manipulation Language (DML), User Mahir (Casual User) yaitu pemakai yang berinteraksi dengan sistem tanpa menulis modul program. Mereka menyatakan query untuk mengakses data dengan bahasa query yang telah disediakan oleh suatu DBMS. User Umum (End User/ Naïve User) yaitu Pemakai yang berinteraksi dengan sistem basis data melalui pemanggilan satu program aplikasi permanen (executable program) yang telah disediakan sebelumnya. User Khusus (Specialized User) yaitu Pemakai yang menulis aplikasi basis data non konvensional, tetapi untuk keperluan-keperluan khusus.
Basis Data dan Sistem Basis Data
Kecepatan serta kemudahan dalam menyimpan, memanipulasi atau juga menampilkan kembali data tersebut.
Efisiensinya ruang penyimpanan, karena dengan basis data, redudansi data akan bisa dihindari. Keakuratan (Accuracy) data.
Ketersediaan (Availability) data.
Kelengkapan (Completeness) data, Bisa melakukan perubahan struktur dalam basis data, baik dalam penambahan objek baru (tabel) atau dengan penambahan field-field baru pada table.
Keamanan (Security) data, dapat menentukan pemakai yang boleh menggunakan basis data beserta objek-objek yang ada didalamnya serta menentukan jenis -jenis operasi apa saja yang boleh dilakukannya. Kebersamaan Pemakai (Sharability), Pemakai basis data bisa lebih dari satu orang, tetapi tetap menjaga atau menghindari masalah baru seperti: inkonsistensi data (karana data yang sama diubah oleh banyak pemakai pada saat yang bersamaan) dan juga kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data tersebut.
Perangkat Keras (Hardware) ;
Sistem Operasi (Operating Sistem) ;
Basis data (Database) ;
Sistem Pengelola Basis Data (Database Management Sistem atau disingkat DBMS) Yaitu pengelola basis data secara fisik tidak dilakukan oleh pemakai secara langsung, akan tetapi ditangani oleh sebuah perangkat lunak yang khusus. Perangkat Lunak inilah yang disebut DBMS (Database Management Sistem) yang akan menentukan bagaimana data diorganisasi, disimpan, diubah serta diambil kembali. Perangkat Lunak ini juga yang menerapkan mekanisme pengamanan data, pemakaian data secara bersama-sama, konsistensi data dan sebagainya. Pemakai (User). Aplikasi atau Perangkat Lunak yang lainnya.
Menunjukkan suatu lingkungan yang tepat dan efisien didalam melakukan pengambilan (retrieving) dan penyimpanan (storing) informasi basis data, serta menyediakan antarmuka yang lebih ramah kepada user dalam melihat data.
Kegunaan atau Fungsi Sistem Basis Data, mengatasi masalah-masalah pemrosesan data yang sering ditemui dengan menggunakan metode konvensional, permasalah yang diatasi diantaranya:
Redudansi data dan juga inkonsistensi data.
Kesuliatan dalam pengaksesan data.
Data Isolation.
Konkurensi pengaksesan.
Masalah keamanan.
Masalah Integritas.
TRANSAKSI DAN CONCURRENCY
Transkasi merupakan perubahan yang terjadi pada basis data.
Apa tujuan dari dilakukannya pengelolaan transaksi dalam sistem basis data?
Tujuannya yakni melindungi basis data dari kerusakan dan kehilangan data.
Apabila kita mengirim suatu transaksi ke database, maka akan terjadi dua
kemungkinan yakni:
1. Seluruh transaksi selesai.
2. Tidak satu pun dari transaksi itu yang selesai.
Dalam pengelolaan transaksi
terdapat dua operasi yang sangat penting, yang pertama ialah commit maksudnya
transaksi telah selesai dan telah permanen. Yang kedua yakni rollback maksudnya
apabila proses transaksi gagal maka semua proses yang telah dilakukan
sebelumnya harus di-undo. Ketika data telah di commit maka data tersebut tidak
dapat di rollback lagi.
Ada empat elemen dalam transaksi yang biasa disingkat ACID,
yaitu : Atomicity, semua berhasil atau semua gagal Consistency,
transaksi mempertahankan konsistensi database Isolation, transaksi
terisolasi satu dengan yang lain Durability, setelah commit update
harus survive di database
Dalam transaksi terdapat empat elemen yang disingkat ACID.
- Atomicity, Jika semua operasi pada sebuah transaksi sukses maka transaksi dianggap sukses, jika salah satu operasi pada suatu transaksi gagal maka transaksi dianggap gagal.
- Consistency, transaksi menjaga konsistensi database. Isolation, meskipun ada beberapa transaksi yang berlangsung bersamaan, masing-masing transaksi tidak boleh mengetahui transaksi lain yang sedang berlangsung. Hasil transaksi sementara harus disembunyikan dari transaksi lain yang sedang berlangsung.
- Durability, setelah sebuah transaksi sukses dilakukan, perubahan-perubahan yang dibuatnya terhadap database bersifat permanen, bahkan jika terjadi kegagalan sistem. Dalam transaksi juga dikenal istilah checkpoint.
- Checkpoint adalah interval tertentu pada perjalanan transaksi basis data yang menyimpan keadaan basis data saat itu. Checkpoint dapat dilakukan untuk me-recovery database secara backward (undo) ataupun forward (redo). Dalam transaksi juga dikenal istilah isolation level. Isolation sendiri merupakan
Dalam transaksi ada tiga hal yang
harus dapat berjalan:
1.Dirty Read, yakni dapat melihat atau membaca data dari
transaksi lain yang telah dirollback atau belum di commit. Kedua transaksi
tersebut berjalan bersamaan.
2. Nonrepeatable Read, yakni membaca atau melihat ulang data
yang sebelumnya telah dibaca karena data tersebut telah dimodifikasi oleh
transaksi yang lain.
3. Phantom Read, yakni transaksi membaca sebuah data yang telah
hilang akibat dari transaksi yang lainnya.
Untuk mencegah hal – hal
tersebut, Oracle menyediakan fitur-fitur sebagai berikut: Read Commited. Yakni
transaksi hanya dapat melihat perubahan data setelah transaksi lain telah
commit pada data tersebut. Serializable. Untuk mencegah terjadinya
phantom read. Serializable ini menjadikan transaksi dieksekusi satu setelah
yang lainnya, seperti secara serial, bukan secara bersamaan (pararel). Untuk
mengaplikasikan level isolasi SERIALIZABLE, adalah dengan menggunakan perintah:
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
Concurrency adalah sebuah mekanisme pada system basis data
yang mengijinkan banyak transaksi pada saat bersamaan untuk mengakses data yang
sama tanpa adanya gangguan.
Pada umumnya terdapat 3 masalah utama pada concurrency
:
- Lost update problem, ketika dua user mengupdate dua buah data yang sama Uncommited dependency problem, ketika user yang satu meretrieve datadan user yang lain merollback data tersebut
- Inconsistent analysis problem, ketika user yang satu meretrieve data dan user yang lain mengupdate data tersebut
Solusi Penanganan masalah tersebut dengan proses locking, jika sebuah transaksi ingin record/resource tidak berubah dalam
waktu tertentu maka dia meminta lock.
Ada dua jenis lock yaitu :
- Exclusive Lock (Xlock) -> write lock (read and write) ·
- Shared Lock (Slock) -> read lock
Jadi cara kerjanya :
Jika transaksi A memegang Xlock pada sebuah record, maka
permintaan lock (X,S) pada record yang sama harus diabaikan. Jika transaksi
A memegang Slock pada record R maka :
a) Permintaan Xlock transaksi lain
pada R ditolak
b) Permintaan Slock transaksi lain
pada R diterima
Tapi, ada satu masalah yang dapat terjadi ketika melakukan
proses locking ini, yaitu deadlock. Yaitu, situasi dimana dua atau lebih
transaksi dalam kondisi waitstate, satu sama lain menunggu lock dilepaskan
sebelum dapat memulai.
Cara penanganannya adalah :
· Deteksi dan pecahkan
deadlock
· Deteksi deadlock ->
wait-for-graph
· Pecahkan deadlock
-> salah satu dirollback paksa
· Ostrich
Algorithm -> diabaikan
REFERENSI
http://simbuda.blogspot.co.id/2013/05/integritas-data.html http://choirulhuda.blogspot.co.id/2008/11/mengenal-concurrency-control-pada.html
Integritas Data Dalam Basis Data
OCPengertian
integritas data secara luas mengacu pada kepercayaan dari sumber daya suatu
sistem. Integritas data sangat penting karena dapat memastikan keakuratan,
konsistensi, aksesibilitasi, dan kualitas tinggi dari sebuah data, sehingga
sangat penting untuk mengikuti aturan pengintegritasan suatu data. Data yang
mempunyai integritas identik di pertahankan selama operasi apapun (seperti bisnis
transfer, penyimpanan, atau pengambilan). Secara sederhana dalam istilah
bisnis, integritas data adalah jaminan bahwa data konsisten, bersertifikat dan
dapat dirujukan.
Contoh :
Dari mekanisme integritas
data adalah hunbungan orang tua dan anak dengan record terkait. Jika dalam
catatan orangtua memiliki satu atau lebih dari catatan anak terkait semua
proses integritas referensial akan ditangani oleh database itu sendiri, yang
secara otomatis menjamin keakuratan dan integritas data sehingga tidak ada catatan
anak bisa ada tanpa orang tua (atau disebut juga yatim piatu) dan bahwa tidak
ada orangtua kehilangan catatan anak mereka. Ini juga menjamin bahwa tidak ada
catatan induk dapat dihapus sementara orangtua memiliki record setiap anak.
Semua ini ditangani pada tingkat database dan tidak memerlukan coding cek
integritas ke dalam setiap aplikasi.
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
INTEGRITAS ENTITAS
Integritas entitas
mendifinisikan sebuah baris sebagai sebuah entitas yang unik untuk suatu tabel.
Dalam integritas entitas, tidak ada baris yang di duplikat didalam suatu tabel.
Contoh :
create table Pembelian
(ID
Pembelian smallint,
ID model smallint,
DeskripsiModel varchar
(40),
Primary Key (IDPembelian));
INEGRITAS DOMAIN
Domain adalah nilai-nilai
yang dimungkinkan diasosiasikan dengan setiap atribut, Integritas domain
merupakan validasi masukan dari sebuah kolom. Dengan integritas domain, tidak
ada data yang melanggar jangkauan nilai di tiap kolom data.
Jenis domain yang harus
dimiliki oleh setiap atribut :
1. Karakter bebas
2. Alphanumerik
3. Alphabet
4. Numerik
Pemeliharaan integritas
domain :
1. Pendifinisian skema
2. Pemanfaatan properti
field
3. Penerapan proses
validasi pada pemasukan data
Contoh :
Create table biografi
(idpenulis smallint unsigned not null,
tahunLahir year
not null,
kotalahir varchar
(40) not null default
‘Kosong’);
create domain nilai numerik(3,2)
constraint value-test check (value >=0.00)
INTEGRITAS REFERENSIAL
Integritas referensial
adalah dasar relasi antar tabel yaitu antara foregin key dengan promary key.
Integritas referensial memastikan bahwa seluruh nilai dari foregin key cocok
dengan nilai primary key yang dihubungkanya.
Contoh :
create table account
(account-number char (10),
branch-name char
(15),
balance integer,
primary key (account-number),
foreign key (branch-name) reference branch)
create table depositor
(costumer-name char (20),
account-number char
(10),
primary key (costumer-name, account-number)
foreign key (account-number) reference account
foreign key (costumer-name) reference costumer)
on delete cascade on update cascade
INTEGRITAS ENTERPRISE
Integritas enterprise
mengizinkan kita untuk menentukan spesifik business rules sendiri yang tidak
sama pada kategori integritas yang lainnya.
Back-End Programming, XML dan Keamanan Data
Back-End Programming
Back-End programming adalah program yang berjalan pada database secara otomatis ketika terjadi suatu pemicu tertentu. Dalam oracle ada beberapa metode untuk melakukan back-end programming, yaitu dengan trigger dan stored procedure.
Trigger
Trigger
adalah blok PL/SQL yang disimpan dalam database dan akan diaktivasi ketika kita
melakukan statement-statement SQL (DELETE, UPDATE, dan INSERT) pada sebuah
tabel. Aktivasi trigger didasarkan pada event yang terjadi di dalam tabel
tersebut sehingga trigger dapat membantu dalam menjaga integritas dan
konsistensi data. Implementasi trigger yang sering ditemui dalam dunia nyata
adalah untuk mengeset dan mengubah nilai kolom dalam suatu tabel sehingga
validasi nilai dari tabel tersebut akan terjaga. Adanya trigger dalam database
akan meringankan kita dalam pembuatan aplikasi karena di dalam aplikasi yang
kita buat, kita tidak perlu lagi untuk melakukan validasi data.
Berikut adalah daftar yang mungkin untuk aktivasi trigger :
Event
|
Keterangan
|
Before Insert
|
Diaktifkan sekali sebelum statement insert
|
After Insert
|
Diaktifkan sekali setelah statement insert
|
Before Update
|
Diaktifkan sekali sebelum statement update
|
After Update
|
Diaktifkan sekali setelah statement update
|
Before Delete
|
Diaktifkan sekali sebelum statement delete
|
After Delete
|
Diaktifkan sekali setelah statement delete
|
Model-model yang digunakan untuk menspesifikasi aturan basis data aktif adalah model ECA (Event-Condition-Action). Aturan dalam model ECA memiliki tiga komponen yaitu:
- Event, yang memicu suatu rule tersebut biasanya berupa operasi perubahan basis data yang secara eksplisit ditambahkan ke basis data. Namun pada umumnya, bisa berupa event temporal atau jenis event eksternal yang lain.
- Condition, menentukan apakah suatu rule dijalankan atau tidak. Ketika suatu trigger dijalankan, maka bagian condition (bersifat optional) akan dievaluasi jika didefinisikan oleh yang membuat trigger. Jika evaluasi bagian condition bernilai TRUE maka aksi suatu rule dijalankan.
- Action, biasanya berupa statement sql.
Manfaat trigger antara lain adalah :
- Membuat integrity constraint yang kompleks.
- Mencatat aktivitas suatu tabel (logging).
- Sinkronisasi
Contoh Kasus :
Pada
database supermarket, jika ada pembelian baru maka otomatis stok barang pada
tabel barang akan berkurang sesuai dengan jumlah barang yang dibeli. Maka
sintaks lengkapnya dalam pl / sql adalah sebagai berikut :
create table barang(
nama varchar2(50),kode_barang varchar2(10) primary key, stok_barang number ); create table pembelian( id_pembelian number primary key, kode_barang varchar2(10), constraint fk_kd_brg foreign_key (kode_barang) references barang(kode_barang) jumlah_beli number, harga number ); create or replace trigger trg_stok_brg after insert on jumlah_beli for each row begin update barang set stok_barang =stok_barang – :new.jumlah_beli where id_pembelian = :new.id_pembelian; end; / |
Stored Procedure
Subprogram
adalah PL/SQL Blok yang dipanggil dengan sekumpulan parameter. PL/SQL memiliki
dua jenis subprogram yaitu: procedure dan function. Dimana secara umum
procedure digunakan untuk melaksanakan aksi dan function digunakan
untuk komputasi suatu nilai.
Stored
procedure adalah subprogram yang disimpan di dalam database berupa SQL + Bahasa
prosedural. Ada beberapa kelebihan yang dapat diperoleh dengan menggunakan
stored procedure, meliputi :
- Dijalankan di database server -> performance lebih baik, network trafik lebih rendah.
- Tools DBA -> praktis, selalu tersedia di database server.
- Dapat digunakan oleh banyak aplikasi
- Standarisasi business logic.
- SP dapat dipanggil oleh aplikasi luar
- Dapat memanfaatkan tipe, fungsi yang disediakan DBMS
- Powerfull, tools sangat penting bagi DB designer, DB programmer dan DBA
- Hampir semua RDBMS mensupport.
- Walaupun syntax berbeda, umumnya menggunakan prinsip yang sama
XML (Extensible Markup Language)
XML
adalah markup language sepertinya halnya HTML untuk dokumen yang mengandung
informasi terstuktur dan ditujukan untuk pertukaran dokumen via web. XML
berberntuk file teks yang cross platform, independen terhadap software dan
hardware. Berikut adalah spesifikasi XML :
- Tag: <nama> budi </nama>
- Tag didefinisikan sendiri.
- Tag dapat mempunyai atribut,
- contoh : <daftar_mahasiswa jumlah = “40”> … </daftar_mahasiswa>
- Struktur -> hirarki (tag dalam tag),
- contoh: <mahasiswa><nama> susis </nama></mahasiswa>
Keuntungan XML :
- Self Documenting -> dengan melihat tag, dapat diketahui isi dokumen.
- Dapat dibaca software dan manusia.
- Fleksibel
- Dapat dikembangkan tanpa melanggar format lama.
- Contoh: pada <pengarang>, tambah tag <telepon>, maka XML yang lama tetap dapat dibaca.
- Hirarkis -> dapat merepresentasikan data kompleks
- Independen terhadap bahasa pemrograman dan sistem operasi
Kerugian XML :
- Pengulangan tag -> tidak efisien, ukuran file membengkak
Beberapa aturan XML :
- Setiap tag harus ada penutupnya.
- Penamaan Tag
- case sensitive. <nama> tidak sama dengan <Nama>.
- Tidak diawali dengan angka
- Tidak mengandung spasi
- Hindari ‘-’ dan ‘.’
- Urutan hirarki harus benar.
- Contoh yang salah: <mahasiswa> <nama> susis </mahasiswa></nama>
- Setiap XML harus mengandung root (akar)
<root>
<child>
<subchild>…..</subchild>
</child>
</root>
- Setiap atribut harus dalam tanda petik. Contoh:
- <surat tanggal = “12/12/2007”>
- <catatan oleh = “ Jum’at ” >
- Komentar dalam XML:
- <!—baris komentar –!>
Untuk membaca XML diperlukan proses parser. Parser XML dapat dilakukan dengan dua cara, yaitu :
- Tree based, isi XML dipindahkan ke memori terlebih dulu -> DOM (Document Object Model).
- Event based -> tidak dipindahkan ke memori. Fungsi callback dipanggil setiap menemui element. -> SAX (Simple API XML)
Keamanan Data
Sistem
database dapat didefinisikan sebagai komputerisasi sistem penyimpanan data yang
tujuannya untuk memelihara informasi serta agar informasi tersedia pada saat
dibutuhkan. Dalam sistem database itu perlu dijaga keamanan datanya karena data
yang diakses oleh pihak yang tidak berwenang akan merugikan pemilik database
tersebut baik database miliki perusahaan, kelompok tertentu atau bahkan
perorangan.
- Fisikal, lokasi-lokasi dimana terdapat sistem komputer haruslah aman secara fisik terhadap kerusakan.
- Manusia, dijaga dari pihak yang tidak berwenang untuk menghindari manipulasi data olehnya.
- Sistem Operasi, kelemahan ini memungkinkan pengaksesan data oleh pihak tak berwenang, karena hampir seluruh jaringan sistem database menggunakan akses jarak jauh.
- Pengaturan hak akses sistem basis data yang baik.
Berikut adalah poin-poin penting yang harus diperhatikan dalam keamanan data :
1. Otorisasi, meliputi :
- Pemberian Wewenang atau hak istimewa (priviledge) untuk mengakses sistem atau obyek database
- Kendali otorisasi (=kontrol akses) dapat dibangun pada perangkat lunak dengan 2 fungsi :
- Mengendalikan sistem atau obyek yang dapat diakses
- Mengendalikan bagaimana pengguna menggunakannya
- Sistem administrasi yang bertanggungjawab untuk memberikan hak akses dengan membuat account pengguna.
2. Tabel View
Merupakan
metode pembatasan bagi pengguna untuk mendapatkan model database yang sesuai
dengan kebutuhan perorangan. Metode ini dapat menyembunyikan data yang tidak
digunakan atau tidak perlu dilihat oleh pengguna. Contoh pada Database
relasional, untuk pengamanan dilakukan beberapa level :
- Level Relasi : pengguna diperbolehkan atau tidak diperbolehkan mengakses langsung suatu relasi.
- Level View : pengguna diperbolehkan atau tidak diperbolehkan mengakses data yang terapat pada view.
- Read Authorization : pengguna diperbolehkan membaca data, tetapi tidak dapat memodifikasi.
- Insert Authorization : pengguna diperbolehkan menambah data baru, tetapi tidak dapat memodifikasi data yang sudah ada.
- Update Authorization : pengguna diperbolehkan memodifikasi data, tetapi tidak dapat menghapus data.
- Delete Authorization : pengguna diperbolehkan menghapus data.
3. Backup data dan Recovery, tindakan ini diperlukan untuk mencegah kehilangan data dari hal-hal yang tidak terduga.
- Backup : proses secara periodik untuk membuat duplikat dari database dan melakukan logging file media penyimpanan eksternal.
- Jurnaling : proses menyimpan dan mengatur log file dari semua perubahan yang dibuat di database untuk proses recovery yang efektif jika terjadi kesalahan.
- Isi Jurnal :
- Record transaksi :
- Identifikasi dari record
- Tipe record jurnal (transaksi start, insert, update, delete, abort, commit)
- Item data sebelum perubahan (operasi update dan delete)
- Item data setelah perubahan (operasi insert dan update)
- Informasi manajemen jurnal (misal : pointer sebelum dan record jurnal selanjutnya untuk semua transaksi)
- Record checkpoint :
- Suatu informasi pada jurnal untuk memulihkan database dari kegagalan, kalau sekedar redo, akan sulit penyimpanan sejauh mana jurnal untuk mencarinya kembali, maka untuk membatasi pencarian menggunakan teknik ini. Recovery : merupakan upaya untuk mengembalikan basis data ke keadaaan yang dianggap benar setelah terjadinya suatu kegagalan.
4. Kesatuan data dan Enkripsi :
- Enkripsi : Mengkodekan informasi pada data dengan sandi khusus yang hanya dapat dibuka oleh pihak yang berwenang / memegang kuncinya
- Integritas : Metode pemeriksaan dan validasi data (metode integrity constrain), yaitu berisi aturan-aturan atau batasan-batasan untuk tujuan terlaksananya integritas data.
- Konkuren : mekanisme untuk menjamin bahwa transaksi yang konkuren pada database multi user tidak saling menganggu operasinya masing-masing. Adanya penjadwalan proses yang akurat (time stamping).
2012. Pratama. gogopratamax.blogspot.com
cs.upi.edu
elearning.cs.upi.edu
https://simbuda.wordpress.com/2013/05/19/back-end-programming-xml-dan-keamana