Finals Flashcards
Week 9 - Week 14
Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis disebut
Bahasa query formal
Kumpulan operasi terhadap relasi dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu relasi baru adalah pengertian dari
Aljabar relational
Operator relational yg digunakan untuk memilih tuple atau record adalah
Restrict (σ)
Tanda “π” pada operator relational melambangkan operator project yg berfungsi untuk
memilih atribut atau field
Sebutkan 4 operator relational
Restrict (σ), Project (π), Divide (÷), Join (θ)
(<,>,>=,<=,=,#) disebut operator
perbandingan
Penghubung AND dan OR dilambangkan dengan
^ dan v
Operator relational dasar yg digunakan untuk menyeleksi tuple adalah
Selection (σ)
Untuk membentuk relasi baru dengan mengcopy atribut dan domain dari relasi tersebut berdasarkan argumen pada operator tersebut merupakan pengertian dari
Operator relational dasar Projection (π)
Operator dengan dua relasi untuk menghasilkan tabel hasil perkalian kartesian adalah
Cartesian Product (X)
Operator Union (⋃) digunakan untuk
menghasilkan gabungan tabel dengan syarat kedua tabel memiliki atribut yg sama
Operator dasar yang digunakan untuk mengeliminasi entity atau record dari suatu tabel yang ada pada tabel yang lain adalah
Set Diference (-)
Ada berapa operator relational tambahan?
4 yakni set intersection (⋂) , Theta Join, Natural join (θ/⨝) , Division (÷)
Terdapat dua operator untuk menggabungkan operasi cartesian product dengan operasi selection yakni theta join dan natural join, apa perbedaanya?
Natural join dilakukan pada kolom yg sama** (1 operasi)** dan hanya menghasilkan tuple dengan nilai yg sama pada 2 atribut bernama sama di 2 relasi berbeda. Sedangkan theta join kombinasinya tidak hanya nilai dari 2 atribut tetapi bisa menggunakan operator perbandingan
DDL merupakan singkatan dari
Data Definition Language
Sebutkan perintah DDL
Create, Drop, Alter
Bahasa pemrograman yg digunakan untuk manajemen data dalam basis data adalah
Data Manipulation Language (DML)
Insert, select, update, dan delete merupakan perintah untuk bahasa pemrograman
DML
Untuk memilih data dari dua tabel atau lebih digunakan perintah
JOIN
Syarat dapat dilakukan JOIN adalah
- Harus memiliki lebih dari 1 tabel
- Minimal harus ada 1 atribut yang sama (perbedaan nama tidak masalah asal nilainya sama)
Inner join dilakukan untuk
mencari nilai yg beririsan
berapa jumlah join yg dibutuhkan untuk menggabungkan lebih dari 2 tabel join
jumlah tabel -1
Perintah untuk menggabungkan dua tabel dengan menampilkan data yg bersesuaian antara dua tabel dan semua record pada tabel kiri adalah
Outer left join/left join
Outer right join/right join digunakan untuk
menggabungkan dua tabel dengan menampilkan data yg bersesuaian antara dua tabel dan semua record pada tabel kanan.
Data access disebut juga DCL yg merupakan singkatan dari
Data Control Language
Sebutkan perintah - perintah dan fungsinya dalam DCL
- Grant untuk memberikan hak akses pengguna
- Revoke untuk menarik hak akses pengguna
Dalam data integrity terdapat perintah recover tabel yg berguna untuk
membackup data
SELECT…INTO OUTFILE (ekspor), LOAD (impor), dan RENAME TABLE merupakan perintah-perintah…
Auxiliary
Perintah apa saja yg termasuk fungsi aggregate?
COUNT (jumlah), SUM (total), AVG (rata-rata), MIN, MAX
subselect yg digunakan pada klausa WHERE dan HAVING dipernyataan select luar untuk menghasilkan tabel akhir disebut
Subquery
Apa perintah Order by dapat digunakan pada subquery?
TIDAK, hanya dapat digunakan pada pernyataan select luar
Apa syarat penggunan Select pada subquery
Select harus berisi satu nama kolom tunggal atau ekspresi kecuali untuk subquery2 menggunakan kata kunci EXIST.
Secara default nama kolom di subquery mengacu pada…
nama tabel di clausa FROM dari subquery tersebut
Saat subquery adalah salah satu dua operan dilibatkan di pembandingan, subquery harus muncul di…
sisi kanan pembanding
Jika subquery diawali kata ALL maka akan bernilai TRUE jika…
Semua nilai terpenuhi
Agar Subquery bernilai TRUE jika sedikitnya satu nilai yg terpenuhi, subquery harus diawali dengan kata kunci
ANY
EXIST akan mengirimkan TRUE jika dan hanya jika…
terdapat sedikitnya satu baris ditabel hasil yg dikirim oleh subquery
Jika subquery mengirim tabel kosong berarti EXIST bernilai
FALSE
kumpulan data yang digunakan bersama yang saling terhubung secara logic tetapi tersebar secara fisik pada suatu jaringan komputer disebut
Basis data terdistribusi
Sebutkan karakteristik basis data terdistribusi
- Digunakan bersama secara logic tersebar pada sejumlah komputer yang berbeda
- Komputer yg dihubungkan menggunakan jaringan komunikasi
- Data pada masing-masing situs dapat menangani aplikasi2 lokal secara otonom
- Data pada masing2 situs dibawah kendali satu DBMS
- Masing2 DBMS berpartisipasi dalam sedikitnya satu aplikasi global
Apa keuntungan dari Fully Connected Network
jika salah satu node rusak, yg lainnya masih dapat berjalan (tetapi biaya mahal)
reliability rendah, dan biaya dapat ditekan merupakan keuntungan dari topologi distribusi data…
Partialy Connected Network
Tree structured network memiliki kerugian
jika node pusat (A) rusak, semua akan rusak karena bersifat sentral
Apa keuntungan dari Ring network
Jika satu rusak, yg lain masih berjalan
Control management pada Star Network lebih terjamin dan reliability nya rendah karena bersifat sentral, namun kekurangannya adalah
kalau pusat rusak yg lainnya rusak
Apa saja keuntungan basis data terdistribusi?
- mengikuti struktur organisasi
- adanya otonom lokal
- dapat dipakai bersamaan
- peningkatan ketersediaan, kehandalan, dan kinerja
- ekonomis
- pertumbuhannya modular
Sebutkan kerugian basis data terdistribusi
- Software mahal
- kompleks
- keamanan lemah
- sulit menjaga keutuhan data
- kurangnya standar dan pengalaman
proses pemetaan database dimana database dipecah-pecah berdasarkan kolom dan baris yg kemudian disimpan dalam site atau unit komputer yg berbeda dalam suatu jaringan data, sehingga memungkinkan untuk pengambilan keputusan terhadap data yg telah terbagi disebut…
Fragmentasi Data
aplikasi bekerja dengan tampilan daripada seluruh relasi, oleh karena itu untuk distribusi data, langkah yg tepat untuk bekerja dengan himpunan bagian dari relasi sebagai unit distribusi, merupakan alasan diperlukan fragmentasi dibidang
Penggunaan
Mengapa keamanan menjadi alasan diperlukannya fragmentasi
karena data yg tidak diperlakukan oleh aplikasi lokal tidak disimpan dan akibatnya data tidak tersedia untuk pengguna yg tidak sah.
Salah satu alasan diperlukannya fragmentasi adalah efisiensi, karena
data disimpan dekat dengan tempat yg paling sering digunakan, dan data yg tidak diperlukan oleh aplikasi lokal tidak disimpan
suatu transaksi dapat dibagi menjadi beberapa subquery yg beroprasi fragmen,sehingga memungkinkan transaksi dapat dilakukan dengan aman untuk dieksekusi secara paralel, merupakan alasan diperlukan fragmentasi dibidang
Paralellisme
Performance akan turun karena data tersebar, butuh proses untuk penggabungan kembali, dan integritas terganggu karena kegagalan pada salah satu site database. Merupakan …
Kerugian Fragmentasi
Apa saja yg harus di definisikan dalam fragmentasi?
- Completeness : data harus menyatu dengan relasinya
- Reconstruction : setelah dipecah, data masih memungkinkan untuk digabung kembali
- Disjointness : tidak boleh diikutkan dalam fragmen lain agar tidak terjadi redudancy data
Apa yg dimaksud dengan fragmentasi horizontal
terdiri dari tuple dari fragment global yg kemudian dipecah menjadi beberapa subset
fragmentasi yg membagi atribut2 dari fragment global yg tersedia menjadi beberapa grup disebut
fragmentasi vertical
fragmentasi yang didefinisikan menggunakan operasi Selection dan Projection dari aljabar relational disebut
fragmetasi campuran
bagaimana cara untuk membangun fragmentasi campuran?
menggunakan fragmentasi horizontal pada fragmentasi vertical atau sebaliknya
aksi yg dilakukan pengguna dimana dapat mengakses atau mengubah isi database disebut
Transaksi
Commit adalah
saat transaksi berjalan sukses
saat transaksi gagal dan kembali ke keadaan semula disebut
rollback
Apa yg dimaksud dengan konkurensi?
proses transaksi terhadap database yg terjadi pada waktu yg bersamaan
masalah kehilangan modifikasi (lost update problem) terjadi jika
dua transaksi mengakses item database yg sama yg mengakibatkan nilai dari database tersebut menjadi tidak benar
masalah yang timbul jika transaksi membaca suatu record yg sudah dimodifikasi oleh transaksi lain tetapi belum terselesaikan (uncommited), dan terdapat kemungkinan kalau transaksi tersebut dibatalkan (rollback) adalah
Masalah Modifikasi sementara (uncommited update problem)
Analisa tidak konsisten ( inconsistency analysis) timbul jika
sebuah transaksi membaca suatu nilai tetapi transaksi yg kedua mengupdate beberapa nilai tersebut selama eksekusi transaksi pertama.
masalah konkurensi dapat diatasi dengan locking yg mana berfungsi untuk
menjaga record agar tidak dimodifikasi oleh transaksi lain
jenis lock yang memungkinkan pengguna membaca dan mengubah record, sedangkan pengguna konkuren lain tidak diperbolehkan adalah
Exclusive (X) Lock
Share (S) lock memungkinkan pengguna dan pengguna konkuren untuk
membaca record tetapi tidak mengubahnya
Apa yg terjadi jika transaksi A menggunakan kunci X pada record R?
maka permintaan transaksi B harus menunggu sampai transaksi A melepaskan kunci
terdapat 2 kondisi transaksi B jika transaksi A menggunakan kunsi S yakni
jika transaksi B ingin menggunakan kunci S maka dapat digunakan bersamaan dengan transaksi A, namun jika transaksi B ingin menggunakan kunci X, maka harus menunggu transaksi A melepaskan kunci
Bagaimana cara melepaskan kunci?
dengan Synchpoint, Rollback atau Commit
deadlock adalah
kondisi dimana semua transaksi menunggu
Timestamping adalah
alternatif mekanisme kontrol konkurensi yang dapat menghilangkan deadlock
- Suatu transaksi memerintahkan untuk membaca item yg sudah diupdate transaksi yg belakangan
- Suatu transaksi memerintahkan untuk menulis item g nilainya sudah dibaca atau ditulis oleh transaksi yg belakangan
masalah diatas merupakan masalah yg timbul pada
timestamping
Jika timestamp transaksi A lebih kecil dari transaksi B, maka
transaksi A selalu dilaksanakan sebelum transaksi B
sebutkan fungsi R-timestamp(Q) dan W-timestamp(Q)
- R-timestamp(Q) : menunjukkan nilai timestamp terbesar pada transaksi yg berhasil menjalankan perintah read
- W-timestamp(Q) : menunjukkan nilai timestamp terbesar pada transaksi yg berhasil menjalankan perintah write
apa yg menyebabkan terjadinya crash (kegagalan) dari suatu sistem?
Disk crash, Power failure, Software error
apa yg terjadi pada kondisi software error?
output tidak betul dan sistem databasenya akan memasuki kondisi tidak konsisten
kondisi dimana informasi pada memori utama dan register akan hilang disebut
power failure
- informasi volatile (RAM) akan hilang
- informasi pada non volatile (ROM) dan stable storage (Harddisk RAID) tidak akan hilang
Merupakan kondisi storage jika terjadi
Failure
Logical error terjadi jika
program tidak dapat dijalankan karena kesalahan input, data tidak ditemukan, overflow
kegagalan dimana sistem berada pada keadaan yg tidak diinginkan. e.g. deadlock, dimana program tidak dapat dilanjutkan namun setelah beberapa waktu program dapat dijalankan kembali, disebut
system error
system crash terjadi karena
kegagalan fungsi perangkat keras, sehingga data pada volatile storage hilang, tetapi data pada non volatile storage tidak.
kondisi dimana hilangnya data dari block disk karena keruasakan head atau kesalahan pda waktu pengoperasian transfer data disebut
disk failure
Proteksi data terhadap perusakan data dan pemakaian oleh pemakai yg tidak mempunyai izin disebut juga dengan
Security
Contoh penyalahgunaan database yg disengaja adalah
Insert, Delete & Update oleh pihak yg tidak berwenang
anomali karena pendistribusian data pada beberapa komputer, merupakan penyalahgunaan database….
yang tidak disengaja
Sebutkan tingkatan masalah security!
- phisical : pengamanan fisik
- man : wewenang user
- sistem operasi : keamanan sistem operasi jaringan
- sistem database : hak akses user
cara yg diberikan pada seorang pengguna untuk mendapatkan model database yg sesuai dgn kebutuhan perorangan disebut juga dengan
konsep VIEW
integrity dimana memungkinkan pengubahan database oleh pemakai berwenang sehingga tidak akan menyebabkan inkonsistensi data disebut
integrity konstains
integrity rule terbagi menjadi
integrity entity, dan integrity referensi
kondisi dimana suatu domain dapat dipakai sebagai kunci primer bila merupakan atribut tunggal pada domain yg bersangkutan disebut dengan
integrity referensi
sebutkan contoh integrity entity
tidak ada satu komponen kunci primer yg kosong