OVERVIEW QUERY PROCESSING Muhammad Hasan (07650071) Ginong Pratidhina Nur M (08650002) Eka Farizqi Martalena (08650006) Devi Puspitasari (08650007) R Katu Unggara (08650017) Andi Febriyanto (08650020) Intan Dwi Utami (08650022) Muhtar Ali Irfani (08650032) Masalah Query Processing • Pada dasarnya low-level Query mengimplementasikan strategi eksekusi untuk query. • Perubahan level query harus memenuhi nilai kebenaran dan efisien. Yaitu benar bila low level query hasilnya sama dengan query aslinya. • Setiap strategi eksekusi memiliki perbedaan dalam penggunaan sumber daya komputer. • Kesulitan utama ialah untuk memilih strategi eksekusi yang meminimalkan penggunaan sumberdaya (efisiensi). Tujuan Query Processing • Yaitu untuk mengubah query level tinggi dari basis data terdistribusi ke strategi eksekusi yang efiseien yang diperlihatkan pada low level language pada database lokal. • Tujuannya ialah mencapai efisiensi dan meminimalisir penggunaan sumber daya. • Pada sistem basis data terdistribusi yang harus diminimalisir adalah biaya CPU, I/O, dan komunikasi. Komplesitas Operasi Aljabar relasional • karena kompleksitas adalah relatif terhadap hubungan kardinalitas, operasi paling selektif yang mengurangi kardinalitas harus di lakukan terlebih dahulu. • operasi harus diperintah dengan meningkatkan kompleksitas sehingga hasil kartesius dapat dihindari atau ditunda. Karakteristik Query Processors • Bahasa Bahasa input untuk query processor dapat didasarkan pada kalkulus relasional atau aljabar relasional. • Jenis optimisasi (exhaustive search, heuristics) • Waktu optimisasi (statis, dinamis, hybrid) • Statistik untuk memilih operasi mana yang harus dilakukan terlebih dahulu. • Decision sites (Sentralisasi, Terdistribusi, Hybird) • Pemanfaatan topologi jaringan (Wide Area Network, Local Area Network) • Pemanfaatan Replicated fragment untuk memotong biaya komunikasi. • Penggunaan semijoins Mengurangi ukuran ukuran relasi operand. Meningkatkan pemrosesan operasi join terdistribusi yang mengurangi ukuran pertukaran data antar situs. Lapisan Pemrorosesan Query • Query decomposition: Menguraikan pendistribusian query kalkulus menjadi query aljabar pada hubungan global. • Data localization: Membatasi data query dalam menggunakan data informasi distribusi. • Global optimization: Menemukan startegi eksekusi untuk queri yang mendekati optimal. • Local optimization: Memilih algoritma untuk melakukan operasi relational. Kesimpulan • Pengolahan Query berfungsi untuk mengubah query level tinggi (relasional kalkulus/SQL) ke sebuah level query yang lebih rendah (relasional aljabar) untuk mencapai efisiensi. • Optimasi query bertujuan untuk meminimalkan fungsi biaya CPU, I/O, dan komunikasi. • Pengoptimalan query bervariasi menurut jenis pencariannya (exhaustive search, heuristic) dan jenis algoritma (dinamis, statis, hybrid). • Statistik berfungsi untuk mendukung optimasi query. • Optimalisasi query bervariasi oleh decision site (terpusat, terdistribusi, hybrid) • Pengolahan query dilakukan dengan urutan sebagai berikut: query decompotion, data localization, global optimization, dan local optimization.