Rabu, 10 Juni 2015

Sistem Basis Data2



DATABASE CONTROL

1.Pengertian Transaksi

Transaksi adalah satu atau beberapa aksi program aplikasi yang
mengakses/mengubah isi basis data

2.Security Database
Adalah proteksi terhadap perusakan data oleh pemakai yang tidak berwenang (kerusakan yang disengaja)
§  Authorization
Pemberian hak akses yang mengizinkan sebuah subyek mempunyai akses
secara legal terhadap sebuah sistem atau obyek.
§  Views (Subschemas)
Hasil yang dinamik dari satu atau lebih operasi relasi yang beroperasi pada relasi
dasar untuk menghasilkan relasi lainnya. View merupakan virtual relation yang
tidak secara nyata ada di dalam sebuah database, tetapi dihasilkan atas
permintaan user secara khusus.
§  Backing Up
Proses yang secara periodik menyalin database dan menjurnal (dan
memprogram) ke dalam media penyimpanan offline
§  Journaling
Proses penyimpanan dan pemeliharaan sebuah jurnal atau log seluruh
perubahan terhadap database agar dapat merecover secara efektif jika terjadi
kegagalan.
§  Checkpointing
Titik temu sinkronisasi antara database dan transaksi log file. Seluruh data yang
disimpan di tempat sementara akan disimpan di media penyimpanan kedua.
§  Encryption
Penyandian (encoding) data dengan menggunakan algoritma khusus yang
merubah data menjadi tidak dapat dibaca oleh program apapun tanpa
mendeskripsikannya.


3. Concurrency
Concurrency : banyak transaksi yang dijalankan secara bersamaan.

Masalah umum yang terjadi pada sistem yang konkuren:
1. Masalah kehilangan modifikasi
2. Masalah kehilangan modifikasi sementara
3. Masalah analisa yang tidak konsisten

4. Recovery
Recovery Facilities
Sebuah DBMS sebaiknya menyediakan fasilitas-fasilitas berikut ini untuk
membantu recovery :
Backup mechanism
Melakukan backup secara periodik terhadap database yang ada
Logging facilities
Mencatat transaksi-transaksi dan perubahan-perubahan yang terjadi terhadap
Pengontrolan Berbasis Komputer 16/18
database. DBMS memelihara file khusus yang disebut Log (Journal) yang
menyediakan informasi mengenai seluruh perubahan yang terjadi pada
database.
Checkpoint facility
Mengizinkan update terhadap database yang akan menjadi database yang
Permanent
Recovery manager
Mengizinkan sistem untuk restore database ke keadaan sebelum terjadi
Kerusakkan

Recovery Techniques
Prosedur recovery yang digunakan tergantung dari kerusakkan yang terjadi pada
database.

Recovery dari Deadlock
Cara umum yang digunakan adalah dengan proses rollback transaksi untuk
lepas dari deadlock.


Tiga langkah yang harus dilakukan:
a. Selecting Victim / pemilihan korban
Kita memilih transaksi mana saja yang akan di rollback, dan me-rollback
transaksi yang memiliki minimum cost.
Faktor yang menentukan cost:
§         berapa lama transaksi telah dilaksanakan dan berapa lama lagi transaksi selesai.
§         berapa banyak item data yang digunakan
§        berapa banyak item data lagi yang digunakan sampai selesai.
§         berapa banyak transaksi yang akan ikut di rollback.

b. Rollback
Setelah menentukan transaksi mana yang di rollback, kita tentukan sejauh
mana rollback dilakukan. Cara yang paling sederhana adalah total
rollback kemudian restart. Namun lebih efektif me-rollback transaksi
sejauh deadlock dapat dihilangkan.

c. Starvation
Dalam selecting victim, bisa saja terjadi sebuah transaksi selalu dipilih
sebagai korban. Akibatnya transaksi tersebut tidak pernah bisa selesai.
Situasi ini disebut Starvation.
Untuk menghindarinya, sebuah transaksi boleh dipilih sebagai victim
hanya beberapa kali saja, atau dalam jangka waktu terbatas. Caranya,
dengan melibatkan jumlah rollback yang dialami sebuah transaksi sebagai
suatu biaya/cost.


5. Concurrency control
Arti dari Concurrency control merupakan proses pengaturan operasi yang simultan pada database tanpa menyebabkan saling mempengaruhi antara satu dengan yang lain. Tujuannya adalah agar DBMS mengijinkan transaksi data pada saat yang bersamaan untuk mengakses data yang sama. Dan agar transaksi data tidak terganggu maka dibutuhkan Concurrency Control Mechanism.
Namun perlu kita ketahui bahwa pada Concurrency juga memiliki masalah-masalah, 3 masalahnya adalah :
1.     Lost Update Problem
2.     Uncommitted dependency problem
3.     Incosistent analysis problem

Kemudian pada Concurrency juga ada fungsi Locking, fungsi dari Locking ini sendiri adalah mengunci sebuah transaksi agar transaksi tersebut rekord nya tidak berubah dalam waktu tertentu. Jenis-jenis locking ada 2 yaitu :
1.     Exclusive Lock (Xlock) à write lock
2.     Shared Lock (Slock) à read lock

