效能


最佳化資料庫效能的資料庫屬性
正確設定資料庫屬性,可增進作用中資料庫的效能。在許多資料庫或一個大型、作用中的資料庫上設定資料庫效能屬性也可增進伺服器效能。另外,某些屬性設定也有助於減少資料庫的大小。這些屬性許多都需要應用程式設計的知識,且資料庫設計師通常要在建立資料庫時就設定這些屬性。

在文件後顯示影像

若要快速地顯示包含影像的文件,請選取「基本」資料庫屬性「載入後顯示影像」。之後,Notes 使用者可在影像載入時讀取文字。若您未載入文字後的影像,Notes 會以其在文件中顯示的次序載入影像;若某個影像先出現,則 Notes 會在顯示文字之前載入它。若是大影像或是緩慢連線,順序地載入影像可能會減慢文件的顯示速度。

此設定僅在使用 Notes 檢視資料庫時套用;Web 瀏覽器的設定為 Web 瀏覽器使用者控制影像的顯示。

秘訣 使用者也可以指定「載入影像:按要求」(在「位置」文件的「進階」小節中) 以僅當使用者按一下它們時才顯示影像。如需其餘詳細資訊,請參閱 Lotus Notes 6 說明。

防止使用已儲存的套表

為了確保文件始終正確顯示,您可以與此文件一起儲存此套表。但是,與每個文件一起儲存套表要使用系統記憶體,且可能需要多用 20 倍的磁碟空間。若要節省記憶體及磁碟空間,您可能要防止使用已儲存的套表,尤其是使用者在嘗試讀取文件時遇到效能問題的情況。若要防止使用已儲存的套表,請取消選取「基本」資料庫屬性「允許使用儲存於此資料庫中的套表」。在防止使用已儲存的套表之前,請確定您瞭解此設計功能如何運作,以及資料庫如何使用它。

不要維護標示未閱讀文件

維護資料庫的標示未閱讀文件需要系統資源,且會顯著降低資料庫效能。對於某些資料庫,標示未閱讀文件無用 - 例如,參考資料庫如 Domino 提供的「說明」資料庫、管理資料庫如「Domino 名錄」或如日誌檔 (LOG.NSF) 般可持續更新的資料庫。在這些資料庫類型中,請考慮停用標示未閱讀文件。若要停用標示未閱讀文件,請選取「進階」資料庫屬性「不要維護標示未閱讀文件」

附註 因為雖然不顯示但仍要維護,所以設計不要顯示標示未閱讀文件的視界,並不會增進資料庫的效能。

若選取或取消選取「不要維護標示未閱讀文件」屬性,則您必須壓縮此資料庫以便讓此設定生效。在此情況下壓縮會製作資料庫的臨時複本,所以您的系統必須有磁碟空間可用來製作此複本。

秘訣 您也可以執行有 -u 或 -U 選項的「壓縮」伺服器作業,以啟用或停用此屬性然後壓縮。

將文件表格與套表連結以方便視界更新

在更新視界時,Domino 要參照文件資訊的表格。這些表格內部儲存於此資料庫中。在檢視更新及重建期間,Domino 預設會為在欲更新的視界中顯示的文件搜尋每一個表格。若要更有效的更新視界,請選擇「進階」資料庫屬性「文件表格點陣圖最佳化」。此屬性會將表格與由此表格包含的文件所使用的套表連結。之後,在視界更新期間,Domino 僅會搜尋與套表 (由欲更新視界中之文件所使用) 連結的表格。這會顯著增進視界更新的效能,尤其是對大型資料庫中小視界的更新 -- 例如,「Domino 名錄」中的「連線」視界。

此屬性只對使用 Form = 作為部分選擇條件的視界才有效。需要輕微效能來維護表格/套表連結;但當更新大型資料庫中的小視界時,產生的益處會抵消這些損失。

若選取或取消選取「文件表格點陣圖最佳化」屬性,則您必須壓縮此資料庫,以便讓此設定生效。在此情況下壓縮會製作資料庫的臨時複本,所以您的系統必須有磁碟空間可用來製作此複本。

秘訣 您也可以執行有 -F 或 -f 選項的「壓縮」伺服器作業,以啟用或停用此屬性然後壓縮。

防止覆寫刪除的資料

當將資料從資料庫中刪除時,Domino 預設會以型樣來覆寫磁碟上的已刪除資料。此型樣會防止未授權的使用者使用公用程式存取該資料。這種覆寫會影響磁碟 I/O 以及資料庫效能。

防止覆寫刪除的資料適用於下列情況:


若要防止覆寫刪除的資料,請選擇「進階」資料庫屬性「不要覆寫可用空間」。

不要維護「存取的時間 (在此檔案中) 」文件的屬性

「文件屬性」方塊會顯示屬性「存取的時間 (在此檔案中) 」,可以顯示前次修改或讀取文件的日期。「進階」資料庫屬性「保留 LastAccessed 屬性」會控制若讀取前次文件存取,則是否要更新「存取的時間 (在此檔案中) 」屬性。維護讀取的「存取的時間 (在此檔案中) 」屬性,會導致不會發生的磁碟 I/O。

