Thursday, June 20, 2013

Latihan Soal Pertemuan 14

1. Di dalam penggunaan database dapat terjadi suatu kegagalan atau failure pada suatu sistem, kegagalan tersebut sering disebut dengan istilah
a. Recovery
b. System error
c. Crash
d. Revoke
e. Failure

2. Salah satu penyebab dari kegagalan atau failure adalah
a. Stable store
b. Disk crass
c. Crash
d. Man
e. Logical Error

3. Informasi yang disimpan pada memory utama dan register akan hilang, merupakan penyebab dari kegagalan
a. Disk crass
b. Software error
c. logical error
d. Power failure
e. System Error

4. Output yang dihasilkan tidak benar dan sistem database sendiri akan memasuki suatu kondisi tidak konsisten, hal ini merupakan akibat dari kegagalan
a. Disk crass
b. Software error
c. logical error
d. Power failure
e. System Error

5. Program tidak dapat dilaksanakan lagi disebabkan kesalahan input, data tidak ditemukan, overflow adalah jenis kegagalan
a. Stable Storage
b. Logical error
c. Crash
d. Disk Crash
e. Man

PEMBERIAN WEWENANG DAN VIEW

KONSEP VIEW adalah cara yang diberikan pada seorang pemakai untuk mendapatkan model database yang sesuai dengan kebutuhan perorangan

Database relational membuat pengamanan pada level :
  • Relasi, seorang pemakai diperbolehkan atau tidak mengakses langsung suatu relasi
  • View, seorang pemakai diperbolehkan atau tidak mengakses data yang terdapat pada view
  • Read Authorization, data dapat dibaca tapi tidak boleh dimodifikasi
  • Insert Authorozation, pemakai boleh menambah data baru, tetapi tidak dapat memodifikasi data yang sudah ada
  • Update Authorization, pemakai boleh memodifikasi tetapi tidak dapat menghapus data
  • Delete Authorization, pemakai boleh menghapus data
  • Index Authorization, pemakai boleh membuat atau menghapus index
  • Resource Authorization, mengizinkan pembuatan relasi – relasi baru
  • Alternation Authorization, mengizinkan penambahan atau penghapusan atribute dalam satu relasi
  • Drop Authorization, pemakai boleh menghapus relasi yang ada

SECURITY DAN INTEGRITY

SECURITY adalah suatu proteksi data terhadap perusakan data dan pemakaian oleh pemakai yang tidak mempunyai ijin.

BEBERAPA MASALAH SECURITY SECARA UMUM :
1. Di dalam suatu perusahaan siapa yang diijinkan untuk mengakses suatu sistem
2. Bila sistem tersebut menggunakan password, bagaimana kerahasian dari password tersebut dan berapa lama password tersebut harus diganti
3. Di dalam pengontrolan hardware, apakah ada proteksi untuk penyimpanan data (data storage)

DUA KATAGORI PENYALAHGUNAAN DATABASE :
1. Katagori yang tidak disengaja
Contoh: Anomali yang disebabkan oleh pendistribusian data pada beberapa komputer
2. Katagori yang disengaja
Contoh: Insert, Delete & Update oleh pihak yang tidak berwenang

BEBERAPA TINGKATAN MASALAH SECURITY :
1. Phisical, berkaitan dengan pengamanan lokasi fisik database
2. Man, berkaitan dengan wewenang user
3. Sistem operasi, berkaitan dengan kemanan sistem operasi yang digunakan dalam jaringan
4. Sistem database, sistem dapat mengatur hak akses user

INTEGRITY Berarti memeriksa keakuratan dan validasi data

BEBERAPA JENIS INTEGRITY :
1. Integrity Konstains, memberikan suatu sarana yang memungkinkan pengubahan database oleh pemakai
berwenang sehingga tidak akan menyebabkan data inkonsistensi

2. Integrity Rule (pada basisdata relational), terbagi menjadi:
- Integrity Entity, contoh: tidak ada satu komponen kunci primer yang bernilai kosong (null)
- Integrity Referensi, suatu domain dapat dipakai sebagai kunci primer bila merupakan atribut tunggal pada domain yang bersangkutan

CRASH DAN RECOVERY

PENGERTIAN :
Crash adalah suatu failure atau kegagalam dari suatu sistem

PENYEBAB DARI KEGAGALAN ADALAH :
1. Disk Crash yaitu informasi yang ada di disk akan hilang
2. Power failure yaitu informasi yang disimpan pada memori utama dan register akan hilang
3. Software Error yaitu output yang dihasilkan tidak betul dan sistem databasenya sendiri akan memasuki suatu kondisi tidak konsisten

