回收您Domino伺服器硬碟空間的吸金魔法

 

資策會教育訓練處講師 李經台

         這篇文章的預設閱讀對象是Lotus Notes/Domino 6(以下簡稱 ND6)的系統管理者。想讓您ND6的伺服器郵件檔所使用的硬碟空間由12 MB降低到1 MB嗎(節省伺服器郵件檔91.6%的硬碟空間)?這就是這篇短文的目的。

本文的重點摘要如下:
(一)﹑何謂單一複製範本(Single Copy Template)?帶給企業什麼樣的好處?
(二)﹑如何在Domino 6.01伺服器上啟用SCT。
(三)﹑啟用SCT後,官方所提供的效益測試數據。

讓我們直接切入主題。

(一)﹑何謂單一複製範本(Single Copy Template)?帶給企業什麼樣的好處?

        為了讓企業用戶能獲得更高的可靠度與穩定性,IBM Lotus將原本宣稱在ND6.0中內建的下列功能暫時從缺:
1. 單一複製範本(Single Copy Template,以下簡稱SCT)。
2. 使用者漫遊(Roaming User)。
3. iNotes使用者可經由瀏覽器來開啟郵件檔中Notes所加密的郵件。
這些系統管理者引頸企盼的新功能,一直等到2003年2月13日IBM Lotus 推出ND6.01時才被正式納入此新版本中。

        相信Domino郵件伺服器的管理者在實務管理工作上會有一個共同的困擾:『伺服器上多個使用者的郵件檔佔用了大量的硬碟空間,也影響了郵件伺服器的執行效!』新建郵件檔的大小從Domino R4.X的2MB,Domino R5.X的6MB,一路飆升到Domino 6.02 CF1竟已達12MB!想想看一台郵件伺服器若要支援500個用戶,根本還不必開始收發信件,光是500個新郵件檔所佔用的硬碟空間即達6000MB(約5.9GB)!就算硬碟價格低廉,這樣用下去也不是辦法。Domino 6.01開始的版本提供了『單一複製範本(Single Copy Template,簡稱SCT)』的解決方案,讓一個新郵件檔的硬碟空間由12MB降低為1MB(500個使用者郵件檔的空間由6000MB減少為500MB,節省了91.6%的硬碟空間)。為什麼在減省硬碟空間上會有如此驚人的表現?讓我們先來瞭解單一複製範本SCT的工作原理來一窺全貌吧!

單一複製範本SCT的工作原理請參看圖一。


【圖一】單一複製範本SCT的工作原理

         早期R4、R5的新郵件檔之所以佔用了不少的硬碟空間,主要原因是因為每一個郵件檔中,除了存放來往郵件外,也有相當比例的空間用於存放繼承自郵件範本的設計元件(圖一上半部示意圖中的design elements:如套表、視界、代理程式等)。Domino 6.01伺服器上,若系統管理者啟用了郵件SCT的功能後,每一個新郵件檔中就只存放文件及指向郵件SCT檔的設計指標(圖一下半部示意圖中的pointer)。若伺服器郵件檔要用到套表視界等設計元件時,系統就循著郵件檔內的設計指標去存取郵件SCT範本中對應的設計元件。如此一來,郵件檔中就算沒有套表視界等設計元件(節省了設計元件所佔用的硬碟空間),也可以使用對應的套表視界(循著指標找到SCT範本即可)。使用者完全感受不到使用郵件SCT與以往的操作有任何差異(專業點的說法是SCT具使用者透通性,user transparency)。也許您會想到任何使用者的郵件操作(存取郵件的視界、套表等設計元件)都要參用到SCT範本,是否會降低伺服器效能呢?答案是幾乎不會。因為只要是被使用過的SCT範本中的設計元件,都會留存一份在伺服器的快取記憶體(caching)中。日後伺服器若被要求存取以前用過的設計元件,系統直接在記憶體中就可找到所要找的東西而無須再去讀取硬碟上的SCT範本。因此伺服器的執行效能就不會因為每次都要去存取SCT範本而受到影響。

         瞭解單一複製範本SCT的工作原理後,SCT能帶給企業什麼樣的好處呢?其優點可歸納如圖二:
