Deskripsi Singkat Tentang Kebutuhan yang Berhubungan dengan Database
Pada tugas basis data lanjut ini kami mengangkat topik tentang Rental Mobil. Pada rental mobil ini kegiatan utamanya adalah seorang customer dapat memesan mobil dengan berbagai tipe dengan harga yang bervariasi. Customer yang menyewa mobil harus menyertakan identitas lengkap, dan barang jaminannya.
Pada rental mobil tersebut terdapat owner sebagai pimpinan rental mobil, customer, karyawan yang dibagi menjadi dua tugas, yaitu sebagai kasir dan sopir.
Berikut ini adalah EERD dari rental mobil
CDM
PDM
Planning Kebutuhan F unction, Procedure, Trigger Pada Sistem Rental mobil
- PROSEDUR
§ Backup_database
o (procedur untuk membackup database
rental mobil)
Input : Semua table
yang ada pada database
Proses : Dengan melihat
seluruh backup database yang telah digunakan
Output : Menghasilkan
rekap data yang telah disimpan sebelumnya
§ Delete_All_Record
o (procedur untuk melakukan penghapusan
keseluruhan record table)
Input : Id_pegawai,
Id_customer, nama_customer, merk_mobil, harga_sewa
Proses : Dengan melihat
seluruh record yang telah digunakan
Output : Menghasilkan
data yang telah diperbaharui. Seperti pembaharuan pada table data Pegawai,
Customer, Mobil, Periode Sewa
- FUNCTION
§ Total_bayar
o
(menghitung seluruh total pembayaran
customer)
Input : kode_transaksi, lama_sewa, total_pembayaran,
tgl_peminjaman, tgl_pengembalian, merk mobil
Proses
: Dengan melihat pada table history transaksi customer yang telah membeli
barang, Maka sistem akan menampilkan Table Baru (Total Seluruh Pembayaran)
Output : Menghasilkan
rekap data pembayaran penyewaan mobil pada Rental
- TRIGGER
Member
Pendaftaran member dan masa aktif member
Ø Trigger
Insert = id_member, nama_member
Update
= alamat, no_tlp, no_ktp
Delete
= member_tidak_aktif
Keterangan dari tabel diatas = Untuk menampilkan tabel member yaitu dengan
memasukan,
|
Inputan
|
= id member, nama member, alamat, no.tlp, no.ktp
|
|
Proses
Output
|
= dengan
melalui “Simpan”
= “tabel member”
|
Pegawai
Pendafataran pegawai baru dan mendelete pegawai tidak aktif
Ø Trigger
Insert = id_pegawai,nama_pegawai
Update =
alamat,no_tlp
Delete =
pegawai_tidak_aktif
Keterangan = Untuk menampilkan table pegawai yaitu dengan
memasukan
|
Inputan
|
= id pegawai, nama pegawai,
alamat, no.tlp, no.ktp, no.sim
|
|
Proses
Output
|
= dengan
melalui “Simpan”
= “tabel pegawai”
|
Tabel mobil
Pendaftaran
mobil baru dan mobil yang sudah tidak digunakan.
Ø Trigger
Insert = no_pol, merk_mobil, stock_mobil
Update =
merk_mobil, no_pol, stock mobil
Delete =
mobil_tidak_aktif atau tidak
digunakan
JENIS-JENIS JOIN
- JOIN
- CROSS JOIN
Cross join merupakan
bentuk penggabungan yang paling sederhana, tanpa ada kondisi
Contoh Syntax Cross
Join : SELECT field_1field_2 From
Tabel_1 CROSS JOIN table_2;
- INNER JOIN
Hampir sama dengan cross join tetapi diikuti dengan kondisi
Contoh Syntax Inner Join : SELECT Field FROM table_1 INNER JOIN
table_2 ON kondisi
Keterangan : kondisi yang di maksud
yaitu dimana primary key pada tabel1 terdapat pada tabel2
- OUTER JOIN
OUTER JOIN merupakan tipe join yang mencari referensi data
dari suatu table sumber ke table lain dengan tidak menghilangkan data sumber
apabila referensi tidak diketemukan.
Untuk menggunakan tipe
OUTER JOIN maka perlu memperhatikan beberapa hal berikut :
·
Left
Outer Join
Operasi Join tipe ini akan
menampilkan semua isi tabel sisi kiri, walaupun data di pasangan joinnya yg
disisi kanan nilainya tidak sama ataupun bernilai null. Contoh Syntax Left
Outer Join :
SELECT <field1>,<field2>,<fieldn> FROM
<tabel1> LEFT JOIN <tabel2> ON
<key.tabel1> = <key.tabel2>
<key.tabel1> = <key.tabel2>
·
Right
Outer Join
Operasi Join tipe ini akan
menampilkan semua isi tabel sisi Kanan, walaupun data di pasangan joinnya yg
disisi kiri nilainya tidak sama ataupun bernilai null. Contoh Syntax Right
Outer Join :
SELECT <field1>,<field2>,<fieldn> FROM
<tabel1> RIGHT JOIN <tabel2>
ON <key.tabel1> = <key.tabel2>
ON <key.tabel1> = <key.tabel2>
·
Full
Outer Join Gabungan dari left outer join dan right outer join.
Contoh Syntax Full Outer Join : select*from
[Tabel_1] full join [Tabel_2];
- UNION JOIN
Perintah UNION digunakan untuk menggabungkan isi dari 2 (dua)
tabel atau lebih query
SELECT
dalam satu hasil keluaran saja. Dengan
catatan kedua query SELECT
tersebut harus memiliki jumlah field
yang sama.
Contoh Syntax Union Join :
SELECT column_name(s)
FROM table_name1
UNION
SELECT
column_name(s) FROM table_name2
PLANING
VIEW DAN JOIN
v VIEW
1.
View Pegawai
Input: Create view Pegawai = Id_Pegawai,
Nama_pegawai, Alamat_pegawai, Jenis_pekerjaaan, No_Ktp, No_Tlp
Proses : Full Outer Join
Output :
1. View
Customer
Input : Create view Customer =Id_Customer,
Nama_Customer, Alamat_Customer, No_Tlp, No_Ktp
Proses : Full Outer Join
Output :
1. View
Transaksi
Input : Create view Transaksi =Kode_Transaksi,
Lama_sewa, Total_Pembayaran, Tgl_Peminjaman, Tgl_Pengembalian, Merk_Mobil
Proses : Full Outer Join
Output :
1. View
Mobil
Input : Create view Mobil = No_Pol, Merk_Mobil, Stok_Mobil
Proses : Full Outer Join
Output :
v JOIN
1. History
penyewaan Mobil
Input
: Table Customer (Nama_customer, Alamat_Customer, No_Tlp)
Table Mobil (Merk_Mobil, No_Pol)
Table Periode_Sewa (Lama_sewa,
Harga_sewa)
Proses
: Cross Join
Output
:
1. Transaksi
Pembayaran
Input
: Table Customer (Id_Customer)
Table Mobil (Merk, No_Pol)
Table Transaksi (Cash, Kredit,
Tgl_Peminjaman, Tgl_Kembali, Lama_Sewa)
Proses
: Cross Join
Output
:
PLANNING DATABASE DAN BACKUP DI SQL DAN ORACLE
PLANNING
MODEL DESAIN BASIS DATA DAN PLANNING BACK UP
- Kelompok kami berencana menggunakan desain database degan menggunakan centralize(terpusat) karena database yang terletak dan dipelihara dalam satu lokasi atau dalam satu tempat.
- Alasan mengapa kelompok kami menmilih menggunakan Basis Data Terpusat karena untuk mengakses data pada sistem rental mobil ini hanya membutuhkan satu server, sehingga client yang ingin mengakses sistem tersebut hanya di pusat atau di server tersebut. Selain itu, dengan menggunakan basis data terpusat kinerja sistem menjadi lebih terjamin. Dalam basis data terpusat, fungsi server hanya memberikan data, sedangkan Client hanya bertugas untuk mengolah data tersebut ke dalam media output seperti laporan atau mentransfernya ke dalam format data lain yang dibutuhkan.
PLANNING
BACKUP SQL DAN ORACLE
Keterangan :
- Tanggal 01/07/14
Dalam
Sistem Rental Mobil, kami menggunakan full backup untuk membackup keseluruhan
database yang ada di sistem. Serta untuk mengetahui perubahan data dalam
database selama satu minggu.
- Tanggal 02/07/14 – 03/07/2014
Dalam
Sistem Rental Mobil, kami menggunakan differential backup, hal ini dilakukan
untuk mengetahui perubahan data yang terjadi terakhir setelah full backup.
Misalkan
hari minggu kami full backup kemudian ada sebuah perubahan data, maka differential
akan membackup data tersebut.
- Tanggal 04/07/14 – 05/07/14
Dalam
Sitem Rental Mobil, kami menggunakan incremental backup kami lakukan untuk
mengetahui perubahan data yan terjadi terakhir setelah differential backup.
- Tanggal 06/07/14 – 07/07/14
Dalam
Sistem Rental Mobil, kami menggunakan transcation log backup, dilakukan untuk
mengetahui perubahan data yang terjadi terakhir setelah full backup.
Keterangan :
- Tanggal 08/07/14
Dalam
Sistem Rental Mobil, kami menggunakan full backup untuk membackup keseluruhan
database yang ada di sistem. Serta untuk mengetahui perubahan data dalam
database selama satu minggu.
- Tanggal 09/07/14 – 10/07/2014
Dalam
Sistem Rental Mobil, kami menggunakan differential backup, hal ini dilakukan
untuk mengetahui perubahan data yang terjadi terakhir setelah full backup.
Misalkan
hari minggu kami full backup kemudian ada sebuah perubahan data, maka
differential akan membackup data tersebut.
- Tanggal 11/07/14 – 12/07/14
Dalam
Sitem Rental Mobil, kami menggunakan offline backup karena tipe backup ini
sangat konsisten.
- Tanggal 13/07/14 – 14/07/14
Dalam
Sistem Rental Mobil, kami menggunakan online backup, dilakukan untuk memulihkan
data awal yang terbentuk.
Fitur - fitur yang berhubungan
dengan backup di SQL server 2008
Log
shipping
Log shipping adalah proses backup
File Transactional Log dari sebuah server kedalam share folder yang akan
didistribusikan ke server lainnya secara periodik baik dalam detik, menit
maupun jam dengan menggunakan SQL Agent. Dalam proses ini, database yang di
restore ke secondary server statusnya akan menjadi Stanby/Read-Only dan masih
bisa di akses walaupun hanya memiliki akses Read. Log Shipping bisa dikatakan
sebagai metode DRP (Disaster Recovery Plan) yang terbaik, karena resiko kehilangan
data sangat sedikit dan sedikit pula waktu untuk downtime.
Backup
Compression
Backup Compression merupakan fitur
peningkatan untuk backup strategy. Dengan backup compression ini ukuran file
menjadi lebih kecil dan menambah kecepatan dalam proses backup. Tetapi akan
bermasalah pada I/O.
Fitur - fitur yang berhubungan
dengan backup di di
oracle 10g
block
change tracking
untuk mempercepat proses backup
secara incremental, maka oracle 10g memperkenalkan fitur baru yang disebut
block change tracking. dengan oracle ini oracle hanya akan mencatat block-block
yang memperbaharui, mulai dari level 0 ke dalam sebuah file dan nantinya
berdasarkan file tersebut RMAN dapat melakukan backup pada setiap block yang
sudah tercatat didalamnya.
Kompresi
Backupset
oracle 10g memiliki fitur yang
dapat digunakan untuk melakukan backup kompresi sehingga file backup yang
dihasilkan akan memiliki ukuran yang lebih kecil dan kapasitas harddisk dapat
dihemat.