




已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
查詢處理與查詢 優(yōu)化,目 錄,查詢處理,查詢優(yōu)化,查詢處理,查詢處理(query processing)是指從數(shù)據(jù)庫中提取數(shù)據(jù)時(shí)所涉及的一系列活動(dòng)。 語法分析與翻譯 查詢優(yōu)化 查詢執(zhí)行,查詢處理過程,語法分析與翻譯器 查詢處理開始之前,系統(tǒng)必須將查詢語句翻譯成可使用的形式。 語法分析與翻譯階段的主要工作有: 檢查用戶查詢的語法,利用數(shù)據(jù)字典驗(yàn)證查詢中出現(xiàn)的關(guān)系名、屬性名等是否正確; 構(gòu)造該查詢語句的語法分析樹表示,并將其翻譯成關(guān)系代數(shù)表達(dá)式。,查詢處理過程,查詢執(zhí)行計(jì)劃與查詢優(yōu)化器 一個(gè)給定的查詢?nèi)蝿?wù),一般都會(huì)有多種計(jì)算結(jié)果的方法 例如,考慮如下查詢 select studentName from Student where classNo=CS0701 and sex=女 該查詢語句可翻譯成如下關(guān)系表達(dá)式中的任意一個(gè) classNo=CS0701(sex=女(studentName(Student) sex=女(classNo=CS0701(studentName(Student) classNo=CS0701(studentName(sex=女(Student) studentName(sex=女(classNo=CS0701(Student),查詢處理過程,查詢執(zhí)行計(jì)劃與查詢優(yōu)化器 執(zhí)行一個(gè)查詢,不僅需要提供關(guān)系代數(shù)表達(dá)式,還要對(duì)該表達(dá)式加上注釋說明如何執(zhí)行每個(gè)操作 加了“如何執(zhí)行”注釋的關(guān)系代數(shù)運(yùn)算稱為執(zhí)行原語 用于執(zhí)行一個(gè)查詢的原語操作序列稱為查詢執(zhí)行計(jì)劃 不同的查詢執(zhí)行計(jì)劃會(huì)有不同的代價(jià) 構(gòu)造具有最小查詢執(zhí)行代價(jià)的查詢執(zhí)行計(jì)劃是DBMS的責(zé)任 這項(xiàng)工作稱為查詢優(yōu)化,由查詢優(yōu)化器來完成,查詢處理過程,關(guān)系數(shù)據(jù)庫系統(tǒng)和非過程化的SQL語言能夠取得巨大成功關(guān)鍵是得益于查詢優(yōu)化技術(shù)的發(fā)展 查詢優(yōu)化是影響RDBMS性能的關(guān)鍵因素 查詢執(zhí)行引擎 根據(jù)輸入的查詢執(zhí)行計(jì)劃,調(diào)用相關(guān)算法實(shí)現(xiàn)查詢計(jì)算,并將計(jì)算結(jié)果返回給用戶 有效地對(duì)內(nèi)存緩沖區(qū)進(jìn)行管理是影響查詢執(zhí)行性能的非常重要的方面,目 錄,查詢處理,查詢優(yōu)化,查詢優(yōu)化,處理一個(gè)給定的查詢,尤其是復(fù)雜的查詢,通常會(huì)有許多種策略。 查詢優(yōu)化(query optimization)就是從這許多策略中找出最有效的查詢執(zhí)行計(jì)劃的處理過程。 RDBMS能夠構(gòu)造并選擇出一個(gè)具有最小查詢執(zhí)行代價(jià)的查詢執(zhí)行計(jì)劃,查詢優(yōu)化的必要性,不同查詢執(zhí)行計(jì)劃的執(zhí)行時(shí)間分析 Q1 =SN(s.s# = sc.s# sc.c# = c2(SSC) Q2 =SN(sc.c# = c2(S SC) Q3 =SN(S sc.c# = c2(SC),(1)第一種情況 計(jì)算廣義笛卡爾積 作選擇操作 作投影操作 執(zhí)行總時(shí)間為105s,(2)第二種情況 計(jì)算自然連接 作選擇操作 作投影操作 執(zhí)行總時(shí)間為205s,(3)第三種情況 先對(duì)SC作選擇運(yùn)算 作連接運(yùn)算 作投影操作 執(zhí)行總時(shí)間為10s,查詢優(yōu)化概述, 例:找出2008級(jí)修讀“數(shù)據(jù)庫系統(tǒng)概論”課程的學(xué)生姓名。初始關(guān)系表達(dá)式為: studentName(grade=2008courseName=DB(Class Student) (Score Course), 轉(zhuǎn)換后的關(guān)系代數(shù)表達(dá)式為: studentName(grade=2008(Class) Student) (Score courseName=DB(Course),查詢優(yōu)化概述, 查詢優(yōu)化分3步進(jìn)行 邏輯優(yōu)化,產(chǎn)生邏輯上與給定關(guān)系代數(shù)表達(dá)式等價(jià)的表達(dá)式; 代價(jià)估計(jì),估計(jì)每個(gè)執(zhí)行計(jì)劃的代價(jià); 物理優(yōu)化,對(duì)所產(chǎn)生的表達(dá)式以不同方式作注釋,產(chǎn)生不同的查詢執(zhí)行計(jì)劃。 查詢優(yōu)化器中第步和第步是交叉進(jìn)行的 先產(chǎn)生一些等價(jià)的表達(dá)式并加以注釋 再進(jìn)一步產(chǎn)生一些等價(jià)表達(dá)式并加以注釋,依此類推 第步是基于系統(tǒng)收集的一些統(tǒng)計(jì)信息,如關(guān)系的大小、屬性值的分布、B+樹索引的深度等,對(duì)一個(gè)執(zhí)行計(jì)劃的代價(jià)進(jìn)行事先估計(jì),關(guān)系表達(dá)式轉(zhuǎn)換, 等價(jià)規(guī)則 合取選擇運(yùn)算的級(jí)聯(lián)分解 選擇運(yùn)算滿足交換律 系列投影的最后有效性 選擇操作與連接相結(jié)合 =E1 E2 ,等價(jià)規(guī)則,連接運(yùn)算的結(jié)合律 自然連接運(yùn)算的結(jié)合律: (E1 E2) E3 = E1 (E2 E3) 連接運(yùn)算的結(jié)合律:(E1 E2) E3 = E1 (E2 E3) 選擇運(yùn)算對(duì)連接運(yùn)算的分配律 選擇條件0的所有屬性只涉及連接的表達(dá)式之一時(shí),滿足分配律 E2) = E2 當(dāng)選擇條件1只涉及E1的屬性,且選擇條件2只涉及E2的屬性時(shí)滿足分配律 E2) = ,等價(jià)規(guī)則,投影運(yùn)算對(duì)連接運(yùn)算的分配律 令A(yù)1、A2分別代表E1、E2的屬性,假設(shè)連接條件只涉及A1A2中的屬性,則 E2) = 令A(yù)1、A2分別代表E1、E2的屬性;令A(yù)3是E1中出現(xiàn)在連接條件中但不在A1A2中的屬性;令A(yù)4是E2中出現(xiàn)在連接條件中但不在A1A2中的屬性 E2 ) = ,關(guān)系表達(dá)式轉(zhuǎn)換, 轉(zhuǎn)換實(shí)例 studentName(grade=2008courseName=DB(Class Student) (Score Course) studentName(grade=2008(Class) Student) Score) courseName=DB(Course) 步驟: 應(yīng)用等價(jià)規(guī)劃(1) ,表達(dá)式可以轉(zhuǎn)換為 studentName(grade=2008(courseName=DB(Class Student) (Score Course) 兩次應(yīng)用等價(jià)規(guī)劃(7)的第條 ,表達(dá)式可以轉(zhuǎn)換為 studentName(grade=2008(Class Student) courseName=DB(Score Course),轉(zhuǎn)換實(shí)例,studentName(grade=2008courseName=DB(Class Student) (Score Course) studentName(grade=2008(Class) Student) Score) courseName=DB(Course) 步驟: 再應(yīng)用兩次等價(jià)規(guī)劃(7)的第條,表達(dá)式可以轉(zhuǎn)換為 studentName(grade=2008(Class) Student) (courseName=DB(Score) Course) 第四,應(yīng)用等價(jià)規(guī)劃(5),表達(dá)式可以轉(zhuǎn)換為 studentName(grade=2008(Class) Student) (Course courseName=DB(Score) 應(yīng)用等價(jià)規(guī)劃(6)的第條, 得到
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)業(yè)發(fā)展月報(bào)
- 新年上班發(fā)言稿
- 2025年存儲(chǔ)用貴金屬材料合作協(xié)議書
- 冰雪旅游行業(yè)趨勢及市場前景分析報(bào)告
- 人工智能在攝影學(xué)生實(shí)踐能力培養(yǎng)中的作用
- 國內(nèi)外數(shù)智賦能課程教改的現(xiàn)狀與趨勢
- 初中語文教師個(gè)人工作計(jì)劃10篇
- 使用合同范本好處
- 品種權(quán)轉(zhuǎn)讓合同范本
- 叉車舊車出售合同范例
- 2024肝硬化中醫(yī)診療指南
- 12j912-2常用設(shè)備用房
- 農(nóng)貿(mào)市場保安工作總結(jié)
- 聲學(xué)設(shè)計(jì)音響合同
- 2024年湖南長沙自貿(mào)投資發(fā)展集團(tuán)有限公司招聘筆試沖刺題(帶答案解析)
- 醫(yī)院醫(yī)務(wù)人員聘用簡單合同范本
- JBT 14714-2024 鋰離子電池X射線檢測設(shè)備(正式版)
- DL-T1362-2014輸變電工程項(xiàng)目質(zhì)量管理規(guī)程
- 金融知識(shí)普及
- (100題)2024時(shí)事政治考試題庫
- 新概念英語第二冊(cè)-Lesson18-同步習(xí)題含答案
評(píng)論
0/150
提交評(píng)論