Anda di halaman 1dari 6

UJIAN AKHIR SEMESTER GENAP

TAHUN AKADEMIK 2021/2022


FAKULTAS SAINS DAN
TEKNOLOGI

Program Studi : Informatika Hari/ Tanggal : Kamis, 4 Agustus 2022


Mata Kuliah : Basis Data Lanjut Sifat : daring – elearning.uai.ac.id
Nama Dosen : Ir. Endang Ripmiatin, MT Waktu : 120 menit

Idam Palada
0102520007
Ujian ini bersifat online – tidak ada pengawasan visual dari pihak universitas, kami harapkan para
peserta ujian:
1. Tidak bekerja sama atau berdiskusi satu dengan yang lain.
2. Tidak memberikan jawabannya kepada peserta yang lain.
3. Tidak mencontoh jawaban dari peserta yang lain.

Rancangan basis data yang digunakan dalam ujian ini adalah basis data di bawah ini.

1
Bagian A – konsep optimisasi transaksi. (Nilai 10)
1. Bila Pimpinan Perusahaan ini ingin melihat total penjualan dalam bulan Oktober 1994,
menurut Anda apa yang harus dikerjakan terlebih dahulu oleh sistem agar penarikan data

2
bisa optimum? Berikan penjelasan Anda dengan query tree, berikan alasan yang mendasari
jawaban tersebut.
Pertama memasukkan untiprice,quantity,discount,tahun orderdate dan productname,
selanjutnya gabng dan menghitung unitprice,quantity,discount.
2. Mengapa canocical query tree dianggap tidak optimum?
Karena ada beberapa query tree yang berbeda, ada tree yang tidak bersifat heuristic. Untuk
menjadi optimal, harus ada tree yang efisien atau dimodifikasi untuk dieksekusi agar
mencapai performa yang maksimal.

Bagian B – konsep pemrosesan transaksi. (Nilai 10)


1. Salah satu properti transaksi adalah atomicity – semua operasi dalam transaksi harus
dilaksanakan atau tidak dilaksanakan sama sekali. Jelaskan apa yang dimaksud dalam
definisi tersebut
Atomicity ditandai dengan semua unit proses dalam transaksi eksekusi secara lengkap dan
akan di rollback jika ada bagian yang gagal
2. Apa yang dimaksud dengan interleaving process dalam konsep pemrosesan transaksi? Apa
yang menjadi dasar dibutuhkannya proses interleaving tersebut.
Interleaving process adalah proses untuk membuat system menjadi lebih efisien dengan
mengatur data secara noncontiguos

Bagian C – soal optimisasi query. (Nilai 40)


1. Pimpinan Perusahaan ingin melihat customer mana yang mendatangkan pendapatan
tertinggi bagi perusahaan tersebut pada tahun 1994.

a) Buat SQL untuk mendapatkan data yang dibutuhkan. Tampilkan data customer dan
diurutkan berdasarkan jumlah transaksi tertinggi.

SELECT SUM(orderdetails.UnitPrice), COUNT(orderdetails.Quantity),


customers.ContactName
FROM orderdetails, orders, customers
WHERE orderdetails.OrderID = orders.OrderID
AND orders.CustomerID = customers.CustomerID
GROUP BY YEAR (OrderDate) = 1994 ASC

b) Sebutkan 2 customer yang yang mendatangkan pendapatan tertinggi sesuai hasil


perintah SQL yang Anda buat.

c) Buat query tree-nya.

d) Buat relational algebra sesuai dengan query tree yang Anda buat.

2. Pimpinan Perusahaan ingin melihat produk apa yang paling banyak mendatangkan
penghasilan bagi perusahaan setiap bulannya selama tahun 1994.
Tampilkan data dengan atribut | Bulan | Nama Produk | Jumlah Produk | Jumlah Harga |
3
Tampilkan data berurutan dari jumlah harga dan jumlah produk terjual tertinggi setiap
bulannya (dari Januari hingga Desember 1994).

a) Buat SQL untuk mendapatkan data yang dibutuhkan. Tampilkan nama produk, jumlah
dan total harga produk terjual dan diurutkan berdasarkan jumlah produk terjual
terbanyak.

