Top Banner
Transaksi Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika Ui i P d Universitas Pasundan Caca E Supriana S Si MT Caca E. Supriana, S.Si.,MT . [email protected] 1
21

Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Mar 20, 2019

Download

Documents

hakiet
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

TransaksiSemester Ganjil 2014

Fak. Teknik Jurusan Teknik InformatikaU i i P dUniversitas Pasundan

Caca E  Supriana  S Si MTCaca E. Supriana, S.Si.,[email protected]

1

Page 2: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

TransaksiTransaksi database mencerminkan dunia transaksi nyata yang dipicu oleh peristiwa seperti membeli produk  mendaftar untuk kursus  atau membuat produk, mendaftar untuk kursus, atau membuat deposit dalam rekening koran sebuah bank. Transaksi cenderung mengandung banyak bagian. g g g y gSebagai contoh, transaksi penjualan mungkin memperbarui account pelanggan, menyesuaikan persediaan produk, dan memperbarui piutang penjual. Semua bagian dari transaksi harus berhasil diselesaikan untuk mencegah masalah integritas data  diselesaikan untuk mencegah masalah integritas data. 

2

Page 3: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Sifat utama transaksi database adalah atomicity, konsistensi, isolasi, dan daya tahan (durability). Selainitu  serializability merupakan karakteristik dari jadwalitu, serializability merupakan karakteristik dari jadwaloperasi untuk pelaksanaan transaksi yang konkuren.

3

Page 4: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Transaksi penjualan terdiri dari setidaknya bagian‐bagianberikut:•Anda harus menulis faktur pelanggan baru.•Anda harus mengurangi kuantitas di tangan dalampersediaan produk.•Anda harus memperbarui akun transaksi.•Anda harus memperbarui keseimbangan pelanggan.

4

Page 5: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

TransaksiTransaksi adalah setiap tindakan yang membaca daridan atau menulis ke database. 

5

Page 6: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Sebuah transaksi dapat terdiri dari pernyataanSELECT sederhana untuk menghasilkan daftar isisebuah tabel; sebuah tabel; mungkin terdiri dari serangkaian pernyataan UPDATE terkait untuk mengubah nilai‐nilai dari atribut diterkait untuk mengubah nilai nilai dari atribut diberbagai tabel;mungkin terdiri dari serangkaian pernyataan INSERT g g p yuntuk menambahkan baris untuk satu atau lebihtabel, atau mungkin terdiri dari kombinasi SELECT, UPDATE  dan pernyataan INSERTUPDATE, dan pernyataan INSERT.

6

Page 7: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Semua pernyataan SQL dalam transaksi harusdiselesaikan dengan sukses. Jika salah satu pernyataanSQL gagal  seluruh transaksi dikembalikan (roll back) SQL gagal, seluruh transaksi dikembalikan (roll‐back) ke keadaan awal database yang ada sebelum transaksidimulai. Sebuah transaksi yang berhasil mengubah database dari satu kondisi ke kondisi konsisten lain. Sebuahkondisi database konsisten adalah di mana semuakendala integritas data terpenuhi.

7

Page 8: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Contoh transaksiSELECT CUST_NUMBER, CUST_BALANCEFROM CUSTOMERWHERE CUST_NUMBER=10016;

8

Page 9: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Contoh transaksiINSERT INTO INVOICEVALUES (1009, 10016,'18‐Jan‐2010', 256.99, 20.56, 277.55,'cred',0.00, 277.55);277.55, cred ,0.00, 277.55);

INSERT INTO LINEVALUES (1009, 1,'89‐WRE‐Q',1,256.99, 256.99);

Atau

UPDATE PRODUCTSET PROD_QOH=PROD_QOH–1WHERE PROD_CODE='89‐WRE‐Q';

9

Page 10: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Properti transaksiAtomicityC i tConsistencyIsolationIsolationDurabilitySerializability

10

Page 11: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Atomicity mensyaratkan bahwa semua operasi (SQL request) dari transaksi akan selesai, jika tidak, transaksi tersebut dibatalkan  transaksi tersebut dibatalkan. Jika transaksi T1 memiliki empat permintaan SQL, keempat permintaan harus berhasil diselesaikan  jikakeempat permintaan harus berhasil diselesaikan, jikatidak, seluruh transaksi dibatalkan. Dengan kata lain, transaksi diperlakukan sebagai satu unit, tidak terbagi, kerja logis.

11

