作者: LikPan 時間: 2017-6-8 10:50 標題: PHP 搜尋數據統計導致過慢問題
想請教各位師兄,本身我開發咗個搜尋器俾自己用,咁本身都好多 filter。
咁我依家想做一 D 數據統計,包括:
最常搜尋關鍵字
不同分類平均搜尋選擇的價錢
最常搜尋的分類
但我一加咗呢堆數據後,搜尋變得極慢極慢,想知個設計思路係咪錯咗
依家係純粹係搜尋時去做呢 D 統計,咁佢執行完呢堆 PHP 先 load 結果,我都明會慢咗
想知有無更好方案? 感謝!
作者: gamezz 時間: 2017-6-8 12:28
回覆 1# LikPan
db加左index未?
作者: vturn 時間: 2017-6-8 12:30
都係db度著手,加idx或者改schema
作者: wingwell 時間: 2017-6-8 14:59
加入 limit 可能會好D
作者: LikPan 時間: 2017-6-9 14:19
你指每個 table?
每個 table id 算唔算?
作者: LikPan 時間: 2017-6-9 14:20
主要係改 schema 思路諗唔透。。。
作者: LikPan 時間: 2017-6-9 14:20
咁個統計會唔會唔準?
作者: 7h1r733n 時間: 2017-6-9 14:35
又冇ddl, dml, php code, 靠估?
作者: domeso 時間: 2017-6-9 14:39
DB schema? how query is called?
作者: 7h1r733n 時間: 2017-6-9 14:40
我又估… db 冇index, query 冇用index, design 唔適合用index, 寫得衰, 以為寫得好但其實寫得衰, 用左orm, db config 有問題, 唔夠resource, network 慢, 風水影響
作者: gamezz 時間: 2017-6-11 23:40
你要用到既field而又會重覆既,都可以加index, 最好都係有你d data sample
via HKEPC Reader for Android
作者: sk2k 時間: 2017-6-12 01:38
其實只講左個問題表徵 (就係慢) 乜資料都無比, 等人靠估比意見然後再逐個 reject, 鬼知你乜思路, 結論係.. 嘥氣...
作者: 7h1r733n 時間: 2017-6-12 01:58
你要用到既field而又會重覆既,都可以加index, 最好都係有你d data sample
via HKEPC Reader for Android ...
gamezz 發表於 2017-6-11 23:40
邊個教你架? 唔該拖出去打..
唔識就問吓DBA.. 乜野係INDEX.. 同乜野時候用INDEX.. INDEX唔係隨便落既.
作者: gamezz 時間: 2017-6-12 12:07
回覆 13# 7h1r733n
細公司無 DBA
我意思係 join table 會用到的key (XXXX_ID) 或者 enum, 有錯求指正
作者: 7h1r733n 時間: 2017-6-12 14:02
本帖最後由 7h1r733n 於 2017-6-12 14:32 編輯
回覆 7h1r733n
細公司無 DBA
我意思係 join table 會用到的key (XXXX_ID) 或者 enum, 有錯求指正 :adore ...
gamezz 發表於 2017-6-12 12:07
幾時落index... 落唔落index.. 只能講.. it depends.....
我貼幾條link比你... 雖然有D舊.. 今年係2017年.. 但講D野都係正確既..
How to avoid the full table scan
Blocks read using index vs. full table scan
Reducing LIOs
我舉一個好簡單既例... HDD/SSD sequential read vs 4k random read.. 咁你就應該明... 你要select越多野.. 個index就會越慢... 有時會index照落.. 但寫query果陣會停左唔用個index.. 特別係類似要gen report呢D時候..
上面只係講"Read"
一般黎講經常Insert, 大量Update既table.. 有index都係會..."慢D既"

