索引的重要性

2021-09-08 20:52:32 字數 718 閱讀 4021

昨天下午,徐州市百大超市****的吉經理又打**過來,說**商服務系統中的"銷售查詢"模組無法正常執行,鬱悶,難道又要跑一趟?開啟計算機,使用"遠端登入",竟然可以登入到他們的伺服器,想起來他們最近換了光纖,也就不奇怪了,呵呵,爽,不過到時候得建議他們禁用遠端登入啦,呵呵……

言歸正傳,看了一下頁面中的**,沒問題呀,奇怪……擷取其中的sql語句到查詢分析器中執行一下,有返回結果,但竟然要用去近兩分鐘的時間,怎麼回事?count一下,發現表裡面的資料已經有五百七十多萬行了,執行時間太長了,每日銷售明細已經到這麼多了,難怪查詢慢了呢。不過也不應該這麼慢,呵呵,看一下表結構,沒有主鍵倒也罷了(資料是由另外乙個傢伙從mis系統匯入的,沒有主鍵也不奇怪),竟然連索引都不建,建立索引,執行速度快多了,稍微增加查詢時間的限制長度和iis頁面的超時時間,基本上可以執行了,但還是比較吃力,可能是因為伺服器的效能不太好吧。再分析一下業務需求,kao,「銷售查詢」頁面上只提供最新三個月的資料的查詢,表裡放那麼多的資料幹嘛?把情況向他們反映了一下。

今天早上資料已經清理過了,他們建了另外乙個表用以備份過期資料,看了一下,新錶是沒建索引的,使用count計算總記錄數用去1分40秒的時間,資料工三百多萬條,原來的表中(我昨天建過索引)資料有二百多萬條,也用count計算總記錄數,只耗時兩秒鐘,索引真的是太重要啦。索引使資料庫程式無須對整個表進行掃瞄,就可以在其中找到所需資料,否則,機器累死也完成不了指定的查詢工作。

後記:這近六百萬的資料還真是誘人呀,呵呵,拖回來研究資料倉儲。

論MongoDB索引選擇的重要性

線上某業務,頻繁出現iops 使用率100 的 每秒4000iops 現象,每次持續接近1個小時,從慢請求的日誌發現是乙個 getmore 請求耗時1個小時,導致iops高 深入調查之後,最終發現竟是乙個索引選擇的問題。2017 11 01t15 04 17.498 0800 i command c...

重要性取樣

from scipy import stats from scipy.stats import norm import numpy as np import matplotlib.pyplot as plt def f x return np.sin x x def intf x1,x2 retur...

定時的重要性

2.wm timer訊息 是又定時器發出的訊息 首先我們先建立乙個定時器 函式原型 unit settimer hwnd hwnd,uint nidevent,uint nelapse,timerproc lptimerfunc 要建立定時器,還需要 a.視窗控制代碼 b.選擇識別符號 c.微秒級的...