SELECT products.ProductName, SUM(orderdetails.UnitPrice), COUNT(orderdetails.Quantity)


FROM orderdetails, orders, products
WHERE products.ProductID = orderdetails.ProductID
AND orderdetails. OrderID = orders.OrderID
GROUP BY YEAR (OrderDate) = 1994 ASC
b) Sebutkan dua nama produk yang paling banyak mendatangkan penghasilan di bulan
September 1994, dari hasil perintah SQL yang Anda buat di Soal 2a.

c) Buat query tree-nya.

d) Buat relational algebra sesuai dengan query tree yang Anda buat.

4
Bagian D – soal analisis serializability (Nilai 40)
1. Terdapat 3 transaksi sebagai berikut:
T1: r1(x), r1(q), add1 ( x := x+q), w1(x)
T2: r2(p), display2 (p), r2(x), multiply2 ( x := x*2), w2(x)
T3: r3(w), w3(w), r3(x), w3(x)

Terdapat S’ sebagai berikut:


S’1: r1(x), r2(p), display2 (p), r3(w), w3(w), r1(q), add1 ( x := x+q), w1(x), r2(x), multiply2 ( x :=
x*2), w2(x), r3(x), w3(x)

S’2: r1(x), r3(w), w3(w), r2(p), display2 (p), r2(x), r1(q), add1 ( x := x+q), w1(x), multiply2 ( x :=
x*2), r3(x), w2(x), w3(x)

a) Analisis keduanya dengan precedence diagram.


b) Simpulkan hasil analisis Anda dan jelaskan alasan kesimpulan tersebut.

2. Terdapat 4 transaksi sebagai berikut:


T1: r1(a), r1(b), r1(c), r1(d), w1(b), w1(c)
T2: r2(p), r2(q), r2(r)
T3: r3(i), r3(j), r3(k), sum3 (i := i + j + k)
T4: r4(x), r4(y), w4(y), w4(x)

Terdapat S1’ sebagai berikut:


S1’: r1(a), r2(p), r3(i), r1(b), r2(q), r4(x), r3(j), r4(y), w4(y), r1(c), r2(r), r3(k), w4(x), r1(d), w1(b),
w1(c), sum3 ( i := i + j + k)

a) Analisis dengan conflict serializability dan simpulkan beserta penjelasan singkat.


Kesimpulannya adalah serializable karena tidak terjadi conflict antar t1+t2+t3+t4 dan
analisanya tidak ada uang close atau saling menutupi
T1 T2 T3 T4
r1(a)
r2(p)
r3(I)
r1(b)
r2(q)
r4(x)
r3(j)
r4(y)
r4(w)
r1(c)
r2(r)
r3(k)
w4(x)
r1(d)
w1(b)
w1(c)
5
Sum3(I:=i+j+k)

b) Analisis dengan view serializability dan simpulkan beserta penjelasan singkat.

T1: r1(a), r1(b), r1(c), r1(d), w1(b), w1(c)


T2: r2(p), r2(q), r2(r)
T3: r3(i), r3(j), r3(k), sum3 (i := i + j + k), w3(i)
T4: r4(a), w4(a), r4(p), w4(p), r4(k), w4(k)

Terdapat S2’ sebagai berikut:


S2’: r1(a), r2(p), r3(i), r1(b), r2(q), r4(a), w4(a), r3(j), r4(p), w4(p), r1(c), r2(r), r3(k), r4(k), w4(k),
r1(d), w1(b), w1(c), sum3 ( i := i + j + k) ), w3(i)

Non serializability schedule diatas bernilai tidak skuivalen.

T1 T2 T3 T4
r1(a)
r2(p)
r1(b) r3(i)
r2(q)
r4(a)
w4(a)
r3(j)
r4(p)
w4(p)
r1(c)
r2(r)
r3(k)
r4(k)
w4(k)
r1(d)
w1(d)
w1(c)
Sum3(I:=I+j+k))
w3(I)

c) Analisis dengan conflict serializability dan simpulkan beserta penjelasan singkat.


Serializable karena tidak terjadi antar transaksi T1+T2+T3+T4 dan analisanya tidak ada
close atau saling menutupi
d) Analisis dengan view serializability dan simpulkan beserta penjelasan singkat.

Anda mungkin juga menyukai