Diarsipkan di bawah: Sistem Basis Data
Langkah dasar pemrosesan query :
1. Parsing dan translasi
a. Translasi query menjadi bentuk internal kemudian translasikan ke aljabar relasional
b. Parser memeriksa sintaks dan verifikasi relasi-relasi
2. Optimasi : memilih evaluasi plan yang paling rendah costnya
3. Evaluasi : query-execution engine memakai query-evaluation plan, mengeksekusi plan tersebut, dan mengembalikan hasilnya
Cost umumnya diukur sebagai total waktu diperlukan untuk menyelesaikan query
1. Banyak faktor yang menentukan cost : Kecepatan akses disk, CPU, atau sampai komunikasi jaringan
2. Kecepatan akses disk adalah faktor utama penentu cost dan relatif mudah diperkirakan. Kecepatan ini diukur dengan :
a. Number of seeks * average-seek-cost
b. Number of blocks read * average-block-read-cost
c. Number of blocks written * average-block-write-cost
Cost untuk menulis sebuah blok lebih besar dari cost untuk membaca blok karena setelah menulis, data akan dibaca lagi untuk memastikan data yang ditulis berhasil.
Operasi-operasi dalam pemrosesan query :
1. Selection dengan menggunakan algoritma searching seperti A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11
2. Sorting
Untuk relasi yang muat di memori, teknik ini seperti quicksort, sedangkan untuk relasi yang tidak cocok pada memori, external sort-merge cukup bagus.
3. Join diimplementasikan dengan beberapa algoritma seperti nested-loop join, block nested-loop join, indexed nested-loop join, merge-join, hash-join
4. Duplicate elimination dapat diimplementasikan dengan hashing atau sorting
5. Agregation dapat diimplementasikan dengan cara yang sama pada duplicate elimination
6. Projection diimplementasikan dengan melakukan proyeksi pada setiap tupel yang diikuti dengan duplicate elimination
7. Set operations (^,V,-) dapat digunakan sebagai varian dari merge-join setelah sorting atau varian dari hash-join
8. Outer join adalah modifikasi dari join dengan diikuti tambahan NULL sesuai dengan ruas yang diinginkan
No Comments Yet sejauh ini
Tinggalkan komentar
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>