規劃及設定儲存空間及 SQL Server 容量 (SharePoint Server 2010)

 

適用版本: SharePoint Foundation 2010, SharePoint Server 2010

上次修改主題的時間: 2016-11-30

本文說明如何為 Microsoft SharePoint Server 2010 環境規劃及設定儲存空間和 Microsoft SQL Server 資料庫層。

本文件中的容量規劃資訊可做為您規劃工作之準則。這些資訊是依據 Microsoft 內部實際機器上測試所得之結果。不過,您的結果可能會因所用設備及網站實作的功能而異。

基於執行 SharePoint Server 的環境中各資料庫常由不同 SQL Server 資料庫管理員負責管理,因此本文件係針對 SharePoint Server 伺服器陣列實施者及 SQL Server 資料庫管理者攜手合作所寫。本文適合已對 SharePoint Server 及 SQL Server 有深入瞭解者。

本文假設您已瞭解<Capacity management and sizing for SharePoint Server 2010>中所述的概念。

SharePoint 2010 產品的儲存空間和資料庫層設計及設定程序

建議您將儲存空間及資料庫層設計程序分成下列步驟。以下每個小節均提供每個設計步驟的詳細資訊,包括儲存需求及最佳作法。

  • 蒐集儲存空間及 SQL Server 空間和 I/O 的需求

  • 選擇 SQL Server 版本

  • 根據容量及 IO 需求設計儲存架構

  • 估算記憶體需求

  • 瞭解網路拓撲需求

  • 設定 SQL Server

  • 驗證儲存效能及可靠性

蒐集儲存空間及 SQL Server 空間和 I/O 的需求

許多 SharePoint Server 2010 架構因素都會影響儲存空間設計,其中主要因素包括內容數量、所用的功能及服務應用程式、伺服器陣列數目及可用性需求。

在開始規劃儲存空間之前,您應先瞭解 SharePoint Server 2010 可以使用的資料庫。

本節內容:

  • SharePoint 2010 產品所用的資料庫

  • 瞭解 SQL Server 及 IOPS

  • 估算核心儲存空間及 IOPS 需求

  • 判斷服務應用程式儲存空間及 IOPS 需求

  • 判斷可用性需求

SharePoint 2010 產品所用的資料庫