Kemudian juga ada yang disebut Deadlock, atau Situasi dimana dua atau lebih transaksi dalam kondisi wait-state, satu sama lain menunggu lock dilepaskan sebelum dapat memulai. Untuk penganannya ada beberapa cara, yaitu :
§  Deteksi dan pecahkan deadlock
§  Deteksi deadlock (wait-for-graph)
§  Pecahkan deadlock (salah satu dirollback paksa )
§  Ostrich Algorithm  (mengabaikan kondisi deadlock)

Database Terdistribusi

1.       Pengertian Database Terdistribusi
Database terdistribusi Yaitu kumpulan data yang digunakan bersama yang saling terhubung secara logic tetapi tersebar secara fisik pada suatu jaringan computer. 

2.       Transaksi Lokal & Global
Sebuah sistem database terdistribusi berisikan sekumpulan site, di mana tiap-tiap site dapat berpartisipasi dalam pengeksekusian transaksi-transaksi yang mengakses data pada satu site atau beberapa site. Tiap-tiap site dapat memproses transaksi lokal yaitu sebuah transaksi yang mengakses data pada satu site di mana transaksi telah ditentukan. Sebuah site juga dapat mengambil bagian dalam mengeksekusi transaksi global yaitu transaksi yang mengakses data pada site yang berbeda di mana transaksi telah ditentukan, atau transaksi yang mengakses data pada beberapa site yang berbeda.

3. Keuntungan & Kerugian Database Terdistribusi
Ø  Kelebihan
  • Kinerja yang lebih baik karena data ditempatkan di tempat yang sesuai dengan kebutuhan dan komputer-komputer dalam sistem dapat bekerja secara paralel, sehingga pembebanan pada komputer (server) menjadi seimbang.
  • Alasan ekonomis, yaitu bahwa merancang sistem yang terdiri atas jaringan komputer-komputer kecil (sederhana) dibandingkan dengan mengimplementasikan komputer tunggal yang canggih.
  • Alasan modularitas, yaitu bahwa sistem-sistem yang bekerja dalam basis data terdistribusi dapat dimodifikasi, ditambah, atau dikurangi tanpa memengaruhi modul lain (sistem lain dalam basis data terdistribusi). Dengan pembagian lokasi data, jika terjadi masalah atau musibah pada sistem, tidak semua data terancam, melainkan hanya data pada tempat-tempat tertentu.
  • Alasan organisasi dan otonomi pada sistem-sistem yang berpartisipasi, misalnya pada suatu kantor perusahaan, terdapat beberapa departemen. Dengan basis data terdistribusi, data-data perusahaan dapat disebar ke tiap-tiap departemen yang bertanggung jawab atasnya.
Ø  Kekurangan
  • Masalah kompleksitas, yaitu bukan pekerjaan yang mudah untuk membuat basis data yang tersebar terlihat sebagai satu kesatuan. Administrator basis data mempunyai tugas ekstra untuk menjaga agar basis data yang tersebar di berbagai lokasi terlihat transparan. Tingginya kompleksitas juga dapat menyebabkan pembengkakan biaya.
  • Masalah desain, yaitu bahwa desain yang dibuat harus memperhatikan arsitektur komputer yang terdiri atas sistem-sistem yang terpisah, selain itu juga memperhatikan data yang difragmentasi (dipecah-pecah) ke dalam lokasi berlainan.
  • Keamanan data, yaitu bukan hanya satu sistem yang harus diberi proteksi keamanan data, melainkan juga fragmen-fragmennya yang tersebar di berbagai lokasi, juga jalur komunikasi antarsistem.
  • Kendala mempertahankan integritas karena dalam menjaga integritas sistem melalui jaringan juga dapat memakan resource yang besar dari jaringan.

4.Macam-Macam Topologi dalam distribusi Database 

Fully Connected network :
Keuntungan : kalau salah satu node rusak, yang lainnya masih dapat berjalan
(tetapi biaya mahal).
Kerugian : control management tidak terjamin

Partially connected network :
Keuntungan : reliability rendah, biaya dapat ditekan
Kerugian : control management tidak terjamin

Tree structure network :
Keuntungan : bersifat sentral, control management lebih terjamin
Kerugian : kalau node pusat (A) rusak, semua akan rusak.
Cat : setiap proses dimulai dari bawah.

Ring Network (LAN) :
Keuntungan : rusak satu, yang lain masih berjalan
Kerugian : Control management kurang terjamin karena bersifat desentralisasi


Star Network (LAN) :
Keuntungan : - control management lebih terjamin, karena bersifat sentral
- reliability rendah
Kerugian : kalau pusat rusak, yang lainnya rusak

5.Rancangan Database Terdistribusi
1.       Replikasi
  • Sistem memelihara sejumlah salinan/duplikat tabel-tabel data.
  • Setiap salinan tersimpan dalam simpul yang berbeda, yang menghasilkan replikasi data.
2.       Fragmentasi
  • Data dalam tabel dipilah dan disebar ke dalam sejumlah fragmen.
  • Tiap fragmen disimpan di sejumlah simpul yang berbeda-beda.\Fragmentasi dapat berbentuk fragmentasi horizontal (pemilahan record data) atau fragmentasi vertikal (pemilahan field/atribut data).
3.       Alokasi data

Ada beberapa alternatif dasar untuk menyimpan atau menempatkan data : partisi
dan replikasi. Dalam skema partisi, database dibagi ke dalam sejumlah partisi
yang disjoin yang masing2 ditempatkan di site yang berbeda.

Tidak ada komentar:

Posting Komentar