Page 12: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Consistency menunjukkan kondisi permanen daridatabase yang konsisten. Sebuah transaksi mengambildatabase dari satu kondisi konsisten ke keadaandatabase dari satu kondisi konsisten ke keadaankonsisten yang lain. Ketika transaksi selesai  database harus dalam keadaanKetika transaksi selesai, database harus dalam keadaankonsisten, jika salah satu bagian transaksi melanggarkendala integritas, seluruh transaksi dibatalkan.

12

Page 13: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Isolation berarti bahwa data yang digunakan selamapelaksanaan transaksi tidak dapat digunakan olehtransaksi kedua sampai yang pertama selesai. Dengantransaksi kedua sampai yang pertama selesai. Dengankata lain, jika T1 transaksi yang sedang dieksekusi danmenggunakan item data X, bahwa item data tidakdapat diakses oleh transaksi lain (T2  Tn) sampaidapat diakses oleh transaksi lain (T2 ... Tn) sampaiberakhir T1. Properti ini sangat berguna dalam lingkunganp g g g gdatabase multiuser karena beberapa pengguna dapatmengakses dan memperbarui database pada saat yang sama.sama.

13

Page 14: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Durability memastikan bahwa perubahan transaksisekali selesai (berkomitmen), mereka tidak dapatdibatalkan atau hilang  bahkan dalam hal terjadidibatalkan atau hilang, bahkan dalam hal terjadikegagalan sistem.

14

Page 15: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Serializabilitymemastikan bahwa jadwal untukpelaksanaan bersamaan dari transaksi menghasilkanproperti results  properti results. Konsistensi adalah penting dalam database multiuser dan terdistribusi  di mana beberapa transaksidan terdistribusi, di mana beberapa transaksikemungkinan akan dieksekusi secara bersamaan. Tentu saja, jika hanya satu transaksi dijalankan, serializability tidak menjadi masalah.

15

Page 16: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Manajemen Transaksi SQL Sebuah pernyataan COMMIT akan tercapai, dalam halini semua perubahan secara permanen dicatat dalampernyataan database  COMMIT secara otomatispernyataan database. COMMIT secara otomatismengakhiri transaksi SQL.Sebuah pernyataan ROLLBACK akan tercapai  dalamSebuah pernyataan ROLLBACK akan tercapai, dalamhal ini semua perubahan yang dibatalkan dandatabase di’roll‐back’ kembali ke keadaan konsistensebelumnya.

16

Page 17: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Contoh COMMITUPDATE PRODUCTSET PROD_QOH=PROD_QOH–2WHERE PROD_CODE='1558‐QW1';UPDATE CUSTOMERSET CUST_BALANCE=CUST_BALANCE+87.98WHERE CUST_NUMBER='10011';COMMIT;

17

Page 18: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Log TransaksiSebuah DBMS menggunakan log transaksi untukmelacak semua transaksi yang memperbarui database. I f i  di i d l l  i i di k l hInformasi yang disimpan dalam log ini digunakan olehDBMS untuk kebutuhan pemulihan yang dipicu olehpernyataan ROLLBACK  terminasi abnormal suatupernyataan ROLLBACK, terminasi abnormal suatuprogram, atau kegagalan sistem seperti perbedaanjaringan atau disk crash. 

18

Page 19: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Beberapa RDBMS menggunakan log transaksi untukmemulihkan database kembali ke keadaan saatkonsisten  konsisten. Setelah kegagalan server, misalnya, Oracle otomatisakan ‘roll‐back’ transaksi dan ‘roll‐forward’ transaksiakan roll back  transaksi dan roll forward  transaksiyang dilakukan tetapi belum ditulis ke database fisik.

19

Page 20: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Isi Log TransaksiSebuah catatan untuk awal transaksi.Untuk setiap komponen transaksi (pernyataan SQL):

1 Jenis operasi yang dilakukan (memperbarui  menghapus  1. Jenis operasi yang dilakukan (memperbarui, menghapus, menyisipkan).

2. Nama‐nama obyek dipengaruhi oleh transaksi (namab l)tabel).

3. Nilai‐nilai "sebelum" dan "setelah" untuk bidang yang sedang diperbarui.g p

4. Pointer ke entri transaksi sebelumnya dan berikutnya log untuk transaksi yang sama.

Akhir (COMMIT) dari transaksiAkhir (COMMIT) dari transaksi.

20

Page 21: Transaksi Semester Ganjil2014 Fak. Teknik …dikjar.if-unpas.org/dikjar/sap-koordinasi-evaluasi/20141...cenderungg mengggandung banyyak baggian. ySebagai contoh, transaksi penjualan

Transaction Log

21