隨 SharePoint Server 2010 安裝的資料庫會相依於環境所用的功能。所有 SharePoint 2010 產品環境都需依賴 SQL Server 系統資料庫。本節提供一份隨 SharePoint Server 2010 所安裝資料庫的摘要。如需詳細資訊,請參閱<資料庫類型和描述 (SharePoint Server 2010)>與資料庫模型 (https://go.microsoft.com/fwlink/p/?LinkId=187968)。

產品版本 資料庫

SharePoint Foundation 2010

設定

管理中心內容

內容 (一或多個)

Usage and Health Data Collection

Business Data Connectivity

Application Registry Service (如果是從 Microsoft Office SharePoint Server 2007 商務資料目錄升級)

訂閱設定服務 (如果是透過 Windows PowerShell 啟用)

SharePoint Server 2010 標準版的其他資料庫

Search Service 應用程式:

  • 搜尋管理

  • 編目 (一或多個)

  • 屬性 (一或多個)

User Profile Service 應用程式:

  • 設定檔

  • 同步

  • 社交標記

Web Analytics Service 應用程式

  • 臨時

  • 報表

Secure Store

State

Managed Metadata

Word Automation Services

其他 SharePoint Server 2010 企業版資料庫

PerformancePoint

其他 Project Server 2010 資料庫

草稿

發佈

封存

報表

其他 FAST Search Server 資料庫

搜尋管理

如果打算更完整地與 SQL Server 整合,您的環境可能還會包括其他資料庫,如下列情況所示:

  • Microsoft SQL Server 2008 R2 PowerPivot for Microsoft SharePoint 2010 可用於已安裝 SQL Server 2008 R2 Enterprise Edition 與 SQL Server Analysis Services 的 SharePoint Server 2010 環境中。如果已使用此應用程式,您還必須規劃支援 PowerPivot 應用程式資料庫以及系統上的額外負載。如需詳細資訊,請參閱規劃 SharePoint 伺服陣列中的 PowerPivot 部署 (https://go.microsoft.com/fwlink/p/?LinkID=186698)。

  • Microsoft SQL Server 2008 Reporting Services (SSRS) 外掛程式可與任何 SharePoint 2010 產品環境搭配使用。如果已使用此外掛程式,請規劃支援兩個 SQL Server 2008 Reporting Services 資料庫及 SQL Server 2008 Reporting Services 所需的額外負載。

瞭解 SQL Server 及 IOPS

無論在哪部主控 SQL Server 的伺服器上,都必須要讓伺服器的 I/O 子系統達到最快的回應速度。

磁碟或陣列越多、越快,越能提供足夠的每秒 I/O 操作 (IOPS),同時也讓所有磁碟上的延遲及佇列維持在極短時間內。

I/O 子系統回應緩慢的問題,並無法藉由新增其他資源類型 (例如 CPU 或記憶體) 而獲得彌補;但此現象卻會影響並導致整個伺服器陣列產生問題。請在部署前規劃最短延遲,並監控現有系統。

在部署新伺服器陣列之前,建議您使用 SQLIO 磁碟子系統評測工具測試 I/O 子系統性能。如需詳細資訊,請參閱 SQLIO 磁碟子系統評測工具測試 (https://go.microsoft.com/fwlink/p/?LinkID=105586)。

如需如何從 SQL Server 層面分析 IOPS 需求的詳細資訊,請參閱針對 SQL Server 資料庫應用程式分析 I/O 特性並調整儲存系統大小(可能為英文網頁) (https://sqlcat.com/whitepapers/archive/2010/05/10/analyzing-i-o-characteristics-and-sizing-storage-systems-for-sql-server-database-applications.aspx)(可能為英文網頁)。

估算核心儲存空間及 IOPS 需求

設定與內容儲存空間及 IOPS 是您必須為每個 SharePoint Server 2010 部署規劃的基礎層。

設定儲存空間及 IOPS

設定資料庫及管理中心內容資料庫的儲存需求並不大。建議您配置 2 GB 給設定資料庫、1 GB 給管理中心內容資料庫。儘管經過一段時間後,設定資料庫可能會增長超過 1 GB,但這個資料庫並不會快速增長,因為每 50,000 個網站集合才大約增加 40 MB。

設定資料庫的交易記錄檔可能會很大,因此建議您將此資料庫的復原模式由完整改成簡單。

注意

如果想使用 SQL Server 資料庫鏡像,以便針對設定資料庫提供可用性,就必須使用完整復原模式。

設定資料庫及管理中心內容資料庫的 IOPS 需求並不高。

內容儲存空間及 IOPS

估算內容資料庫所需的儲存空間及 IOPS 並不能得到精準結果。在測試及解釋下列資訊時,我們會協助您推算要用的估算值,以便決定您的初步部署規模。不過,當您的環境正式運作執行,希望您能再依據實際環境所得到的資料,重新估算您的容量需求。

如需關於我們的整體容量規劃方法詳細資訊,請參閱<Capacity management and sizing for SharePoint Server 2010>。

估算內容資料庫儲存空間

下列程序說明如何粗估內容資料庫所需的儲存空間 (但不考量記錄檔案的儲存需求):

  1. 計算預計文件數目。在此公式中,此值以 D 表示。

    計算文件數目的方式取決於您所用的功能而定。以「我的網站」或共同作業網站為例,建議您根據每位使用者來計算預計的文件數目,再乘以使用者人數。若是記錄管理或內容發佈網站,即可能以一個程序所管理及產生的文件數目加以計算。

    如果您是從目前系統進行移轉,要推估目前成長速度及使用量會比較容易。如果是建立新系統,則請審視現有檔案共用或其他存放庫,然後以使用率來估算。

  2. 估算將來會儲存的文件平均大小。在此公式中,此值以 S 表示。您不妨分別估算不同的網站類型或網站群組的文件平均大小,會相當有用。「我的網站」、媒體存放庫及不同部門入口網站的平均檔案大小差異可能會極大。

  3. 估算環境中的清單項目數目。在此公式中,此值以 L 表示。

    清單項目比文件更難估算。我們一般會以文件數目 (D) 的三倍當作估算值,但這個數字會因您打算使用網站的方式而異。

  4. 決定版本概略數目。估算文件庫中任何一份文件將會產生的版本平均數目 (這個值通常會比所允許的版本數目上限小很多)。在此公式中,此值以 V 表示。

    V 的值必須大於零。

  5. 請利用下列公式估算您目前資料庫的大小。

    資料庫大小 = ((D × V) × S) + (10 KB × (L + (V × D)))

    公式中的 10 KB 是個常數,是 SharePoint Server 2010 所需中繼資料量的粗估值。如果您的系統需要大量使用中繼資料,就可以提高這個常數。

舉例而言,如果您要估算具有下列特性的共同作業環境需要多少儲存空間以儲存內容資料庫的資料檔,按上述公式所得的結果,您會需要大約 105 GB。

輸入

文件數目 (D)

200,000

假設有 10,000 位使用者,乘以 20 份文件計算所得

文件平均大小 (S)

250 KB

清單項目 (L)

600,000

非目前版本的數目 (V)

2

假設允許的版本數目上限為 10

資料庫大小 = (((200,000 x 2)) × 250) + ((10 KB × (600,000 + (200,000 x 2))) = 110,000,000 KB 或 105 GB

影響內容資料庫大小的功能

使用下列 SharePoint Server 2010 功能將會大幅影響內容資料庫的大小。

  • 資源回收筒   在文件完全從第一個階段及第二個階段的資源回收筒中刪除之前,文件都會在內容資料庫中佔據空間。請計算每個月刪除的檔案數目,來判斷資源回收筒對內容資料庫大小的影響程度。如需詳細資訊,請參閱<設定資源回收筒設定 (SharePoint Server 2010)>。

  • 稽核   稽核資料會快速結合並使用內容資料庫內大量空間,尤其是在開啟檢視稽核的情況下。與其讓稽核資料無限增長,建議您僅在為了符合法規需求或內部控管的必要情況下,才啟用稽核。請以下列準則來估算需為稽核資料保留的空間。

    • 估算網站的新稽核項目數目,再將此數目乘以 2 KB (項目大小一般限為 4 KB,平均大小則約為 1 KB)。

    • 根據您要配置的空間,決定您要保留稽核記錄檔的天數。

  • Office Web Apps。如果目前使用的是 Office Web Apps,Office Web Apps 快取就會嚴重影響內容資料庫的大小。根據預設,Office Web Apps 快取設為 100 GB。如需 Office Web Apps 快取大小的詳細資訊,請參閱<管理 Office Web Apps 快取>。

估算內容資料庫的 IOPS 需求

內容資料庫的 IOPS 需求會因您環境目前使用情況、磁碟空間容量及伺服器數目而有極大差異。一般而言,建議將您環境的預計工作負載與我們所測試的其中一種解決方案相比較。如需詳細資訊,請參閱<效能與容量測試結果及建議 (SharePoint Server 2010)>。

重要

針對本節內容所進行的測試其實尚未完成。請日後再查詢是否有其他資訊。

估算服務應用程式儲存需求及 IOPS

估算內容儲存空間及 IOPS 需求之後,接下來您必須判斷目前環境中所用服務應用程式所需的儲存空間及 IOPS。

SharePoint Server 2010 服務應用程式儲存空間及 IOPS 需求

若要估算此系統中服務應用程式的儲存需求,必須先知道有哪些服務應用程式,以及將來要如何使用這些服務應用程式。下表為 SharePoint Server 2010 所提供並具有資料庫的服務應用程式。

服務應用程式 大小估算建議

Search

Search 需要三個資料庫。您的環境可能包含多個「屬性」及「編目」資料庫。

搜尋管理資料庫通常都很小:請配置 10 GB。

若要估算「屬性」及「編目」資料庫所需的儲存空間,請以下列乘數計算:

  • 編目:0.046 × (內容資料庫總數)

  • 屬性:0.015 × (內容資料庫的總數)

Search 的 IOPS 需求相當高。

  • 以編目資料庫來說,搜尋所需的 IOPS 介於 3,500 至 7,000 之間。

  • 以屬性資料庫來說,搜尋需要 2,000 次 IOPS。

如需如何估算 Search 所需容量的詳細資料,請參閱<效能與容量測試結果及建議 (SharePoint Server 2010)>。

FAST Search Server 2010 for SharePoint 具有不同的架構。「編目」資料庫具有相同的 IOPS 需求,但是「屬性」資料庫只適用於人員搜尋,還有其他的「搜尋」管理資料庫。如需 FAST Search Server 2010 for SharePoint 的詳細資訊,請參閱<規劃搜尋拓撲 (FAST Search Server 2010 for SharePoint)>及<效能與容量管理 (FAST Search Server 2010 for SharePoint)>。

User Profile

User Profile Service 應用程式與三個資料庫相關聯:「設定檔」、「同步」及「社交標記」。

若要估算這些資料庫所需的儲存空間,請利用下列資訊:

  • 設定檔:在使用預設設定的情況下,若環境設定為使用 Active Directory,每個使用者設定檔的設定檔資料庫需要大約 1 MB。

  • 同步處理:在使用預設設定的情況下,若環境以每位使用者來說僅有少數群組,同步資料庫的每個使用者設定檔大約需要 630 KB。此空間的 90% 將由資料檔使用。

  • 社交標記:在使用預設設定的情況下,社交標記資料庫中每個標記、註解或評等大約需要 0.009 MB。若要估算使用者將會建立的標記及記事數目,請參考下列關於 del.icio.us 網站的資訊:

    • 大約 10% 的使用者認定為積極使用者。

    • 積極使用者每個月會建立 4.5 個標記及 1.8 個註解。

在一個實際運作的共同作業環境中,擁有 160,000 個使用者設定檔、5 個群組、79,000 個標記、註解及評等 (分別為 2,500 個註解、76,000 個標記及 800 個評等),並使用預設設定的情況下,我們看到以下資料庫的大小如下:

 

資料庫名稱 資料庫大小

設定檔

155 GB

同步

96 GB

社交標記

0.66 GB

Managed Metadata

Managed Metadata Service 應用程式只有一個資料庫。此資料庫的大小會受系統中所用之內容類型及關鍵字數目所影響。許多環境都會包含多個 Managed Metadata Service 應用程式執行個體。

Web Analytics

Web Analytics 有兩個資料庫:「臨時」及「報表」。這兩個資料庫的大小會受許多因素所影響,包括保留期間、每日所追蹤的資料量,以及 Web 應用程式中所分析的網站集合、網站及子網站數目。如需如何估算這些資料庫的大小及 IOPS 需求的詳細資訊,請參閱<效能與容量測試結果及建議 (SharePoint Server 2010)>。

Secure Store

Secure Store Service 應用程式資料庫的大小是依存放區中的認證數目及稽核資料表中的項目數目而定。建議您對此資料庫中每 1,000 個認證配置 5 MB。它的 IOPS 並不高。

State

State Service 應用程式只有一個資料庫。建議配置 1 GB 給此資料庫。它的 IOPS 並不高。

Word Automation Service

Word Automation Service 應用程式只有一個資料庫。建議配置 1 GB 給此資料庫。它的 IOPS 並不高。

PerformancePoint

PerformancePoint Service 應用程式只有一個資料庫。建議配置 1 GB 給此資料庫。它的 IOPS 並不高。

判斷可用性需求

可用性是指使用者認為 SharePoint Server 2010 環境可供使用的程度。所謂可用系統,是指系統具有彈性,也就是說,很少發生影響服務的事件,而且在發生事件時能及時採取有效措施。

可用性需求會大幅增加您的儲存需求。如需詳細資訊,請參閱<規劃可用性 (SharePoint Server 2010)>。

選擇 SQL Server 版本

儘管 SharePoint 2010 產品可在 Microsoft SQL Server 2008 R2、SQL Server 2008 或 SQL Server 2005 上執行,不過強烈建議您最好考慮在 SQL Server 2008 或 SQL Server 2008 R2 的 Enterprise Edition 上執行您的環境,以便充分利用此版本所提供的更多效能、可用性、安全性及管理功能。如需使用 SQL Server 2008 R2 Enterprise Edition 會有哪些優點的詳細資訊,請參閱<SQL Server 2008 R2 與 SharePoint 2010 產品:搭配成效更佳 (白皮書) (SharePoint Server 2010)>。

您尤其應考慮有關下列功能的需求:

  • 備份壓縮 備份壓縮可加速任何 SharePoint 備份作業,這項功能在 SQL Server 2008 Enterprise Edition 或 SQL Server 2008 R2 Standard Edition 中都有提供。只要在備份指令碼中設定壓縮選項,或將執行 SQL Server 的伺服器預設為執行壓縮,就能大幅縮減資料庫備份及所傳送的記錄檔大小。如需詳細資訊,請參閱備份壓縮 (SQL Server) (https://go.microsoft.com/fwlink/p/?LinkId=129381&clcid=0x404)。

    注意

    SharePoint 2010 產品 不支援 SQL Server 資料壓縮功能 (但 Search Service 服務應用程式資料庫除外)。

  • 透明資料加密   如果您的安全性需求中包括透明資料加密需求,就必須使用 SQL Server Enterprise Edition。

  • Web Analytics Service 應用程式   如果打算使用 Web Analytics Service 應用程式進行重要分析,請考慮使用 SQL Server Enterprise Edition,好讓系統能夠利用資料表資料分割功能。

  • 內容部署   如果打算使用內容部署功能,請考慮使用 SQL Server Enterprise Edition,好讓系統能夠利用 SQL Server 資料庫快照集功能。

  • 遠端 BLOB 儲存   如果想要利用「遠端 BLOB 儲存」,將資料移至與每個內容資料庫所關聯檔案之外的資料庫或位置,就必須使用 SQL Server 2008 或 SQL Server 2008 R2 Enterprise Edition。

  • 資源管理員 「資源管理員」是在 SQL Server 2008 中加入的技術,您可利用它指定內送請求的資源耗用量限制,以管理 SQL Server 工作負載及資源。「資源管理員」可區分不同的工作負載,然後在工作負載請求使用 CPU 及記憶體時,根據您指定的限制值配置用量。這項功能只有 SQL Server 2008 或 SQL Server 2008 R2 Enterprise Edition 才提供。如需使用「資源管理員」的詳細資訊,請參閱使用資源管理員來管理 SQL Server 工作負載

    建議您將「資源管理員」搭配 SharePoint Server 2010 以用於:

    • 對於搜尋編目元件所針對的目標網頁伺服器,限制這些伺服器所耗用的 SQL Server 資源量。以最佳作法來說,當系統處於低載時,建議您將編目元件限制為 10 % CPU。

    • 監視系統中每個資料庫所耗用的資源量,例如,您可以使用「資源管理員」來決定要將資料庫放在哪部執行 SQL Server 的電腦上。

  • PowerPivot for SharePoint 2010   可讓使用者在 Excel 及瀏覽器中共用及一起處理使用者產生的資料模型和分析結果,且還能自動重新整合這些分析結果。這項功能出自於 SQL Server 2008 R2 Enterprise Edition Analysis Services。

根據容量及 IO 需求設計儲存架構

您為環境所選用的儲存架構及磁碟類型將會影響系統效能。

本節內容:

  • 選擇儲存架構

  • 選擇磁碟類型

  • 選擇 RAID 類型

選擇儲存架構

SharePoint Server 2010 可支援直接連接儲存裝置 (DAS)、存放區域網路 (SAN) 及網路連接儲存裝置 (NAS) 等儲存架構,不過 NAS 僅受支援用於設定使用「遠端 BLOB 儲存」的內容資料庫。要選用哪種架構端視您的商務解決方案和現有基礎架構所形成的因素而定。

任何儲存架構都必須支援可用性需求,並要能適當執行 IOPS 及延遲。為使系統受到支援,系統必須在 20 毫秒 (ms) 內持續傳回資料的第一個位元組。

直接連接儲存裝置 (DAS)

DAS 係直接與伺服器或工作站連接的數位儲存系統,兩者之間並不藉助儲存網路。DAS 實體磁碟類型包括序列連接 SCSI (SAS) 及序列連接 ATA (SATA)。

一般而言,如果共用儲存平台無法保證產生 20 ms 的回應時間,也無法保證提供足夠容量供平均和尖峰 IOPS 運作,則建議您選擇 DAS 架構。

存放區域網路

SAN 架構可讓遠端電腦儲存裝置 (如磁碟陣列及磁帶媒體櫃) 與伺服器連接,使這些裝置顯示成像是從本機連接至作業系統 (例如,區塊儲存裝置)。

一般而言,如果共用儲存的優點對組織十分重要,則建議您選擇 SAN。

共用儲存的優點如下:

  • 較容易重新配置伺服器之間的磁碟儲存體。

  • 可處理數部伺服器。

  • 不限制可存取的磁碟機數目。

網路連接儲存裝置 (NAS)

NAS 裝置係為一部涵蓋所有功能並與網路連結的電腦。它唯一的用途是對網路上其他裝置提供以檔案為單位的資料儲存服務。NAS 裝置上的作業系統及其他軟體可提供資料儲存、檔案系統及檔案存取的功能,以及管理這些功能 (如檔案儲存) 的能力。

注意

唯一支援 NAS 的情況,是與設為使用「遠端 BLOB 儲存」的內容資料庫搭配使用。任何網路儲存架構回應 Ping 的時間都必須在 1 ms 之內,且必須在 20 ms 之內傳回資料的第一個位元組。這個限制並不適用於本機 SQL Server FILESTREAM 提供者,因為它只會在同一部伺服器上以本機方式儲存資料。

選擇磁碟類型

系統中所用的磁碟類型將會影響可靠性及效能。在所有其他條件相同之下,磁碟機越大,平均搜尋時間越長。SharePoint Server 2010 支援下列磁碟類型:

  • 小型電腦系統介面 (SCSI)

  • 序列 ATA (SATA)

  • 序列連接 SCSI (SAS)

  • 光纖通道 (FC)

  • 整合式電子裝置 (IDE)

  • 固態硬碟 (SSD) 或快閃磁碟

選擇 RAID 類型

RAID (獨立磁碟容錯陣列) 通常用於改善個別磁碟效能特性 (它可在許多磁碟間切分資料),並提供保護,以免受個別磁碟故障影響。

SharePoint Server 2010 支援所有 RAID 類型,但是,建議您使用 RAID 10 或具有同等效能的特定廠商 RAID 解決方案。

設定 RAID 陣列時,請務必將檔案系統依照廠商提供的補償作法調整。如果廠商未提供說明,請參閱 SQL Server 預先部署 I/O 的最佳作法 (https://go.microsoft.com/fwlink/p/?LinkID=105583)。

如需佈建 RAID 及 SQL Server I/O 子系統的詳細資訊,請參閱 SQL Server 最佳作法文章 (https://go.microsoft.com/fwlink/p/?LinkId=168612)。

估算記憶體需求

SharePoint Server 2010 所需的記憶體,與執行 SQL Server 之伺服器上主控的內容資料庫大小息息相關。

當新增服務應用程式及功能時,您的需求就可能隨之提高。下表列出我們建議的記憶體準則。

注意

我們對小型及中型部署的定義詳述於<SharePoint Server 2010 的容量管理與縮放概觀>一文中的<參考架構>。

內容資料庫的合併大小 對執行 SQL Server 之電腦的 RAM 建議值

小型生產部署下限

8 GB

中型生產部署下限

16 GB

對大於 2 TB 的建議

32 GB

對介於 2 TB 到 5 TB 之間的建議

64 GB

超過 5 TB 的建議

超過 64 GB 的額外 RAM 可改善 SQL Server 快取速度

注意

這些值大於 SQL Server 的建議下限值,因為 SharePoint Server 2010 環境需散發資料。如需 SQL Server 系統需求的詳細資訊,請參閱安裝 SQL Server 2008 的硬體和軟體需求 (https://go.microsoft.com/fwlink/p/?LinkId=129377)。

其他會影響所需記憶體的因素還包括下列幾點:

  • 使用 SQL Server 鏡像。

  • 常使用大於 15 MB 的檔案。

瞭解網路拓撲需求

請規劃伺服器陣列內及伺服器陣列之間的網路連線。建議您使用低延遲的網路。

以下列出一些最佳作法及建議:

  • 伺服器陣列中的所有伺服器對執行 SQL Server 的伺服器之間都應具有 LAN 頻寬及延遲。延遲不得超過 1 毫秒。

  • 不建議使用廣域網路 (WAN) 拓撲,因為在這種環境下,執行 SQL Server 的伺服器是透過網路從伺服器陣列的其他元件以遠端方式部署,此網路產生的延遲時間會超過 1 ms。這種拓撲尚未經過測試。

  • 如果打算使用 SQL Server 鏡像或記錄傳送功能,使遠端網站保持在最新狀態,請規劃適當的 WAN 網路。

  • 建議網頁伺服器及應用程式伺服器最好有兩個網路介面卡:一個處理使用者流量,另一個處理執行 SQL Server 的伺服器之間的通訊。

設定 SQL Server

以下小節說明如何為 SharePoint Server 2010 規劃 SQL Server 的設定。

本節內容:

  • 判斷需要多少個執行個體或伺服器

  • 設定儲存空間及記憶體

  • 設定 SQL Server 選項

  • 設定資料庫

評估需要多少部伺服器

一般而言,SharePoint Server 2010 的設計是為了利用 SQL Server 擴充規模的優點,也就是說,SharePoint Server 2010 與大量 SQL Server 中型執行伺服器搭配運作的效能,會優於與少數大型伺服器搭配運作的效能。

請務必將 SQL Server 安裝在專用伺服器上,也就是此伺服器既不執行其他伺服器陣列角色,也不為其他應用程式主控資料庫,除非這套系統是部署在獨立伺服器上。

下列一般性準則告訴您何時可額外部署要執行 SQL Server 的伺服器:

  • 如果有超過四部網頁伺服器滿載,則請額外新增資料庫伺服器。

  • 當您目前的伺服器已達到 RAM、CPU、磁碟 IO 輸送量、磁碟容量或網路輸送量的有效資源上限時,請另行新增資料庫伺服器。

注意

Microsoft 可支援不遵循上述準則的伺服器設定。

若要在執行 Secure Store Service 應用程式的情況下獲得較佳的安全認證儲存效能,建議您最好將 Secure Store 資料庫架設在僅限一位管理員存取的個別資料庫執行個體上。

設定儲存空間及記憶體

在執行 SQL Server 2008 的伺服器上,建議每個 CPU 的 L2 快取最少要有 2 MB 以改善記憶體效能。

遵循廠商的儲存設定建議

若要使實體儲存陣列在設定後能獲得最佳效能,請遵照儲存裝置廠商提供的硬體設定建議,而不要依賴作業系統的預設值。

如果廠商未提供說明,建議您使用 DiskPart.exe 磁碟設定公用程式來設定 SQL Server 2008 的儲存空間。如需詳細資訊,請參閱預先部署 I/O 的最佳作法 (https://go.microsoft.com/fwlink/p/?LinkID=105583)。

資源越多越好

請確保磁碟的 SQL Server I/O 通道並未由其他應用程式共用,例如分頁檔案及 Internet Information Services (IIS) 記錄檔。

匯流排頻寬越大越好。匯流排頻寬越大,可靠性及效能越佳。您需考慮到匯流排頻寬不是只有磁碟才會使用,舉例來說,您還必須考慮到網路存取。

設定 SQL Server 選項

部署 SharePoint Server 之前,您應先設定下列 SQL Server 設定及選項。

  • 請勿在支援 SharePoint Server 的 SQL Server 上啟用自動建立統計資料。SharePoint Server 會設定佈建及升級的必要設定。自動建立統計資料有可能會大幅變更查詢的執行計畫,從一個 SQL Server 執行個體變成另一個 SQL Server 執行個體。因此,為使所有客戶都能獲得一致的支援,SharePoint Server 針對查詢提供程式碼形式的提示,以便所有情況下都能擁有最佳效能。

  • 為確保能取得最佳效能,強烈建議您針對主控 SharePoint Server 2010 資料庫的 SQL Server 執行個體,將平行處理原則的最大程度 (MAXDOP) 設為 1。如需如何設定「平行處理原則的最大程度」的詳細資訊,請參閱max degree of parallelism 選項 (https://go.microsoft.com/fwlink/p/?LinkId=189030)。

  • 若要讓維護工作變得更簡便,請未伺服器陣列中的每部資料庫伺服器設定 SQL Server 連線別名。所謂連線別名,是個可在連線至 SQL Server 執行個體時使用的替代名稱。如需詳細資訊,請參閱 如何:設定 SQL Server 別名 (SQL Server Management Studio) (https://go.microsoft.com/fwlink/p/?LinkId=132064&clcid=0x404)。

設定資料庫

下列準則說明在您環境中設定每個資料庫時所應規劃的最佳作法。

將資料分別放在不同磁碟,並定出優先順序

在理想狀況下,tempdb 資料庫、內容資料庫、Usage 資料庫、搜尋資料庫及 SQL Server 2008 交易記錄檔應分別放在不同實體硬碟上。

下列清單提供某些制定資料優先順序的最佳作法及建議:

  • 在速度較快的磁碟間排定資料的優先順序時,請使用下列分級方式:

    1. Tempdb 資料檔及交易記錄檔

    2. 資料庫交易記錄檔

    3. 搜尋資料庫 (不包括搜尋管理資料庫)

    4. 資料庫資料檔

    在大部分以讀取為主的入口網站中,資料的優先順序應高於記錄檔。

  • 根據測試與客戶資料顯示,SharePoint Server 2010 伺服器陣列的效能可能會因為 tempdb 的磁碟 I/O 不足而大幅降低。為避免此問題,請為 tempdb 配置專用的磁碟。若預計會有或監視到很高的工作負載 (亦即平均讀取作業或平均寫入作業需要 20 ms 以上),您可能必須將檔案分別放在不同磁碟,或以速度較快的磁碟取代原有磁碟,以緩解瓶頸。

  • 為獲得最佳效能,請將 tempdb 放置於 RAID 10 陣列上。tempdb 資料檔數目應等於核心 CPU 的數目,且 tempdb 資料檔應設定為相同的大小。為此目的,請將雙核心處理器算成是兩個 CPU。另請將每個支援超執行緒的處理器算成是單一 CPU。如需詳細資訊,請參閱最佳化 tempdb 效能 (https://go.microsoft.com/fwlink/p/?LinkID=148537)。

  • 將資料庫資料與交易記錄檔分別放在不同磁碟上。如果因為檔案太小而無法使用整個磁碟或等量磁碟區,或您的磁碟空間不足,而使檔案必須共用磁碟,請將使用模式不同的檔案存放在相同的磁碟上,以儘可能減少同時執行的存取要求。

  • 請洽詢儲存裝置硬體廠商,以瞭解應如何設定所有記錄檔與搜尋資料庫,讓您特定的儲存解決方案獲得最佳寫入效能。

為內容資料庫使用多個資料檔

請遵循下列建議以獲得最佳效能:

  • 針對此資料庫,僅建立主要檔案群組中的檔案。

  • 將檔案散發到不同的磁碟。

  • 資料檔數目應小於或等於核心 CPU 的數目。為此目的,請將雙核心處理器算成是兩個 CPU。另請將每個支援超執行緒的處理器算成是單一 CPU。

  • 建立大小相同的資料檔。

重要

雖然 SharePoint Server 2010 內建的備份及復原工具,可用以備份及復原多個資料檔,但是若您在相同的位置進行覆寫,則這些工具無法將多個資料檔還原至不同的位置。有鑑於此,強烈建議您如果對單一內容資料庫使用多個資料檔,應使用 SQL Server 備份及復原工具。如需備份及復原 SharePoint Server 2010 的詳細資訊,請參閱<在 SharePoint 2010 中規劃備份及復原>。

如需建立及管理檔案群組的詳細資訊,請參閱實體資料庫檔案與檔案群組 (https://go.microsoft.com/fwlink/p/?LinkId=117909)。

限制內容資料庫的大小以改善管理

規劃資料庫大小將可改善管理、效能,並讓您環境升級工作變得更輕鬆。

為確保系統效能,建議您將內容資料庫的大小限定為 200 GB (當特定使用案例與情況支援較大的大小時除外)。如需內容資料庫大小限制的詳細資訊,請參閱<SharePoint Server 2010 容量管理:軟體界限和限制>中的<內容資料庫限制>一節。

一般情況下,我們建議網站集合不應超過 100 GB,除非那是資料庫中唯一的網站集合,因此您可以在必要時使用 SharePoint Server 2010 的細微備份工具將網站集合移至其他資料庫。

如需大型文件存放庫的詳細資訊,請參閱<效能與容量測試結果及建議 (SharePoint Server 2010)>中的<評估大型文件存放庫的效能與容量需求>。

主動管理資料及記錄檔的增長

建議您考量下列建議,主動管理資料及記錄檔的增長:

  • 將所有資料及記錄檔盡量加大成預計的最後大小。

  • 建議您基於安全因素考量啟用自動成長。請勿仰賴預設的自動成長設定。請在設定自動成長時考慮下列準則:

    • 如果規劃的內容資料庫超出建議的大小 (200 GB),請將資料庫自動成長值設為固定的 MB 數目,而非百分比。如此可減少 SQL Server 增加檔案大小的頻率。增加檔案大小是一種封鎖作業,它會使用空白頁填入新的空間。

    • 將 Search Service 應用程式屬性儲存區資料庫的自動成長值設為 10%。

    • 如果內容資料庫計算出的大小在明年之內不會達到最大大小建議值 200 GB,請使用 ALTER DATABASE MAXSIZE 屬性,將此值設為明年內預計會達到的最大大小,並允許有 20% 誤差。請定期檢視此設定,確保就過去的成長率來看,該值仍屬適切。

  • 維持至少 25% 水準的可用磁碟空間以因應成長與尖峰使用模式。若是以在 RAID 陣列中新增磁碟的方式或配置更多儲存空間之方式因應成長,請嚴密監視磁碟大小,以避免發生空間不足的情況。

驗證並監視儲存空間及 SQL Server 效能

請測試硬體上的效能及備份解決方案是否可符合服務等級協定 (SLA)。尤其請測試執行 SQL Server 之電腦的 I/O 子系統,確保效能可達到令人滿意的程度。

請測試所用的備份解決方案,確保該解決方案可在可用維護時間範圍內備份系統。如果備份解決方案無法符合您企業所需的 SLA,請考慮使用增量備份解決方案,例如 System Center Data Protection Manager (DPM) 2010。

請務必針對執行 SQL Server 的伺服器,追蹤下列資源元件:CPU、記憶體、快取/叫用率及 I/O 子系統。當這些元件中有一或多個元件似乎有緩慢或負擔過重的現象,請根據目前工作負載及預計工作負載,分析適當策略。如需詳細資訊,請參閱SQL Server 2008 效能問題的疑難排解 (https://go.microsoft.com/fwlink/p/?LinkID=168448)。

下節列出建議使用的效能計數器,以監視在 SharePoint Server 2010 環境中執行的 SQL Server 資料庫效能。同時也會列出每部計數器的正常值 (近似值)。

如需如何監視效能及使用效能計數器的詳細資訊,請參閱監視效能 (https://go.microsoft.com/fwlink/p/?LinkId=189032)。

要監視的 SQL Server 計數器

請監視下列 SQL Server 計數器以確保伺服器運作正常:

  • General statistics   此物件所提供的計數器可監視全伺服器的一般活動,例如目前連線數目,及每秒從執行 SQL Server 執行個體之電腦上連線及中斷連線的使用者人數。請考慮監視下列計數器:

    • User connections   這個計數器會顯示執行 SQL Server 之電腦上的使用者連線數目。如果您看到此數字比您的基準值高出 500%,就會感受到效能降低。
  • Databases   此物件提供的計數器可監視大量複製作業、備份及還原輸送量,以及交易記錄活動。請監視交易及交易記錄檔,以判斷資料庫中發生多少使用者活動,及交易記錄檔的完整程度。使用者活動量不僅可用來判斷資料庫效能,也會影響記錄檔大小、鎖定及複寫。監視低層級記錄活動以評量使用者活動及資源用量,將可協助您找出效能瓶頸。請考慮監視下列計數器:

    • Transactions/sec   此計數器會顯示特定資料庫或整個伺服器上每秒的交易量。此數字若超出基準值,將可協助您對問題進行疑難排除。
  • Locks   此物件可提供個別資源類型上的 SQL Server 鎖定資訊。請考慮監視下列計數器:

    • Average Wait Time (ms)   此計數器會顯示因為等待所造成之鎖定要求的平均等待時間。

    • Lock Wait Time (ms)   此計數器會顯示最後一秒之鎖定的等待時間。

    • Lock waits/sec   此計數器會顯示因為無法立即滿足而必須等待資源的每秒鎖定數目。

    • Number of deadlocks/sec   此計數器會顯示執行 SQL Server 之電腦上的每秒死結數目。此值不應超過 0。

  • Latches   此物件提供的計數器可監視內部 SQL Server 資源鎖定 (稱為閂鎖)。監視閂鎖數目來判斷使用者活動及資源用量,可協助您找出效能瓶頸。請考慮監視下列計數器:

    • Average Latch Wait Time (ms)   此計數器會顯示必須等待之閂鎖請求的平均閂鎖等待時間。

    • Latch Waits/sec   此計數器會顯示無法立即被授與的閂鎖請求數目。

  • SQL Statistics   此物件提供的計數器可監視編譯作業及送至 SQL Server 執行個體的請求類型。監視查詢編譯及重新編譯作業的次數,及 SQL Server 執行個體收到的批次數目,可讓您了解 SQL Server 目前處理使用者查詢的速度,以及查詢最佳化工具處理查詢的效率。請考慮監視下列計數器:

    • SQL Compilations/sec   此計數器表示每秒進入編譯程式碼路徑的次數。

    • SQL Re-Compilations/sec   此計數器表示每秒陳述式重新編譯的次數。

  • Buffer Manager   此物件提供可監視 SQL Server 使用記憶體以儲存資料頁、內部資料結構及程序快取情形的計數器,也提供可在 SQL Server 讀寫資料庫頁面時監視實體 I/O 的計數器。請考慮監視下列計數器:

    • Buffer Cache Hit Ratio

    • 此計數器會顯示從緩衝區快取中找到頁面而不必從磁碟讀取的百分比。此比例是以快取叫用總數除以最後幾千次頁面存取中的快取查閱總數。因為從快取讀取的成本低於從磁碟讀取的成本,所以最好此比例能夠很高。一般而言,只要增加 SQL Server 可用的記憶體容量,就能提高緩衝區快取叫用率。

  • Plan Cache   此物件提供的計數器可監視 SQL Server 使用記憶體以儲存物件 (例如預存程序、特定與備妥 Transact-SQL 陳述式,以及觸發程序) 的情形。請考慮監視下列計數器:

    • Cache Hit Ratio

    • 此計數器表示在計畫中快取叫用與查閱之間的比例。

要監視的實體伺服器計數器

請監視下列計數器以確保執行 SQL Server 的電腦運作正常:

  • Processor: % Processor Time: _Total   此計數器會顯示處理器除閒置期間外,執行應用程式或作業系統程序的時間百分比。在執行 SQL Server 的電腦上,此計數器應保持在百分之 50 至 75 之間。若持續超載,請檢查是否有異常的處理活動,或伺服器是否需要額外的 CPU。

  • System: Processor Queue Length   此計數器會顯示處理器佇列中執行緒的數目。請監視此計數器,確保該值維持在核心 CPU 數目的兩倍以下。

  • Memory: Available Mbytes   此計數器會顯示在電腦上執行之處理程序可使用的實際記憶體大小 (MB)。請監視此計數器,確保至少維持在可用實際 RAM 總數百分之 20 的水準。

  • Memory: Pages/sec   此計數器會顯示解決指定硬體分頁錯誤的磁碟讀寫頁面速率。請監視此計數器,確保其維持在 100 以下。

如需詳細資訊及記憶體疑難排解方法,請參閱 SQL Server 2005 監視記憶體使用狀況 (https://go.microsoft.com/fwlink/p/?LinkID=105585)。

要監視的磁碟計數器

請監視下列計數器,確保磁碟狀況正常。請注意,下列值代表的是在一段時間內所量測的值,而不是突然暴增期間所造成的值,也不是某一次度量獲得的值。

  • Physical Disk: % Disk Time: DataDrive   此計數器會顯示所選磁碟機忙於處理讀寫要求所經過的時間百分比。這常用來表示磁碟的忙碌狀況。如果 PhysicalDisk: % Disk Time 計數器很高 (大於 90%),請檢查 PhysicalDisk: Current Disk Queue Length 計數器,看看有多少系統請求正等待要取得磁碟存取。等待 I/O 請求數目應維持在低於組成實體磁碟之轉軸數目的 1.5 至 2 倍。

  • Logical Disk: Disk Transfers/sec   此計數器會顯示磁碟上讀寫作業的執行速率。使用此計數器可適當監視成長趨勢及預測。

  • Logical Disk: Disk Read Bytes/secLogical Disk: Disk Write Bytes/sec   這兩個計數器會顯示讀取或寫入作業期間,磁碟傳輸的位元組速率。

  • Logical Disk: Avg. Disk Bytes/Read   此計數器會顯示讀取作業期間,磁碟傳輸的平均位元組數。此值可反映磁碟延遲:較大的讀取作業會略微提高延遲。

  • Logical Disk: Avg. Disk Bytes/Write   此計數器會顯示寫入作業期間,傳輸至磁碟的平均位元組數。此值可反映磁碟延遲:較大的寫入作業會略微提高延遲。

  • Logical Disk: Current Disk Queue Length   此計數器會顯示收集效能資料時,磁碟上未完成的要求數目。對此計數器而言,值愈低愈好。每部磁碟機上的值超過 2,即表示出現瓶頸而應予以調查。亦即由 4 部磁碟機組成的邏輯單位 (LUN),能接受的值最多只到 8。瓶頸會產生工作積存而可能擴散超過目前存取磁碟的伺服器,致使使用者等候甚久。可能的瓶頸解決方案是在 RAID 陣列中加入更多磁碟、以更快的磁碟取代現有的磁碟,或將部分資料移至其他磁碟。

  • Logical Disk: Avg. Disk Queue Length   此計數器會顯示所選磁碟在取樣間隔期間,所佇列的讀寫要求平均數。其規則為,每個轉軸上未完成的讀寫要求應不超過兩個;但因存放裝置虛擬化及設定與設定間的 RAID 層級差異,使得此值測量困難。請尋找既大於磁碟佇列平均長度且大於磁碟平均延遲的情況。此組合表示存放裝置陣列快取使用過度,或與其他應用程式共用轉軸的狀況已影響效能。

  • Logical Disk: Avg. Disk sec/ReadLogical Disk: Avg. Disk sec/Write   這些計數器會顯示磁碟讀寫作業的平均時間 (以秒計)。請監視這些計數器,確保其維持在磁碟容量的 85% 以下。讀取或寫入作業若超過 85% 的磁碟容量,磁碟存取時間會以指數方式增加。若要決定適用於您硬體的特定容量,請參閱廠商文件或使用 SQLIO 磁碟子系統評測工具計算。如需詳細資訊,請參閱 SQLIO 磁碟子系統評測工具 (https://go.microsoft.com/fwlink/p/?LinkID=105586)。

    • Logical Disk: Avg. Disk sec/Read   此計數器會顯示磁碟讀取作業的平均時間 (以秒計)。在調整完善的系統上,對於記錄檔,理想值為 1 至 5 ms (在快取陣列上理想狀態為 1 ms),對於資料,則為 4 至 20 ms (理想狀態為小於 10 ms)。尖峰時間會出現較高的延遲,但若經常出現高值,即應調查原因。

    • Logical Disk: Avg. Disk sec/Write   此計數器會顯示磁碟寫入作業的平均時間 (以秒計)。在調整完善的系統上,理想值為記錄 1 至 5 ms (理想狀態為一個快取陣列 1 ms),資料 4 至 20 ms (理想狀態為小於 10 ms)。尖峰時間會出現較高的延遲,但若經常出現高值,即應調查原因。

    使用 RAID 設定搭配 Logical Disk: Avg. Disk Bytes/ReadLogical Disk: Avg. Disk Bytes/Write 計數器時,請使用下表所列的公式,判斷磁碟的輸入及輸出速率。

    RAID 層級 公式

    RAID 0

    每部磁碟的 I/O = (讀取次數 + 寫入次數) / 磁碟數

    RAID 1

    每部磁碟的 I/O = [讀取次數 + (2 * 寫入次數)] / 2

    RAID 5

    每部磁碟的 I/O = [讀取次數 + (4 × 寫入次數)] / 磁碟數

    RAID 10

    每部磁碟的 I/O = [讀取次數 + (2 × 寫入次數)] / 磁碟數

    例如,若 RAID 1 系統有兩部實體磁碟,計數器值即如下表所示。

    計數器

    Avg. Disk sec/Read

    80

    Logical Disk: Avg. Disk sec/Write

    70

    Avg. Disk Queue Length

    5

    每部磁碟的 I/O 值計算如下:(80 + (2 × 70))/2 = 110

    磁碟佇列長度計算如下:5/2 = 2.5

    此種狀況會發生臨界 I/O 瓶頸。

其他監視工具

您也可以使用 SQL Server 2008 中的 sys.dm_io_virtual_file_stats 動態管理檢視,以監視磁碟延遲並分析趨勢。如需詳細資訊,請參閱 sys.dm_io_virtual_file_stats (Transact-SQL) (https://go.microsoft.com/fwlink/p/?LinkID=105587)。

See Also

Other Resources

資源中心:SharePoint Server 2010 容量管理
資源中心:SQL Server 和 SharePoint Server 2010 資料庫