簡體   English   中英

首先在Firebird上查詢速度慢

[英]First query slow on Firebird

啟動應用程序后,Firebird數據庫上的大型數據集上運行的第一個查詢總是很慢。 對同一查詢的后續調用(它是一個存儲過程)都可以。 我認為這與加載到內存中的某些內容有關,但我可以解釋為什么以及是否可以采取任何措施來解決問題。

如果存儲過程是第一個查詢,它會編譯存儲過程,它也會獲取緩沖區並緩存結果。 在第二個查詢中,該過程不會再次編譯(預先緩存)並且結果是即時的(對於某些操作系統,提取也在內存中,因此不需要磁盤io)

一種方法是優化sp或表格它們有多大? (每個表的記錄數)

一種簡單的優化方法是放置一個每天/小時運行一次的cron腳本來預先填充緩存,這樣你就可以快速獲得sp

也許這不是關於查詢,但連接時間(延遲)很長? [舊] Firebird / Interbase引擎出現了這樣的問題。

您沒有解釋您正在使用哪個Firebird版本,但在版本2.50中,存在一個錯誤(CORE 3227 - 存儲過程的慢速編譯),這可能是導致問題的原因。 更多細節: http//www.firebirdnews.org/?p = 5282&utm_source = feedburner&utm_medium = feed&utm_campaign = Feed%3A + FirebirdNews +%28Firebird + News%29

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM