Solaris Resource Manager 1.3 系統管理指南

批次工作量

大多數的商業安裝都需要批次處理的功能。批次處理通常在夜間進行,這時日間的線上工作量大量減少。這麼做的原因有二:將一天的交易量匯入報告中,並且防止批次工作量影響到線上作業。

請參見範例中有關控制執行批次工作的環境中一個階層的說明;本節也將介紹處理中使用的 Solaris Resource Manager 指令。

批次工作量所用的資源

批次工作量是線上交易處理 (OLTP) 和決策支援系統 (DSS) 工作量兩者之間的混合體,其對系統造成的影響介於這兩者之間。一個批次工作量可以包括許多可重覆的資料庫交易,而每一個又含有極重的計算工作在內。舉一個簡單的例子,譬如當天總營業額的計算。這時,批次處理會從資料庫中將當天每一筆營業交易都擷取出來,摘取營業總額,持續不斷地計算總數。

批次處理一般上會在處理器與 I/O 資源上放置高的需求,由於需要大量的 CPU 來進行批次處理與供資料庫使用,因此會從後端資料庫為擷取的每個異動生成大量的 I/O。

因為批次處理和資料庫都需要大量的 CPU 和 I/O 的計算率來控制批次工作量。Solaris Resource Manager 可以對 CPU 進行高精密的資源控制,但卻必須為每個工作量配置不同的 I/O 裝置來管理 I/O 資源。

通常有兩種方法可用來阻絕批次資源的影響:

因為從一個批次工作量所生成的 I/O 量與消耗的 CPU 量成正比,可以利用對 CPU 循環的限制來間接控制批次工作量的 I/O 率。不過請注意,請嚴加謹慎以確保對 CPU 需求不高的工作量不至於生成過量的 I/O。

與批次處理有關的問題

根據定義,批次工作量就是一個工作量不受限制的執行,它會嘗試在最短時間內完成。這表示批次是最差的資源消耗者,因為批次會毫無節制地使用所有的資源,直到被系統瓶頸(一般指系統最小的資料流) 限制為止。

批次會為系統管理員帶來兩種問題;它會影響其他同時執行的批次工作,而且它無法在正常上班時間內,與工作量的線上部份一起執行。

即使批次工作被排在下班時間執行,例如從半夜 12:00 點到早上 6:00 點,任何的系統問題或是某日高營業額都會使批次工作量超出預定時間而影響到上班時間。雖然不像當機時一樣糟糕,第二天上午 10:30 若仍在執行批次工作量的話,可能會使線上的客戶每進行一次交易就要等候數分鐘之久,最後導致交易量的減少。

用資源配置可以控制批次工作量的工作方式,進而限制它們能利用的資源。