sql數(shù)據庫查詢優(yōu)化_第1頁
已閱讀1頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、一個實例講解MySQL查詢優(yōu)化數(shù)據庫系統(tǒng)是管理信息系統(tǒng)的核心,基于數(shù)據庫的聯(lián)機事務處理(OLTP)以及聯(lián)機分析處理(OLAP)是銀行、企業(yè)、政府等部門最為重要的計算機應用之一。從大多數(shù)系統(tǒng)的應用實例來看,查詢操作在各種數(shù)據庫操作中所占據的比重最大,而查詢操作所基于的語句在SQL語句中又是代價最大的語句。舉例來說,如果數(shù)據的量積累到一定的程度,比如一個銀行的賬戶數(shù)據庫表信息積累到上百萬甚至上千萬條記錄,全表掃描一次往往需要數(shù)十分鐘,甚至數(shù)

2、小時。如果采用比全表掃描更好的查詢策略,往往可以使查詢時間降為幾分鐘,由此可見查詢優(yōu)化技術的重要性。筆者在應用項目的實施中發(fā)現(xiàn),許多程序員在利用一些前端數(shù)據庫開發(fā)工具(如PowerBuilder、Delphi等)開發(fā)數(shù)據庫應用程序時,只注重用戶界面的華麗,并不重視查詢語句的效率問題,導致所開發(fā)出來的應用系統(tǒng)效率低下,資源浪費嚴重。因此,如何設計高效合理的查詢語句就顯得非常重要。本文以應用實例為基礎,結合數(shù)據庫理論,介紹查詢優(yōu)化技術在現(xiàn)實

3、系統(tǒng)中的運用。分析問題許多程序員認為查詢優(yōu)化是DBMS(數(shù)據庫管理系統(tǒng))的任務,與程序員所編寫的SQL語句關系不大,這是錯誤的。一個好的查詢計劃往往可以使程序性能提高數(shù)十倍。查詢計劃是用戶所提交的SQL語句的集合,查詢規(guī)劃是經過優(yōu)化處理之后所產生的語句集合。DBMS處理查詢計劃的過程是這樣的:在做完查詢語句的詞法、語法檢查之后,將語句提交給DBMS的查詢優(yōu)化器,優(yōu)化器做完代●在條件表達式中經常用到的不同值較多的列上建立檢索,在不同值少的

4、列上不要建立索引。比如在雇員表的“性別”列上只有“男”與“女”兩個不同值,因此就無必要建立索引。如果建立索引不但不會提高查詢效率,反而會嚴重降低更新速度?!袢绻判虻牧杏卸鄠€,可以在這些列上建立復合索引(compoundindex)?!袷褂孟到y(tǒng)工具。如Infmix數(shù)據庫有一個tbcheck工具,可以在可疑的索引上進行檢查。在一些數(shù)據庫服務器上,索引可能失效或者因為頻繁操作而使得讀取效率降低,如果一個使用索引的查詢不明不白地慢下來,可以

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論