人(rén)
已閱讀
已閱讀
APP開發人(rén)員(yuán)必須掌握的(de)數據庫優化(huà)技能
來(lái)源:lexintech.com 發布時(shí)間:2019-05-17
在一個(gè)APP開發項目中,數據庫設計和(hé)開發是相當重要的(de)工作。對(duì)于一個(gè)數據庫開發人(rén)員(yuán)來(lái)說,數據庫中最難以理(lǐ)解的(de)模塊,就是優化(huà)器。
作爲APP開發團隊中的(de)數據庫開發人(rén)員(yuán),如果對(duì)優化(huà)器不夠了(le)解,那他(tā)在對(duì)數據庫數據庫調優的(de)過程中就會很難做(zuò)好。從對(duì)優化(huà)器的(de)掌握程度上來(lái)判斷,數據庫開發人(rén)員(yuán)對(duì)優化(huà)器的(de)理(lǐ)解大(dà)緻可(kě)以分(fēn)成以下(xià)幾個(gè)層次。
一:粗淺了(le)解,比如知道優化(huà)器分(fēn)爲邏輯優化(huà)和(hé)物(wù)理(lǐ)優化(huà),了(le)解一些邏輯優化(huà)的(de)方法,知道執行計劃的(de)來(lái)源,能看懂(dǒng)優化(huà)器産生的(de)執行計劃。
二:詳細了(le)解,在粗淺了(le)解的(de)基礎上,能夠根據自己對(duì)優化(huà)器的(de)了(le)解,調整出優化(huà)器“喜愛(ài)”的(de) SQL 語句,并且對(duì)于産生的(de)執行計劃的(de)優劣一目了(le)然,知其然更知其所以然。
三:深度了(le)解,需要對(duì)優化(huà)器的(de)每個(gè)細節有清楚的(de)認知,在我們寫出一個(gè) SQL 語句之後,可(kě)以庖丁解牛式地在腦(nǎo)海中浮現出語句在優化(huà)器中的(de)優化(huà)過程,清楚地知道每個(gè)細節的(de)實現過程。
要想達到層次一隻需要閱讀一些基礎理(lǐ)論即可(kě),通(tōng)常,數據庫初學者對(duì)優化(huà)器的(de)了(le)解都處于這(zhè)個(gè)層次,但這(zhè)種了(le)解對(duì)于實際應用(yòng)的(de)意義不大(dà)。而要想達到層次三則需要細緻地解讀優化(huà)器的(de)源代碼,雖然作爲數據庫專家是必須要掌握到這(zhè)一層的(de),但這(zhè)個(gè)過程又過于“艱辛”。
而大(dà)多(duō)數數據庫從業人(rén)員(yuán)遊走在兩者之間,大(dà)家的(de)目标無非是在數據庫調優過程中手到擒來(lái)地使用(yòng)優化(huà)器查詢,也(yě)就是這(zhè)裏的(de)層次二。
那麽,有沒有辦法在不分(fēn)析數據庫内核源代碼的(de)情況下(xià),從數據庫使用(yòng)者的(de)角度出發,結合外在的(de)系統表信息、參數信息、執行計劃信息反向把優化(huà)器的(de)原理(lǐ)講清楚,從而确保大(dà)家進階到層次二,掌握優秀的(de)數據庫開發人(rén)員(yuán)必備的(de)核心技能優化(huà)器呢(ne)?
答(dá)案是肯定的(de),通(tōng)過深入的(de)挖掘數據庫的(de)元數據、參數、執行計劃,再結合數據庫優化(huà)器的(de)相關理(lǐ)論,一定能把優化(huà)器的(de)實現說清楚。
- 上一篇:ToB産品和(hé)ToC産品之間的(de)差别
- 下(xià)一篇:APP産品設計關于删除操作的(de)處理(lǐ)