預設為不選取資料庫屬性「保留 LastAccessed 屬性」,意即在讀取前次文件存取時,不更新「存取的時間 (在此檔案中) 」屬性,而僅當前次存取的是文件修改時才更新。透過選取「保留 LastAccessed 屬性」變更預設行為。

若使用文件備存工具,則您應選取在「資料庫屬性」方塊中可用的「保留 LastAccessed 屬性」,以根據未作用天數刪除文件。

顯示專用回應階層資訊

預設為每個文件儲存將其與父文件或回應文件連結的資訊。只有 @functions @AllChildren 和 @AllDescendants (經常在視界選擇及抄寫公式中使用) 才使用此儲存資訊。維護此資訊會對資料庫的效能造成重大的負面影響。

若要增進資料庫效能,請透過選取「進階」資料庫屬性「不支援專用回應階層」停用這些 @functions 之資料庫中的回應階層資訊。

停用此回應階層資訊對不使用 @AllChildren 及 @AllDescendants 顯示資訊階層的視界及覆寫公式無影響。

停用此回應階層資訊會將 NotesDocument.Responses 設為 0 文件。

若選取或取消選取「不要支援專用回應階層」屬性,則您必須壓縮此資料庫以便讓此設定生效。在此情況下壓縮會製作資料庫的臨時複本,所以您的系統必須有磁碟空間可用來製作此複本。

秘訣 您也可以執行有 -h 或 -H 選項的「壓縮」伺服器作業,以啟用或停用此屬性然後壓縮。

防止監督標題

使用者可以設定標題監督,以自動監督感興趣之資訊的資料庫。這樣監督資料庫會影響效能,尤其是在許多使用者都執行此動作時。若要防止使用者監督資料庫,請選取「進階」資料庫屬性「不允許監督標題」。您也可以使用「Domino 名錄」中「伺服器」文件的「安全性」小節,以在伺服器層級上控制標題監督。

允許更多的資料庫欄位

您可以選取進階資料庫屬性「允許更多的資料庫欄位」(容許資料庫最多包含 23,000 個欄位),以增加資料庫的欄數。

對於沒有選取此選項的資料庫來說,資料庫中連接的所有欄位名稱長度不能超過 64 KB,這會導致到達大約 3000 個欄位的資料庫限制。

使用附件檔的 LZ1 壓縮

在「Lotus Domino 設計師 6」中,您可以選擇使用新的 LZ1 運算法則 (而非 Huffman 運算法則) 來壓縮附件檔。因為 LZ1 壓縮可以快速且有效的執行,所以它比 Huffman 方法更受歡迎。但是,若您在使用不同版本的用戶端和伺服器軟體 (例如,「Lotus Domino 設計師 6」用戶端和 R5 伺服器) 之環境中工作,並選擇了此選項,則會在使用 Huffman 方法的伺服器上自動重新壓縮附件檔。請注意:重新壓縮具有效能含意。若需最佳效能,請使用主要 Domino 6 環境中的 LZ1。

限制 $UpdatedBy 欄位的大小

每個文件都包括 $UpdatedBy 欄位,該欄位依預設儲存與每一個文件編輯階段作業相關的使用者或伺服器之名稱。儲存完整的編輯歷程,會消耗磁碟空間且會減緩視界更新及抄寫。若要節省磁碟空間並增進資料庫效能,請使用「進階」資料庫屬性「限制 $UpdatedBy 欄位中的項目」,以指定 $UpdatedBy 欄位可包含的項目數。當 $UpdatedBy 欄位達到此限制時,會移除最舊的項目以提供空間給最新的項目。

限制 $Revisions 欄位的大小

每一個文件都包括 $Revisions 欄位,該欄位依預設儲存每一個文件編輯階段作業的日期和時間。Domino 使用此欄位來解析抄寫,或儲存兩個使用者同時在一個抄本上編輯相同文件,或在抄寫間的不同抄本上編輯相同文件時所發生的衝突。

依預設,$Revisions 欄位最多儲存 500 個編輯階段作業的歷程,其中每個歷程需要 8 位元組的磁碟空間。隨著時間的推移,$Revisions 欄位會變大,並佔用磁碟空間,減慢視界更新和抄寫。若要節省磁碟空間並增進資料庫效能,請使用「進階」資料庫屬性「限制 $Revisions 欄位中的項目」,以指定 $Revisions 欄位可包含的項目數。當 $Revisions 欄位達到此限制時,會移除最舊的項目以提供空間給最新的項目。

請考慮限制資料庫上 $Revisions 欄位中的項目,該資料庫具有所有下列性質:


$Revisions 欄位中建議的上限是 10 個項目。若您設定的限制低於 10,則有增加抄寫或儲存衝突的風險。

指定暫時刪除的到期時間

選取「允許暫時刪除」時,標示要刪除的文件會在刪除它們之前,於資料庫中存放一段指定的時間。在「資料庫屬性」方塊的「進階」標籤上,可以指定從資料庫上刪除這些文件之前它們可存放的小時數。