KLASIFIKASI FAILURE
Berdasarkan Jenis storage
1. Volatile storage, biasanya informasi yang terdapat pada volatile akan hilang, jika terjadi kerusakan sistem
(system crash) contoh: RAM
2. Non Volatile Storage, biasanya informasi yang terdapat pada non volatile strorage tidak akan hilang jika terjadi kerusakan sistem contoh: ROM
3. Stable Storage, informasi yang terdapat dalam stable storage tidak pernah hilang. contoh: Harddisk RAID

Jenis kegagalan :
1. Logical Error, program tidak dapat lagi dilaksanakan disebabkan oleh kesalahan input, data tidak ditemukan, over flow
2. System Error, sistem berada pada keadaan yang tidak diinginkan, seperti terjadi deadlock, sebagai
akibat program tidak dapat dilanjutkan namun setelah beberapa selang waktu program dapat dijalankan kembali.
3. System Crash, kegagalan fungsi perangkat keras, menyebabkan hilangnya data pada volatile storage,
tetapi data pada non volatile storage masih tetap ada.
4. Disk Failure, hilangnya data dari sebuah blok disk disebabkan oleh kerusakan head atau kesalahan pada
waktu pengoperasian transfer data

Latihan Soal Pertemuan 13

1. Salah satu mekanisme pengontrol concurrency
a. Blocking
b. TimesStamping
c. Locking
d. SQL
e. Timesharing

2. Mekanisme kontrol konkurensi yang dapat menghilangkan deadlock
a. Normalisasi
b. Locking
c. Timestamp
d. Fragmentasi
e. Replication

3. Kunci yang memungkinkan pengguna dapat membaca record dan mengubahnya
a. Exclusive
b. Concurency
c. Primary
d. Shared
e. Read

4. Status yang menunjukkan bahwa sebuah transaksi telah selesai adalah
a. Committed
b. Uncommitted
c. Rollback
d. Wait
e. Read

5. Masalah ini timbul jika sebuah transaksi membaca suatu nilai tetapi transaksi yang kedua mengupdate beberapa nilai tersebut selama eksekusi transaksi pertama
a. Anomali Insert
b. Anomali Update
c. Analisa yang tidak konsisten
d. Update sementara
e. Crash System

TIMESTAMPING

TIMESTAMPING
Adalah salah satu alternatif mekanisme kontrol konkurensi yang dapat menghilangkan masalah dead lock
Dua masalah yang timbul pada Timestamping :
1. Suatu transaksi memerintahkan untuk membaca sebuah item yang sudah di update oleh transaksi yang belakangan.
2. Suatu transaksi memerintahkan untuk menulis sebuah item yan nilainya sudah dibaca atau ditulis oleh transaksi yang belakangan

LOCKING

LOCKING adalah salah satu mekanisme pengontrol concurrency

KONSEP DASAR :
Ketika sebuah transaksi memerlukan jaminan kalau record yang diinginkan tidak akan berubah secara mendadak, maka diperlukan kunci untuk record tersebut

FUNGSI
Locking berfungsi untuk menjaga record tersebut agar tidak dimodifikasi oleh transaksi lain.

Jenis- Jenis Lock :
1. Share (S)
Kunci ini memungkinkan pengguna dan para pengguna konkuren yang lain dapat membaca record tetapi tidak mengubahnya.
2. Exclusive (X)
Kunci ini memungkinkan pengguna untuk membaca dan mengubah record. Sedangkan pengguna konkuren lain tidak diperbolehkan membaca ataupun mengubah record tersebut.

  • KASUS CARA KERJA LOCKING

CONCURRENCY (KONKURENSI)

Ada 3 masalah yang disebabkan oleh Concurrency :
1. Masalah kehilangan modifikasi (Lost Update Problem)
Masalah ini timbul jika dua transaksi mengakses item database yang sama yang mengakibatkan nilai dari database tersebut menjadi tidak benar.
Contoh Lost Update problem
Data transaksi pada rekening bersama (Ika dan Susi)
Nilai saldo menjadi tidak benar disebabkan transaksi Susi membaca nilai saldo sebelum transaksi Ika mengubah nilai tersebut dalam database, sehingga nilai yang sudah di update yang dihasilkancdari transaksi Ika menjadi hilang.


2. Masalah Modifikasi Sementara (uncommited Update Problem)
Masalah ini timbul jika transaksi membaca suatu record yang sudah dimodifikasi oleh transaksi lain tetapi belum terselesaikan (uncommited), terdapat kemungkinan kalau transaksi tersebut dibatalkan (rollback).
Contoh uncommited Update Problem
Nilai saldo menjadi tidak benar disebabkan terjadi RollBack pada T7 yang membatalkan transaksi
sebelumnya (T6), sehingga saldo seharusnya tetap 2.000.000


