SP1 的 S/C 管理報表
以前在查詢時,
我們是需要一頁便到主機去找一頁的資料.
所以你向下查一頁又往回查一頁, 雖然是同一頁,
但仍得由主機讀取資料. 當系統上使用人數越來越多,
這個多出來的一次便可能讓主機和網路不勝負荷, 產生瓶頸,
最後造成系統當機.
在 DOS 時代, 由於大部份工作站無硬碟,
臨時性檔案只能放在主機上; 對於網路和主機, 這是很大的負擔.
Windows 成為主流後, 工作站大抵有硬碟. 這是好消息.
我們現在利用這個電腦環境的變化,
把臨時性檔案放到每個工作站硬碟, 並且一次讀取資料.
檔案存放的位置在 \windows\temp 或 \windows\tmp, 也可能在其他資料夾,
跟各個工作站的設定有關. 理論上,
臨時性檔案在程式正常結束時便會清除; 實際上, 總有一些會殘留.
假如你想清除這些檔案, 記得它們都是以 ! 這個符號開頭的.
減少讀取次數和使用工作站硬碟能明顯減輕網路和主機負荷,
改善整個系統的效能.
這也符合現代資料庫系統重視效能和擴充性的趨勢. 對使用者來講,
前後翻頁的速度會比較快, 未來報表的設計可能較有彈性. 不過,
一次讀取也有它的缺點. 首先, 你須要先設定一個讀取筆數的上限,
免得動輒把整個資料庫讀一遍. 因為這個上限,
你可能要有好一點的紀律: 指定好上下限再查詢.
使用者紀律換來系統效能應該是筏算的;
另一條路便是不停更換更大更快的電腦 (但有時也無效).
SP1 在系統編碼
MAX-RECORD 設定一次查詢上限. 這個設定的最高值約在 20 億.
如果不設定, 一次查 1000 筆. 你也可在程式中臨時更改這個數值. 此外,
你可以利用編碼 LINES-PAGE 設定每頁的筆數, 讓一頁剛好一螢幕, 省去
scroll bar 拉上拉下的麻煩.
下載檔案為 et421zip.exe. 查詢和列印當中,
你可以中止作業.
註: 假如記憶体真的夠大, 當然可以不用硬碟.
不過這個想法在短時間內不可能成為事實.
擴充性指增加使用者郤不會明顯拖垮系統. |