1. 只留存一份設計元件在伺服器的SCT範本中。共用此SCT範本的所有資料庫,其硬碟空間幾乎都用於儲存文件,只有極少量用於存放指向SCT範本的設計指標。Domino 6.01伺服器上的資料庫可因此節省90%以上的硬碟成本。
2. 由於多個資料庫共用同一SCT範本,當需要更動套表視界等設計元件時,只要去修改SCT範本,所有共用此SCT範本的資料庫的設計也等同於被即時更新。對於設計需求時常隨環境而改變的應用環境而言,這種集中作業的模式(只需修改SCT範本而無須個別的去處理每一個資料庫),可以大量減少程式異動所衍生的沉重負擔。
3. 由於伺服器的採設計快取的作業方式(如前述),SCT啟用後的伺服器效能幾乎不受影響。讓管理者不會面臨魚與熊掌難以兼得的窘境。


【圖二】單一複製範本SCT的優點

(二)﹑如何在Domino 6.01伺服器上啟用SCT。

         有上述立即而明顯的好處,該如何才能享受SCT的好康呢?在急著翻閱參考資料前,提醒您下列事項:
1. 您必須先將您的Domino伺服器與Domino工作站/設計師/管理員升級到6.01(含6.01)以後的版本。記得嗎?前面提過R5及Domino 6.0是沒有SCT功能的。
2. 在您軟體版本升級後,由於SCT只能作用於ODS 43的ND6資料庫格式(註:ODS是On Disk Structure的縮寫)。如果您的.nsf檔是ODS 41的資料庫格式(R5)或是更早的版本,就算存放在Domino 6.01的伺服器上,這些早期格式的資料庫還是無法套用SCT。也許讀者會問:「我要在什麼地方才能看到資料庫的ODS?」 「若發覺資料庫格式不是ODS 43,如何將其轉換為ODS 43?」
第一個問題的答案請參看圖二。查看資料庫的ODS格式有二種方法:一是在管理員介面中的”檔案”標籤(tab)。二是資料庫屬性對話方塊的名為”資訊”的第二張標籤。


【圖三】查看資料庫格式的二種方法

         第二個問題「如何將資料庫格式轉換為ODS 43」的答案是:您可使用伺服器主控台命令compact與convert來轉換資料庫的ODS格式。這兩個命令留待後面”啟動SCT”的操作步驟中再做介紹。

3. 您在管理員線上輔助說明中找不到SCT!有關SCT的說明被放在「Release Notes」(檔名為伺服器預設資料目錄下的help\readme.nsf,您可由http://www-10.lotus.com/ldd/notesua.nsf?OpenDatabase中下載最新版本)。圖四是在「Release Notes」線上說明中Single Copy Template的位置(註:筆者例圖中使用的版本是Domino/Notes 6.02 CF1的Release Notes)。


【圖四】在「Release Notes」線上說明中Single Copy Template的位置

 

   前期電子報中介紹了SCT的工作原理、帶給企業的好處與相關前提,本期接續的內容中,就讓我們用郵件檔為範例,說明如何在Domino 6.01的伺服器上啟用SCT的操作步驟吧!圖五為啟用SCT的示操作流程意圖。


【圖五】在Domino 6.01伺服器上啟用SCT的示操作流程意圖
 

(步驟一)
        
請參考如下的示意圖。在Notes 6.01工作站中,使用功能表命令【檔案>資料庫>新複製】將Domino 6.01伺服器上的郵件範本檔mail6.ntf,以新的資料庫標題(例:MailSCT(R6))與新檔名(例:mail6SCT.ntf)複製一份到工作站本區。
 


 


 

步驟二)
        
請參考如左的示意圖。在Notes 6.01工作站中,使用功能表命令【檔案>資料庫>屬性】,開啟剛複製到本區的範本mail6SCT.ntf之資料庫屬性對話方塊。在其第4張名為”設計”的標籤中,核選”資料庫檔案是一個主範本”的選取方塊,並在”範本名稱”欄位中輸入StdR6MailSCT(左圖標註?,請注意輸入的名稱不要與伺服器現有的任何範本名稱重複)。也要核選”單一複製範本” 的選取方塊(左圖標註?)。
請注意:選取”單一複製範本”的資料庫屬性,其意義相當於告訴系統:當被放到Domino 6.01伺服器上時,此資料庫就是一個SCT。

(步驟三)
         請參考如下的示意圖。在Notes 6.01工作站中,使用功能表命令【檔案>資料庫>新複製】將剛剛修改的本區mail6SCT.ntf以相同的資料庫標題(MailSCT(R6))與檔名(mail6SCT.ntf) 複製到Domino 6.01伺服器上。

