1 / 17

Optimasi Query Terdistribusi

Optimasi Query Terdistribusi. Qomaruzzaman 08650047 Fajria Antoni 08650050 Ahmad Imaduddin 08650051 Jan Faris Majd 08650052 Ramini 08650054 Efi Laila Latifah 08650055 Fahrizal Surya P 08650057 Dedy Herianto 08650058. Optimasi Query.

chessa
Download Presentation

Optimasi Query Terdistribusi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Optimasi Query Terdistribusi Qomaruzzaman 08650047 FajriaAntoni 08650050 Ahmad Imaduddin 08650051 Jan FarisMajd 08650052 Ramini 08650054 EfiLailaLatifah 08650055 Fahrizal Surya P 08650057 DedyHerianto 08650058

  2. Optimasi Query Mencariurutan optimal darioperasiquery. Strategi yang terpilihdiharapkandapatmeminimalisasibiaya yang harusdikeluarkandalampengeksekusian query. Biayaeksekusimerupakankombinasibobotdari I/O, CPU, danbiayakomunikasi.

  3. Input Query Transformation rules Search Space Generation Equivalent QEP Cost Model Search Strategy Query Optimization Process Query optimizer, sebuahmodul software yang mendukungoptimasi query terdiridaritigakomponen, yaitu :

  4. Search Space Merupakansekumpulanalternatifperencanaaneksekusi yang merepresentasikan query. Seluruhalternatifadalahekuivalen, yaitumemberikanhasil yang samadenganurutanpengoperasian, pengimplementasian, dan performance yang berbeda. Representasidari query tersebutdibentukdalamsuatuoperator trees yang dapatdibuatdenganaturantransformasi. Equivalent Join trees BentukUmum Join trees

  5. Cost Model Cost Model memprediksibiaya yang harusdikeluarkandarisuatu query yang akandieksekusi. Terdiridari cost function, statistic database, dan formula. • Search Strategy Search strategy mengeksplorasi search space danmemilihstrategiterbaikdarialternatif yang adamenggunakan cost model. Search Strategy yang dapatdigunakanadalahdynamic programming yang bersifatdetermenistik, dimanamenghasilkansolusiterbaik, danrandomized strategies (seperti Iterative Improvement dan Simulated Annealing) yang berkonsentrasipadapencariansolusi optimal denganmenghindaribiayatinggidalamoptimasi.

  6. Optimasi query terpusat • Algoritma INGRES Algoritma INGRES menggunakanalgoritmaoptimasidinamis yang memecah query kalkuluskedalambagian yang lebihkecilsecararekursif. Mengombinasikanduatahapanyaitudekomposisidanoptimasikalkulus-aljabar.

  7. Menampilkannamadarikaryawan yang bekerjapadaproyek CAD/CAM q1 : SELECT EMP.ENAME FROM EMP,ASG,PROJ WHERE EMP.ENO=ASG.ENO AND ASG.PNO=PROJ.PNO AND PNAME=’’CAD/CAM’’ q11 : SELECT PROJ.PNO INTO JVAR FROM PROJ WHERE PNAME=’’CAD/CAM’’ q’: SELECT EMP.ENAME FROM EMP,ASG, JVAR WHERE EMP.ENO=ASG.ENO ANDASG.PNO=JVAR.PNO q12 : SELECT ASG.ENO INTO GVAR FROM ASG, JVAR WHERE ASG.PNO=JVAR.PNO q13 : SELECT EMP.ENAME FROM EMP,GVAR WHERE EMP.ENO=GVAR.ENO q : SELECT R2.A2,R3.A3,…,Rn.An FROM R1,R2,…Rn WHERE P1(R1.A’1) AND P2(R1.A1,R2.A2,…,Rn.An) q’ : SELECT R1.A1 INTO R’1 FROM R1 WHERE P1(R1.A’1) q’’: SELECT R2.A2,…,Rn.An FROM R’1,R2,…,Rn WHERE P2(V1.A1,…,Vn.An) INGRES query processor :

  8. AlgoritmaSistem R Sistem R merupakanoptimasi query statis yang didasarkanpada exhaustive search dariruangsolusi yang ada. Input untuk optimizer dengansistem R adalahpohonrelasialjabar yang dihasilkandaridekomposisidarisebuah query SQL. Kemudian output darisistemmerupakanrencanaeksekusi yang mengimplementasikanpohonrelasialjabar yang optimal. Optimizer menetapkanbiaya (dalamhalwaktu) darimasing-masingpohonkandidatdanmempertahankanpohondenganbiaya yang terkecil.

  9. Contoh : SELECT EMP.ENAME FROM EMP,ASG,PROJ WHERE EMP.ENO=ASG.ENO AND ASG.PNO=PROJ.PNO AND PNAME=’’CAD/CAM’’ Join Graph Alternative Join Orders

  10. Join Ordering Join ordering merupakanaspek yang pentingdalamsuatuoptimasi query, terlebihpada query terdistribusi. Join ordering menjadilebihpentingketika query merupakan query terdistribusikarenaakanmempengaruhi communication time. Join ordering dapatdilakukansecaralangsung, maupundenganmengombinasikandengansemijoinsdimanaakanmeminimalisasi communication cost.

  11. Optimasi query terdistribusi • Algoritma INGRES terdistribusi Fungsiobjektifdarialgoritmainiadalahuntukmeminimalisasikombinasibaik communication time maupun response time. Algoritmainijugamendapatkeuntunganpadafragmentasi, tetapihanyafragmentasi horizontal. Input untukalgoritmapemrosesan query inidinyatakandalam calculus relational-tupeldanskemainformasi (tipe network, lokasidanukuranmasing-masing site).

  12. Contoh: Beberapastrategi yang memungkinkan : • Eksekusikeseluruhan query (EMP ASG PROJ) denganmemindah EMP1dan ASG ke Site 2 • Eksekusi (EMP ASG) PROJ denganmemindah (EMP1 ASG) dan ASG ke Site 2, dll Pemilihandiantarakemungkinanstrategi-strategitrsebutmembutuhkanestimasiukurandarihasil intermediate. Misal, jikaukuran (EMP1 ASG) > ukuran (EMP1), makastrategi 1 lebihdipilihdaripadastrategi 2.

  13. Algoritma R* AlgoritmaR* merupakansubstansialekstensidariteknik yang dikembangkanuntuk optimizer sistem R. Algoritmainimenggunakanpendekatankompilasidimanasuatu exhaustive search dariseluruh alternative strategidilakukanuntukmemilihsalahsatudenganbiayaterendah. AlgoritmaSistem R* tidakmendukungpengimplementasianbaikdalamfragmentasimaupunreplikasi. Input untukalgoritmainiadalah query yang sudahdilokalisasi yang direpresentasikandalampohonrelasialjabar(query tree), lokasirelasi, danstatistiknya.

  14. Contoh : Query yang terdiridaripenggabungandarirelasi PROJ, eksternalrelasi, dan ASG, internal relasipada PNO. Kita asumsikanbahwa PROJ dan ASG disimpandalam site yang berbedadanterdapat index padaatribut PNO untukrelasi ASG. Strategieksekusi yang memungkinkanuntuk query tersebut : 1. Mengirimkankeseluruhan PROJ ke site dari ASG 2. Mengirimkankeseluruhan ASG ke site dari PROJ 3. Mengambiltupel ASG yang dibutuhkanuntukmasing-masingtupel PROJ 4. MemindahASG dan PROJ ke site ketiga • Algoritma R* memprediksi total waktudarimasing-masingstrategidanmemilih yang paling sedikit.

  15. Algoritma SDD-1 AlgoritmaSDD-1 berasaldarimetode yang disebutsebagaialgoritma ‘hill-climbing’, yang memilikikeistimewaansebagaialgoritmapemrosesan query terdistribusi yang pertama. Dalamalgoritmaini, perbaikandarisolusilayakawaldihitungsecararekursifsampaitidakadalagiperbaikanbiaya yang dapatdilakukan. Input untukalgoritmainitermasuk query graph, lokasirelasi, danstatistikdarirelasi.

  16. Contoh : Asumsikanbahwa TMSG = 0 dan TTR = 1. Solusilayakawal : ES0 : EMP  site 4 PAY  site 4 PROJ  site 4 Total.cost(ES0) = 4+8+1=13 Alternatif Splitting : ES1 : PAY  site 1 ES2 : (PAY EMP)  site 4 ES3 : PROJ  site 4 Total.cost(ES’) = 4+8+1 = 13

  17. Perbedaandariketigaalgoritmatersebut : • 1 = relation cardinality • 2 = number of unique values per attribute • 3 = join selectivity factor • 4 = size of projection on each join attribute • 5 = attribute size and tuple size

More Related