CPS216: Advanced Database Systems Notes 03:Query Processing (Overview, contd.)
CHAPTER 7 : OVERVIEW OF QUERY PROCESSING
description
Transcript of CHAPTER 7 : OVERVIEW OF QUERY PROCESSING
CHAPTER 7 OVERVIEW OF CHAPTER 7 OVERVIEW OF QUERY PROCESSINGQUERY PROCESSING
Disusun Oleh Ginong Pratidhina Nur M(08650002)Eka Farizqi Martalena(08650006)Devi Puspitasari (08650007)Rhesah Katu Unggara(08650017)Andi Febrianto (08650020)Intan Dwi Utami (08650022)Muhtar Ali Irfani (08650032)
OVERVIEW OF QUERY OVERVIEW OF QUERY PROCESSINGPROCESSINGQUERY PROCESSING Sebuah
proses 3-langkah yang mengubah query tingkat tinggi (relasional kalkulus SQL) ke sebuah query yang lebih rendah-tingkat yang setara dan lebih efisien (dari relasional aljabar)
1 Parsing dan translasi2 optimasi3 evaluasi
1 Query Processing 1 Query Processing ProblemProblem Contoh Transformasi dari SQL-query ke sebuah
hubungan RA-query EMP(ENO ENAME TITLE) ASG(ENOPNORESPDUR)
Query Cari nama-nama karyawan yang mengelola sebuah proyek
ndash High level query SELECT ENAME FROM EMPASG WHERE EMPENO = ASGENO AND RESP=lsquomanagerrsquo (DUR gt 37)
Dua kemungkinan transformasi query adalah Expression 1 ENAME(DURgt37andEMPENO=ASGENO(EMP
times ASG)) Expression 2 ENAME(EMP ⋊⋉ENO (DURgt37(ASG))) Ekspresi 2 menghindari produk mahal dan
besar Cartesian menengah dan karena itu biasanya lebih baik
ContContKami membuat asumsi berikut
tentang fragmentasi dataData (horizontal) terfragmentasi
Site1 ASG1 = ENOlerdquoE3rdquo(ASG)Site2 ASG2 = ENOgtrdquoE3rdquo(ASG)Site3 EMP1 = ENOlerdquoE3rdquo(EMP)Site4 EMP2 = ENOgtrdquoE3rdquo(EMP)Site5 ResultHubungan ASG dan
EMP yang terfragmentasi dengan cara yang samaHubungan ASG dan EMP secara lokal berkerumun di RESP atribut dan ENO masing-masing
ContCont Sekarang perhatikan ekspresinya bull Strategy 1 (sebagian eksekusi paralel) ndash Produce ASGprime1 and move to Site 3 ndash Produce ASGprime2 and move to Site 4 ndash Join ASGprime1 with EMP1 at Site 3 and move the result to Site
5 ndash Join ASGprime2 with EMP2 at Site 4 and move the result to Site
5 ndash Union the result in Site 5 bull Strategy 2 ndash Move ASG1 and ASG2 to Site 5 ndash Move EMP1 and EMP2 to Site 5 ndash Select and join at Site 5 bull Untuk mempermudah proyeksi akhir dihilangkan
Equivalent Distributed Execution Strategies
2 COMPLEXITY OF 2 COMPLEXITY OF RELATIONAL ALGEBRA RELATIONAL ALGEBRA OPERATIONSOPERATIONSbull Pemesanan operator aljabar relasional san
gat penting untuk pemrosesan query yang efisienbull Rule of thumb pindah operator mahal pada akhir pemrosesan querybull Biaya operasi RA
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
OVERVIEW OF QUERY OVERVIEW OF QUERY PROCESSINGPROCESSINGQUERY PROCESSING Sebuah
proses 3-langkah yang mengubah query tingkat tinggi (relasional kalkulus SQL) ke sebuah query yang lebih rendah-tingkat yang setara dan lebih efisien (dari relasional aljabar)
1 Parsing dan translasi2 optimasi3 evaluasi
1 Query Processing 1 Query Processing ProblemProblem Contoh Transformasi dari SQL-query ke sebuah
hubungan RA-query EMP(ENO ENAME TITLE) ASG(ENOPNORESPDUR)
Query Cari nama-nama karyawan yang mengelola sebuah proyek
ndash High level query SELECT ENAME FROM EMPASG WHERE EMPENO = ASGENO AND RESP=lsquomanagerrsquo (DUR gt 37)
Dua kemungkinan transformasi query adalah Expression 1 ENAME(DURgt37andEMPENO=ASGENO(EMP
times ASG)) Expression 2 ENAME(EMP ⋊⋉ENO (DURgt37(ASG))) Ekspresi 2 menghindari produk mahal dan
besar Cartesian menengah dan karena itu biasanya lebih baik
ContContKami membuat asumsi berikut
tentang fragmentasi dataData (horizontal) terfragmentasi
Site1 ASG1 = ENOlerdquoE3rdquo(ASG)Site2 ASG2 = ENOgtrdquoE3rdquo(ASG)Site3 EMP1 = ENOlerdquoE3rdquo(EMP)Site4 EMP2 = ENOgtrdquoE3rdquo(EMP)Site5 ResultHubungan ASG dan
EMP yang terfragmentasi dengan cara yang samaHubungan ASG dan EMP secara lokal berkerumun di RESP atribut dan ENO masing-masing
ContCont Sekarang perhatikan ekspresinya bull Strategy 1 (sebagian eksekusi paralel) ndash Produce ASGprime1 and move to Site 3 ndash Produce ASGprime2 and move to Site 4 ndash Join ASGprime1 with EMP1 at Site 3 and move the result to Site
5 ndash Join ASGprime2 with EMP2 at Site 4 and move the result to Site
5 ndash Union the result in Site 5 bull Strategy 2 ndash Move ASG1 and ASG2 to Site 5 ndash Move EMP1 and EMP2 to Site 5 ndash Select and join at Site 5 bull Untuk mempermudah proyeksi akhir dihilangkan
Equivalent Distributed Execution Strategies
2 COMPLEXITY OF 2 COMPLEXITY OF RELATIONAL ALGEBRA RELATIONAL ALGEBRA OPERATIONSOPERATIONSbull Pemesanan operator aljabar relasional san
gat penting untuk pemrosesan query yang efisienbull Rule of thumb pindah operator mahal pada akhir pemrosesan querybull Biaya operasi RA
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
1 Query Processing 1 Query Processing ProblemProblem Contoh Transformasi dari SQL-query ke sebuah
hubungan RA-query EMP(ENO ENAME TITLE) ASG(ENOPNORESPDUR)
Query Cari nama-nama karyawan yang mengelola sebuah proyek
ndash High level query SELECT ENAME FROM EMPASG WHERE EMPENO = ASGENO AND RESP=lsquomanagerrsquo (DUR gt 37)
Dua kemungkinan transformasi query adalah Expression 1 ENAME(DURgt37andEMPENO=ASGENO(EMP
times ASG)) Expression 2 ENAME(EMP ⋊⋉ENO (DURgt37(ASG))) Ekspresi 2 menghindari produk mahal dan
besar Cartesian menengah dan karena itu biasanya lebih baik
ContContKami membuat asumsi berikut
tentang fragmentasi dataData (horizontal) terfragmentasi
Site1 ASG1 = ENOlerdquoE3rdquo(ASG)Site2 ASG2 = ENOgtrdquoE3rdquo(ASG)Site3 EMP1 = ENOlerdquoE3rdquo(EMP)Site4 EMP2 = ENOgtrdquoE3rdquo(EMP)Site5 ResultHubungan ASG dan
EMP yang terfragmentasi dengan cara yang samaHubungan ASG dan EMP secara lokal berkerumun di RESP atribut dan ENO masing-masing
ContCont Sekarang perhatikan ekspresinya bull Strategy 1 (sebagian eksekusi paralel) ndash Produce ASGprime1 and move to Site 3 ndash Produce ASGprime2 and move to Site 4 ndash Join ASGprime1 with EMP1 at Site 3 and move the result to Site
5 ndash Join ASGprime2 with EMP2 at Site 4 and move the result to Site
5 ndash Union the result in Site 5 bull Strategy 2 ndash Move ASG1 and ASG2 to Site 5 ndash Move EMP1 and EMP2 to Site 5 ndash Select and join at Site 5 bull Untuk mempermudah proyeksi akhir dihilangkan
Equivalent Distributed Execution Strategies
2 COMPLEXITY OF 2 COMPLEXITY OF RELATIONAL ALGEBRA RELATIONAL ALGEBRA OPERATIONSOPERATIONSbull Pemesanan operator aljabar relasional san
gat penting untuk pemrosesan query yang efisienbull Rule of thumb pindah operator mahal pada akhir pemrosesan querybull Biaya operasi RA
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
ContContKami membuat asumsi berikut
tentang fragmentasi dataData (horizontal) terfragmentasi
Site1 ASG1 = ENOlerdquoE3rdquo(ASG)Site2 ASG2 = ENOgtrdquoE3rdquo(ASG)Site3 EMP1 = ENOlerdquoE3rdquo(EMP)Site4 EMP2 = ENOgtrdquoE3rdquo(EMP)Site5 ResultHubungan ASG dan
EMP yang terfragmentasi dengan cara yang samaHubungan ASG dan EMP secara lokal berkerumun di RESP atribut dan ENO masing-masing
ContCont Sekarang perhatikan ekspresinya bull Strategy 1 (sebagian eksekusi paralel) ndash Produce ASGprime1 and move to Site 3 ndash Produce ASGprime2 and move to Site 4 ndash Join ASGprime1 with EMP1 at Site 3 and move the result to Site
5 ndash Join ASGprime2 with EMP2 at Site 4 and move the result to Site
5 ndash Union the result in Site 5 bull Strategy 2 ndash Move ASG1 and ASG2 to Site 5 ndash Move EMP1 and EMP2 to Site 5 ndash Select and join at Site 5 bull Untuk mempermudah proyeksi akhir dihilangkan
Equivalent Distributed Execution Strategies
2 COMPLEXITY OF 2 COMPLEXITY OF RELATIONAL ALGEBRA RELATIONAL ALGEBRA OPERATIONSOPERATIONSbull Pemesanan operator aljabar relasional san
gat penting untuk pemrosesan query yang efisienbull Rule of thumb pindah operator mahal pada akhir pemrosesan querybull Biaya operasi RA
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
ContCont Sekarang perhatikan ekspresinya bull Strategy 1 (sebagian eksekusi paralel) ndash Produce ASGprime1 and move to Site 3 ndash Produce ASGprime2 and move to Site 4 ndash Join ASGprime1 with EMP1 at Site 3 and move the result to Site
5 ndash Join ASGprime2 with EMP2 at Site 4 and move the result to Site
5 ndash Union the result in Site 5 bull Strategy 2 ndash Move ASG1 and ASG2 to Site 5 ndash Move EMP1 and EMP2 to Site 5 ndash Select and join at Site 5 bull Untuk mempermudah proyeksi akhir dihilangkan
Equivalent Distributed Execution Strategies
2 COMPLEXITY OF 2 COMPLEXITY OF RELATIONAL ALGEBRA RELATIONAL ALGEBRA OPERATIONSOPERATIONSbull Pemesanan operator aljabar relasional san
gat penting untuk pemrosesan query yang efisienbull Rule of thumb pindah operator mahal pada akhir pemrosesan querybull Biaya operasi RA
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
Equivalent Distributed Execution Strategies
2 COMPLEXITY OF 2 COMPLEXITY OF RELATIONAL ALGEBRA RELATIONAL ALGEBRA OPERATIONSOPERATIONSbull Pemesanan operator aljabar relasional san
gat penting untuk pemrosesan query yang efisienbull Rule of thumb pindah operator mahal pada akhir pemrosesan querybull Biaya operasi RA
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
2 COMPLEXITY OF 2 COMPLEXITY OF RELATIONAL ALGEBRA RELATIONAL ALGEBRA OPERATIONSOPERATIONSbull Pemesanan operator aljabar relasional san
gat penting untuk pemrosesan query yang efisienbull Rule of thumb pindah operator mahal pada akhir pemrosesan querybull Biaya operasi RA
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
3 Karakteristik Query 3 Karakteristik Query ProcessorProcessor Languange bahasa 1048697 Untuk pengguna
kalkulus atau aljabar berdasarkan bahasa 1048697 Untuk prosesor query peta masukan ke dalam bentuk internal aljabar ditambah dengan komunikasi primitif
Type of optimization Exhaustive search _ Cost-based _ Optimal _ Combinatorial complexity in the number of relations
Heuristics _ Not optimal _ Regroups common sub-expressions _ Performs selection projection first _ Replaces a join by a series of semijoins _ Reorders operations to reduce intermediate relation size _ Optimizes individual operations
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
ContContOptimization Timing
StatisDinamisHybirdStatistics Relationfragments Attribute Common asumsi Decision Site
Sentralisasi Terdistribusi Terdistribusi
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
ContContNetwork topology
ndash Wide area networks (WAN) point-to-point
ndash Local area networks (LAN)
Exploration of Replicated Fragmentspenggunaan replikasi
untuk meminimalkan biaya komunikasi
Penggunaan Semijoins
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
4 LAYERS OF QUERY 4 LAYERS OF QUERY PROCESSINGPROCESSING
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
ContContDecompose calculus query into algebra
Query menggunakan global conceptual schema information
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
ContContData Localization
Pendistribusian query dipetakan ke query fragmen dan disederhanakan untuk menghasilkan satu yang baik
Global Query OptimizationCari dekat eksekusi strategi untuk yang
optimalCari urutan terbaik dari operasi di
query fragmen termasuk komunikasi operasi
Biaya fungsi yang didefinisikan didalam waktu yang diperlukan
Local Query OptimizationSentralisasi sistem algoritma
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal
5 KESIMPULAN5 KESIMPULAN bull pengolahan Query mengubah query tingkat tinggi
(kalkulusrelasional) menjadi setaratingkat yang lebih rendah query (aljabar relasional) Kesulitanutama adalah untuk mencapai efisiensi dalamtransformasi
bull optimasi Query bertujuan untuk mimize fungsi biaya I O biaya + biaya + biaya komunikasi CPU
bull pengoptimalan Query bervariasi menurut jenis pencarian(searchlengkap heuristik) dan jenisalgoritma (dinamis statis hibrida) Statistik yang berbeda dikumpulkan untuk mendukung query optimasi proses
bull pengoptimalan Query bervariasi oleh situs keputusan (terpusatdidistribusikan hybrid)
bull Query pengolahan dilakukan dengan urutan sebagai berikutDekomposisi query datalokalisasi optimasi global optimasi lokal