(步驟四)
        
到目前為止,您已經在Domino 6.01伺服器上產生了一個郵件SCT。以後在伺服器上新建郵件檔(圖五)或註冊新使用者(圖六)時,系統管理者可以像圖五與圖六般的選擇新建的郵件檔要套用指定的郵件SCT。
 


【圖五】在伺服器上新建郵件檔時指定使用自建的郵件SCT
 


【圖六】註冊新使用者時指定使用自建的郵件SCT
 

(步驟五)
         上述的步驟四可以指定新產生的郵件檔去套用自建的郵件SCT。可是已經存在於伺服器上的現有使用者郵件檔該怎麼辦?如果擁有足夠權限的話,您當然可以手動個別的去設定每一個既存郵件檔的資料庫屬性。但是如果伺服器上郵件檔的數量是好幾百個,能否一個命令就完成所有想要的轉換呢?
         請參考如下的示意圖。您只需在伺服器主控台上執行Load convert mail\*.nsf StdR6Mail mailsct.ntf就能達到單一命令去轉換所有郵件檔的郵件範本。Convert命令的語法請自行查閱管理線上說明。唯一要提醒您注意的使用此命令的倒數第二個參數(用於指明被轉換檔案所使用的新範本名稱,本例中是StdR6Mail)是區分大小寫的,千萬別打錯字。
 


         很遺憾的,「Release Notes」(readme.nsf)中有關設定SCT的操作步驟只到步驟五為止。一切按部就班做完後,滿懷期望的到檔案總管中去看看伺服器mail子目錄下的郵件檔大小,怎麼每一個郵件檔都還是12 MB?一點都沒有減少啊?『按手冊做還有問題嗎?』的疑惑油然自心底升起。難道IBM Lotus宣稱已提供的功能是虛晃一招,純屬宣傳?

(步驟六)
         原來還得再多一道手續才能看到想要的答案。那就是要對共用SCT的資料庫做壓縮!請參考如下的示意圖。
         要一個命令就壓縮所有的郵件檔,您在伺服器主控台上應下達load compact mail的命令。假如您伺服器的郵件檔啟用了異動記錄(Transaction Log),您所下達的伺服器主控台命令就該換成load compact -B mail請注意此命令中的參數-B有分大小寫。


 

         以上就是啟用SCT的全部過程。如果一切順利的成功啟用郵件SCT,不需要任何重新啟動伺服器之類的額外動作,您在檔案總管中就會看到每一個伺服器郵件檔的大小由12 MB降為1MB(如圖七所示)。
 


【圖七】啟用郵件SCT後,在檔案總管中每一個伺服器郵件檔的大小變為1MB
 

         如果您想把郵件檔由共用SCT變回標準郵件範本,您也只需要像圖七下半部的圖利所示的下達下列二個伺服器主控台命令:
load convert mail\*.nsf StdR6MailSCT mail6.ntf^倒數第二個參數分大小寫。
load compact mail^若啟用了伺服器郵件檔的異動紀錄, load compact -B mail

(三)﹑啟用SCT後,官方所提供的效益測試數據。

         視窗2000的平台上,在Domino 6.01伺服器上啟用了SCT後對伺服器的整體執行效能影響如何?IBM Lotus分別從下列四個面向提供了實測數據:
1. 硬碟用量(Amount of disk usage) ,請參見表一。
2. 硬碟機的讀寫效能(Disk % read and % write time) ,請參見表二。
3. CPU使用率(CPU usage) ,請參見表三。
4. 記憶體使用率(Memory usage) ,請參見表四。

Domino 6.01伺服器上
空白郵件檔數量

未啟用SCT前
硬碟空間

啟用SCT後
硬碟空間

回收
硬碟空間

100

1.18GB

100MB

>1GB

500

5.86GB

500MB

>5GB

1000

11.72GB

1GB

>10GB

2000

23.44GB

2GB

>21GB

10000

117.19GB

10GB

>107GB

【表一】不同數量之空白伺服器郵件檔,啟用伺服器SCT後所回收的硬碟空間數據
 

 

未啟用SCT前

啟用SCT後

效益

平均的讀寫硬碟百分比
(Average %Disk time)

58.41%

37.86%

35.18%

平均的硬碟讀取百分比
(Average %Disk read time)

15.78%