3. Masalah Analisa yang tidak konsisten (Problem of inconsistency Analysis)
Masalah ini timbul jika sebuah transaksi membaca suatu nilai tetapi transaksi yang kedua mengupdate beberapa nilai tersebut selama eksekusi transaksi pertama.
Contoh Problem of inconsistency Analysis
Transaksi A menjumlahkan nilai 1, nilai 2 dan nilai 3
Transaksi B -> nilai 1 + 10, nilai 3 –10

Latihan Soal Pertemuan 12

1. Sebuah perusahaan yang melayani pemesanan barang/produk umum memerlukan sebuah program aplikasi yang berfungsi untuk menyimpan data produk beserta suppliernya dan juga berfungsi untuk mencatat transaksi pemesananan produk dari customer. Setiap produk yang dipesan akan dikirim ke customer yang memesannya. Rancanglah database untuk program aplikasi tersebut dengan menggunakan DBDesigner dan ekspor hasilnya ke server MySQL, untuk memenuhi keinginan perusahaantersebut.

2. Seorang kolektor mobil ingin mendata seluruh mobil miliknya dan memerlukan program aplikasi yang bisa
berfungsi untuk menyimpan data koleksi mobilnya. Rancanglah database untuk program aplikasi tersebut dengan menggunakan DBdesigner dan ekspor hasilnya ke server MySQL, sehingga program yang dikembangkan bisa memenuhi keinginan kolektor tersebut.

Implementasi Basis Data Menggunakan SQLYog (MySQL GUI)

SQLyog merupakan salah satu perangkat lunak yang berfungsi untuk mengelola database MySQL dengan menggunakan Graphical User interface (GUI).

Berikut ini beberapa fungsi yang bisa digunakan pada SQLYog:
Membuat koneksi ke server MySQL
Klik menu File > New Connection akan tampil jendela koneksi berikut.

Klik tombol New dan akan tampil jendela New Connection, isilah nama koneksi kemudian klik OK seperti gambar berikut.


Pastikan Host Address, User Name dan yang lainya diisi dengan benar, kemudian klik Connect

Membuat database
Pilih menu DB > Create Database, kemudian tentukan nama database (data_penjualan).

Membuat tabel
Klik pada database untuk mengaktifkannya.
Berikut ini untuk membuat tabel langganan (lgn), pilih menu DB > Create Table, kemudian tentukan field- fieldnya, kemudian klik Create Table dan tentukan nama tabel.



Tambahkan beberapa tabel-tabel yang lain sbb:


        Melihat struktur tabel                      Mengubah struktur table        
                                                            Klik pada tabel yang akan diubah

Pilih menu Table > Alter Table, kemudian ubahlah.
Jika telah selesai klik Alter

Manipulasi data pada tabel
Untuk menambah, mungubah, menghapus dan melihat data pada tabel bisa dilakukan langsung pada tab Table Data seperti halnya pada MS-Access.

Mengeksekusi perintah SQL
Perintah-perintah SQL bisa dieksekusi dengan cara menuliskannya terlebih dahulu pada tab Query,






PERANCANGAN DAN IMPLEMENTASI BASIS DATA MENGGUNAKAN DB Designer Part 2

Sebelum melakukan sinkronisasi, kita perlu membuat koneksi ke database MySQL terlebih dahulu. Jika remote connection dengan root diperbolehkan maka gunakan user root. Jika tidak maka kita butuh membuat user baru terlebih dahulu. Berikut ini adalah cara bagaimana membuat user baru yaitu db_owner.

Lakukan login terlebih dahulu ke MySQL dengan memasukkan password root.

Buat user baru bernama dbo dengan password ”owner”.
Ketikkan 3 perintah dibawah ini.

Buat Database baru yaitu dbpenjualan

Mengekspor Tabel Hasil Rancangan Ke Server Database
Mengekspor tabel ke server database bisa dilakukan dari menu Database Database Sychronisastion seperti gambar berikut

Lalu pilih MySQL sebagai database dan kemudian klik New
Database Connection

Masukkan Nilai berikut:
Connection Name : MySQL
Hostname : localhost
Database Name : dbpenjualan
UserName : dbo
Password : owner
Lalu klik OK

Klik Connect untuk terkoneksi ke MySQL

Klik Execute untuk mengeksekusi sinkronisasi

Setelah tampil jendela seperti di atas, selanjutnya klik tombol
EXECUTE untuk mengekspor tabel ke server database MySQL dan akan tampil progress report seperti berikut

PERANCANGAN DAN IMPLEMENTASI BASIS DATA MENGGUNAKAN DB Designer Part 1

Perancangan dan Implementasi Basis Data Menggunakan MYSQL
Perangkat Lunak Bantu untuk Perancangan Basis Data
Pada perangkat lunak bantu telah tersedia komponenkomponen (notasi-notasi) perancangan basis data.
Salah satu perangkat lunak bantu untuk keperluan semacam itu adalah DBDesigner yang dioptimalkan untuk MySQL Database.

  • Tampilan jendela DBDesigner