0.53%

96.44%

平均的硬碟寫入百分比
(Average %Disk write time)

42.63%

37.33%

12.43%

【表二】啟用伺服器SCT前後的硬碟機讀寫效能
 

 

未啟用SCT前

啟用SCT後

效益

平均的CPU使用率

19.81%

26.86%

-35.58%

【表三】啟用伺服器SCT前後的CPU使用率
 

 

未啟用SCT前

啟用SCT後

效益

平均的記憶體使用率

339MB

3333MB

1.77%

【表四】啟用伺服器SCT前後的記憶體使用率
 

 

由上列數據,我們對單一複製範本(SCT) 可歸納出下列結論:

   1.

啟用SCT除對CPU效能稍有影響外,其正面效益有:減少了硬碟空間、提高了硬碟機與記憶體的效能。整體而言,系統效能不因啟用SCT而受到影響。

   2.

SCT的作業方式是將資料庫的設計元件集中存於一處。其明顯可見的優點是減少伺服器資料庫90%的硬碟空間。

   3.

硬碟機的讀寫時間通常是系統效能的瓶頸,SCT可降低硬碟機的讀寫時間,將硬碟子系統的效能最佳化。

   4.

如果您對伺服器郵件檔啟動了硬碟配額(disk quota,限制使用者郵件檔不得超過指定的最大值),由於啟用郵件SCT移除了郵件檔中設計元件所佔的空間,因此就算不修改所設定的配額上限,啟用SCT讓郵件檔中能有更多的空間存放郵件。

   5.

只需在設定Domino 6.01伺服器時稍作調整,您可個別啟動一台Domino伺服器的SCT而不去影響其他的Domino伺服器。換句話說,Notes使用者與其他的Domino伺服器完全不會發覺您伺服器啟動SCT前後有何差別(user and server transparency) 。
 

         由於篇幅的限制,系統管理者在啟用SCT的管理實務上,還有很多本文中沒有提到的應注意事項。譬如說本文中並沒有說明下列情況下的系統行為:

   ˇ

系統管理者應該要知道SCT只能作用於Domino6.01伺服器,而不會在Notes工作站上生效。那麼假設下面的情況發生了:當使用者將Domino伺服器上啟用了SCT的資料庫抄寫到本區時,被抄寫到本區的資料庫中會有設計元件嗎?

   ˇ

前面已經特別強調:「SCT只能作用在Domino 6.01以後版本的伺服器,而且資料庫的格式必須是ODS 43或更高的版本。資料庫是ODS 41以前的格式或軟體版本是Domino 6.0與R5之前的版本,就不必奢望SCT了!」可是如果是一個Domino/Notes各種版本並存的環境(同時存在著ND 6.01與R5的伺服器/工作站。您在導入Domino 6.01到您既存的R5環境時,一定是先將某台R5伺服器升級到Domino 6.01;這時您就面臨到多版本並存的情況),如果將Domino 6.01伺服器上某些個ODS 43格式的資料庫(就假設是所有的郵件檔吧!)啟用了SCT,可是這些郵件檔在其他的R5伺服器上又有抄本,那麼當Domino 6.01伺服器與R5伺服器彼此抄寫郵件檔時,身為系統管理者的您,知道系統的處理方式嗎?

         諸如此類實務上您一定會碰到,但本文中又未詳細說明的主題,就當成是家庭作業,有待您更進一步的研讀參考資料。有興趣的讀者除了參考Release Notes線上說明外,也可免費下載名為"New Features of IBM Lotus 6.0.1:Single Copy Template"的IBM紅皮書(Red Book)。下載網址為(可能您要先免費註冊才能存取此網址):http://publib-b.boulder.ibm.com/Redbooks.nsf/RedpaperAbstracts/redp3681.html當您連線開啟此網頁時,看到的畫面應該如圖八的左上例圖。由例圖中的紅框連結處按滑鼠右鍵,點選快捷功能表中的"另存目標"就可下載此紅皮書。下載完成開啟此紅皮書的內容如圖八的右下圖例。別緊張,全部加起來不過才24頁,輕薄短小。很快讀完就可讓您在應用SCT時左右逢源。想要實作單一複製範本,又不想在真正使用時被叮的滿頭包的系統管理者,請服用這帖毫不苦口的良藥吧!
 


【圖八】參考資料:單一複製範本的IBM紅皮書(Red Book)
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值