Contoh penggunaan DBDesigner.
Menggunakan Komponen TABEL dan RELASI Klik komponen Tabel pada toolbar seperti di gambar berikut.
Letakan komponen tsb. pada page area sehingga muncul komponen
Tabel (Table_01) pada page area, kemudian klik kanan komponen tsb sehingga muncul menu dan pilihlah Edit Object seperti berikut.


Menu Edit Object akan menampilkan jendela Table Editor.
Pada Table Editor kita bisa menentukan properties dari tabel seperti nama tabel, tipe data, primary key dsb.
Ubah dan simpanlah properties tabel (Table _01) menjadi tabel faktur (struktur tabel seperti pada pembahasan LRS tanpa ada FK) seperti berikut.

Ulangi langkah-langkah menggunakan komponen Table di atas (tabel faktur) untuk tabel barang dan langganan (struktur tabel seperti pada pembahasan LRS tanpa ada FK). Sehingga ada 3 komponen Table seperti gambar berikut


Langkah berikutnya membuat relasi 1-M antara langganan dengan faktur dengan cara klik komponen 1-n Relation pada toolbar seperti di gambar berikut.

Klik di tabel langganan kemudian klik di tabel faktur, sehingga muncul komponen relasi yang menghubungkan kedua tabel tsb. dan FK (NLgn) berada pada tabel faktur, seperti gambar berikut

Langkah berikutnya membuat relasi M-M antara faktur dengan barang dengan cara klik komponen n-m Relation pada toolbar seperti di gambar berikut

Klik di tabel faktur kemudian klik di tabel barang, sehingga muncul komponen relasi yang disertai munculnya tabel baru (faktur_has_barang) dan FK (Nfak & NBrg) berada pada tabel tsb, seperti gambar berikut.

Edit properties tabel faktur_has_barang yaitu dengan mengganti nama menjadi tabel transaksi dan menambahkan field Qty dan HrgTran. Sehingga menjadi seperti gambar berikut.

Untuk mengekspor hasil rancangan database ke dalam database digunakan Database Synchronization. Database yang digunakan pada contoh ini adalah MySQL.

Continue Part 2....

Latihan Soal Pertemuan 11

1. Proses pembagian atau pemetaan database dimana database dipecah pecah menjadi baris dan kolom
a. Distribusi
b. Pemetaan
c. Divide
d. Restrict
e. Fragmentasi

2. Jenis-jenis fragmentasi
a. Restriction, Project
b. Distributed
c. Drop, Alter, Create
d. Horizontal, vertical, campuran
e. Ring, Start, Fully Network

3. Yang merupakan contoh fragmentasi vertical adalah

4. Kerugian penggunaan database terdistribusi adalah :
a. Otonomi Lokal
b. Biaya pemrosesan tinggi
c. Kecepatan terlalu tinggi
d. Avaibility
e. Ekonomis

5. Relasi dipartisikan ke dalam beberapa bagian, setiap bagian disimpan pada lokasi yang berbeda merupakan tehnik :
a. Controlling
b. Fragmentasi data
c. Crash
d. Normalisasi
e. Recovery

Analisa Perpustakaan Smart P9

• Diharapkan dosen untuk membuat tambahan kasus terbaru dari Perpustakaan Smart yang diimplementasikan dengan solusi Query bahasa Formal.

Analisa kasus Perpustakaan Smart P11

• Pembuatan Salah satu Topologi Jaringan Database Terdistribusi dari Perpustakaan Smart.
• Implementasikan Perpustakaan Smart Fragmentasikan dengan 3 kondisi :
F.Horizontal,F.Vertikal & F.Campuran

*Diharapkan Dosen untuk memberikan Analisa kasus Perpustakaan Smart dan Solusi dari permasalahannya.

KEUNTUNGAN DAN KERUGIAN DATABASE TERDISTRIBUSI

KEUNTUNGAN :
1. Secara alami mengikuti struktur organisasi
2. Adanya otonomi lokal
3. Sifatnya dapat dipakai secara bersama
4. Peningkatan ketersediaan
5. Peningkatan kehandalan
6. Peningkatan kinerja
7. Ekonomis
8. Pertumbuhan yang modular

KERUGIAN :
1. Harga software mahal (Biaya)
2. Kompleksitas
3. Kelemahan dalam keamanan
4. Sulitnya menjaga keutuhan data
5. Kurangnya standar
6. Kurangnya pengalaman
7. Perancangan basisdata lebih kompleks

BENTUK-BENTUK TOPOLOGI DISTRIBUSI DATA :

a. Fully Connected network

b. Partialy conneted network


c. Tree Strutured Network


d. Ring network


e. Star network