Microsoft SQL Server 2019 與 Dell EMC Unity XT 快閃記憶體陣列

今天,我們將向您介紹將 SQL Server 2019 與 Unity XT 儲存系統結合使用的功能,並提供有關使用 VMware 技術虛擬化 SQL Server、設定和管理 Dell EMC 基礎架構的基本元件的建議。

Microsoft SQL Server 2019 與 Dell EMC Unity XT 快閃記憶體陣列
2017年,Dell EMC和VMware發布了關於SQL Server趨勢和演變的調查結果-「SQL Server轉型:邁向敏捷性和彈性」(SQL Server 轉型:邁向敏捷性和彈性),其中使用了 SQL Server 專業協會 (PASS) 成員社群的經驗。 結果表明,在不斷增加的資料量和新業務需求的推動下,SQL Server 資料庫環境的規模和複雜性都在不斷增長。 SQL Server 資料庫現已部署在許多公司中,為關鍵任務應用程式提供支持,並且通常是數位轉型的基礎。 

自本次調查進行以來,微軟發布了下一代DBMS——SQL Server 2019。除了改善關係引擎和資料儲存的基本功能外,還出現了新的服務和功能。 例如,SQL Server 2019 支援使用 Apache Spark 和 Hadoop 分散式檔案系統 (HDFS) 的大數據工作負載。

Dell EMC 與 Microsoft 結盟

Dell EMC 和 Microsoft 在開發 SQL Server 解決方案方面有著長期合作。 成功實施 Microsoft SQL Server 等綜合資料庫平台需要將軟體功能與底層 IT 基礎架構協調起來。 此基礎設施包括處理器處理能力、記憶體資源、儲存和網路服務。 Dell EMC 為各種類型的工作負載和應用程式提供 SQL Server 平台基礎架構。

Dell EMC PowerEdge 伺服器系列提供各種處理器和記憶體配置。 這些配置適用於各種工作負載:從小型企業應用程式到最大的關鍵任務系統,例如企業資源規劃 (ERP)、資料倉儲、進階分析、電子商務等。此儲存系列專為儲存非結構化和結構化數據。 

透過 Dell EMC 基礎架構部署 SQL Server 2019 的客戶可以使用 SQL Server 和 Apache Spark 處理結構化和非結構化資料。 SQL Server 還支援用戶端存取、伺服器到伺服器以及伺服器到儲存通訊技術的組合。 Dell EMC 的願景是基於提供開放生態系統的分類模型。 組織可以從各種行業標準網路應用程式、作業系統和硬體平台中進行選擇。 這種方法使您能夠最大限度地控制技術和架構,從而顯著節省成本並提高靈活性。

VMware 虛擬化了 SQL Server 實現高效能和操作一致性所需的所有關鍵基礎架構元件。 除了私有雲之外,VMware 目前也提供跨私有雲和公有雲架構的工作負載混合模型。 

許多組織正在轉向虛擬化來降低基礎設施成本、提供高可用性並簡化災難復原。 94% 受訪的 SQL Server 專業人員表示他們的環境中存在一定程度的虛擬化。 70% 使用虛擬化的使用者選擇了 VMware。 60% 的 SQL Server 虛擬化程度達到 75% 或更高。 此外,調查結果強烈表明,在虛擬化層實現的高可用性和災難復原已成為決定虛擬化 SQL Server 資料庫的重要因素。

SQL Server 2019 中的新功能

SQL Server 2019 資料庫平台包括廣泛的技術、功能和服務,支援分析、企業資料庫、商業智慧 (BI) 和可擴展事務處理 (OLTP) 等關鍵任務應用程式。 SQL Server 平台已獲得管理資料整合、資料倉儲、報表和進階分析、複製功能以及半結構化資料類型管理的功能。 當然,並非所有客戶端或應用程式都需要所有這些功能。 此外,在許多情況下,最好使用虛擬化來分離 SQL Server 服務。 

如今,企業通常需要依賴來自各種不斷增加的資料集的大量資料。 透過 SQL Server 2019,您可以從所有資料中獲得近乎即時的見解。 SQL Server 2019 叢集提供了處理大型資料集的全面環境,包括使用機器學習和人工智慧功能。 SQL Server 2019 中主要的新功能和更新列於 微軟文件.

Dell EMC Unity XT 中階儲存系統

Dell EMC Unity 儲存系列大約在三年前推出,自那時以來已售出 40 多套系統。 客戶欣賞這款中檔陣列的簡單性、性能和成本效益。 Dell EMC Unity XT 中階平台是共用儲存解決方案,可為 SQL Server 工作負載提供低延遲、高吞吐量和低管理開銷。 所有 Unity XT 系統均使用雙儲存處理器 (SP) 架構來處理 I/O 和主動/主動資料操作。 Unity XT 雙 SP 使用完整的內部 000Gbps SAS 連接和專有的多核心架構,以實現高效能和高效率。 磁碟陣列可讓您使用額外的架子來擴展儲存容量。

Microsoft SQL Server 2019 與 Dell EMC Unity XT 快閃記憶體陣列
Dell EMC Unity XT 是下一代陣列(混合和全快閃),可顯著提高效能、提高效率,並為多雲環境添加新功能和服務。 

Unity XT 架構可讓您同時處理資料、減少資料量並支援複製等服務,而無需犧牲應用程式效能。 與上一代解決方案相比,Dell EMC Unity XT儲存系統的效能提高了一倍,回應時間加快了75%。 當然,Dell EMC Unity 支援 NVMe 標準。

具有 NVMe 驅動器的儲存系統在延遲敏感型應用程式中展示了其最佳效能。 例如,在海量資料庫等應用中,NVMe 提供低延遲和高峰值資料速率。 減少延遲和增加並發性顯著提高讀/寫效能。 根據 IDC 預測,到 2021 年,具有 NVMe 和 NVMe-oF(NVMe over Fabric)連接的快閃記憶體陣列將佔全球外部儲存系統銷售總收入的約一半,這並非巧合。 

資料壓縮演算法提高儲存效率。 Dell EMC Unity XT 可將資料量減少多達五倍。 另一個重要指標是系統的整體效率。 Dell EMC Unity XT 使用 85% 的系統容量。 壓縮和重複資料刪除以內聯模式在控制器層級執行。 資料以壓縮形式保存。 該系統還可以自動處理資料快照。

易於使用的 Unity 快閃記憶體陣列具有統一(區塊和檔案)存取功能,可提供穩定的回應時間,與雲端儲存服務集成,並支援無需資料遷移的升級。 在其基本配置中,這款多功能儲存系統可在 30 分鐘內安裝完畢。

稱為「動態池」的資料儲存技術可讓您從靜態記憶體擴展轉向動態記憶體擴展,提供高度的操作靈活性並輕鬆增加系統容量。 動態池可節省容量和預算,並且重建所需的時間更少。 擴展 Dell EMC Unity 的容量和效能不需要資料遷移。 

如今,許多公司將多種公有雲服務與其本地基礎設施結合使用。 Dell EMC Unity XT 可以作為 Dell Technologies 雲端環境的元件。 此儲存系統可以在公有雲中使用,並且可以將資料傳輸到私有雲。 此外,Dell EMC Unity XT 儲存可作為服務提供。 這是 Dell EMC 雲端儲存服務的雲端儲存服務之一。
 
雲端儲存變得越來越流行,因為它可以透過降低基礎設施成本來提高投資報酬率。 雲端儲存服務透過將 Dell EMC 儲存(直接連接到公有雲資源)作為服務提供,將客戶的資料中心擴展到雲端。 第三方供應商可以直接向客戶資料中心的 Dell EMC Unity、PowerMax 和 Isilon 系統提供高速(低延遲)公有雲連線。

Unity XT 系列包含 Unity XT 全快閃、Unity XT 混音、UnityVSA 和 Unity 雲端版系統。
 

統一混合和快閃記憶體陣列 

基於 Intel 的 Unity XT 混合和 Unity XT 全快閃儲存系統為區塊存取、檔案存取和 VMware VVol 提供整合架構,並支援網路附加儲存 (NAS)、iSCSI 和光纖通道 (FC) 協定。 Unity XT 混合式和 Unity XT 全快閃平台支援 NVMe。

Unity XT 混合式系統支援多雲環境。 多雲意味著將儲存擴展到雲端或部署到雲端並提供靈活的資源利用選項。 多雲儲存旨在確保多個雲端平台(私有雲和公有雲)之間的行動性和資料可攜性。 這不僅影響資料移動的過程,也影響多個公有雲中應用程式存取資料的組織。

Microsoft SQL Server 2019 與 Dell EMC Unity XT 快閃記憶體陣列
這些混合陣列提供以下功能:

  • 可擴充至 16 PB 原始容量。
  • 適用於所有快閃記憶體池的內建資料縮減功能。
  • 快速安裝和配置(平均需要25分鐘)。

SSD技術正在迅速進步,新的革命性產品將在未來幾年上市。 同時,組織將繼續以 SSD 取代傳統 HDD,以提高效能、簡化管理並節省能源。 新一代全快閃陣列將具有更先進的儲存自動化、公有雲整合和整合資料保護。 

Unity XT 全快閃系統可提供速度、效率和多雲支援。 他們的特點:

  • 生產力翻倍。
  • 數據縮減高達 7:1。
  • 快速安裝和配置(過程不到30分鐘)。

 UnityVSA

UnityVSA 是使用伺服器、共用或雲端儲存容量的 VMware ESXi 虛擬環境的軟體定義儲存。 UnityVSA HA 是一種雙儲存 UnityVSA 配置,可提供額外的容錯能力。 UnityVSA 儲存提供:

  • 高達 50 TB 的全功能統一儲存容量。
  • 與 Unity XT 系統和功能相容。
  • 支援高可用性系統 (UnityVSA HA)。
  • 作為 NAS 和 iSCSI 連線。
  • 從其他 Unity XT 平台複製資料。

Unity雲端版

對於雲端中的檔案同步和災難復原操作,Unity XT 系列包括 Unity Cloud Edition,它提供:

  • 使用部署在雲端的軟體定義儲存 (SDS) 的全功能儲存功能。
  • 使用 VMware Cloud on AWS 輕鬆部署區塊和檔案儲存。
  • 災難復原支持,包括測試和數據分析。

Microsoft SQL Server 2019 與 Dell EMC Unity XT 快閃記憶體陣列

適用於 SQL Server 的 Unity XT 全快閃

Unisphere Research 的 2017 年報告「SQL Server 轉型:邁向敏捷性和彈性」(SQL Server 轉型:邁向敏捷性和彈性) 22% 的受訪者表示他們在生產中使用快閃記憶體儲存技術 (16%) 或計劃這樣做 (6%)。 30% 使用包含快閃記憶體的混合陣列。 13% 使用直連快閃記憶體陣列。 13% 將 SQL Server 資料庫備份到快閃記憶體。

快閃記憶體儲存與 SQL Server 結合使用的快速採用意味著 Unity XT 全快閃陣列特別適合 SQL Server 開發人員和管理員。 Unity XT 全快閃系統為 SQL Server 開發人員和管理員提供了超越典型儲存區域網路 (SAN) 的功能和效能。

Microsoft SQL Server 2019 與 Dell EMC Unity XT 快閃記憶體陣列
Unity XT 全快閃系統支援 NVMe(可實現更高的高效能和低延遲),具有 2U 外形尺寸,支援雙核心處理器、主動/主動模式下的兩個控制器。

Unity XT 全快閃型號

統一XT 

處理器 

記憶體(每個處理器)

最大限度。 驅動器數量

最大限度。 「原始」容量 (PB) 

380F 

1 英特爾 E5-2603 v4 
6c/1.7GHz

64 

500 

2.4 

480F 

2 英特爾至強銀牌 
4108 8c/1.8GHz 

96 

750 

4.0 

680F 

2 英特爾至強銀牌 
4116 12c/2.1GHz

192 

1,000 

8.0 

880F 

2 英特爾至強金牌 6130 
16c/2.1GHz

384 

1,500 

16.0 

詳細資訊可以在陣列規格中找到(Dell EMC Unity XT 儲存系列規格表).

儲存池

許多 SQL Server 專業人員都知道,所有現代儲存陣列都能夠將磁碟分組為更大的儲存單元,並具有固定層級的 RAID 保護。 具有 RAID 保護的各個磁碟組是傳統的儲存池。 雖然 Unity XT 混合系統僅支援傳統池,但 Unity XT 全快閃陣列也提供動態儲存池。 透過動態儲存池,RAID 保護會套用於磁碟範圍(小於完整磁碟的儲存單元)。 動態池在管理和擴展磁碟池方面提供了更大的靈活性。 

Dell EMC 提供管理儲存池的最佳實踐,以最小的複雜度實現最大的效能。 例如,建議盡量減少 Unity XT 儲存池的數量,以降低複雜度並提高靈活性。 但是,在某些情況下,設定額外的儲存池可能非常有用,包括當您需要:

  • 支援具有不同 I/O 設定檔的單獨工作負載。
  • 分配資源以實現某些效能參數。
  • 為多租戶分配單獨的資源。
  • 建立較小的網域以防止失敗

儲存磁碟區 (LUN)

在選擇陣列中的捲數量時如何平衡控制和靈活性? 為了在 Unity 與 SQL Server 中實現最大靈活性,建議為每個資料庫檔案建立磁碟區。 在實踐中,大多數組織採用分層方法,其中關鍵資料庫被賦予最大的靈活性,而不太關鍵的資料庫檔案被分組到更少、更大的捲中。 我們建議檢查資料庫和任何相關應用程式的所有要求,因為資料保護和監控技術依賴文件隔離和放置。

多個卷通常難以管理,尤其是在虛擬環境中。 虛擬化 SQL Server 環境就是一個很好的例子,說明在單一磁碟區上託管多種檔案類型是有意義的。 在決定要建立的磁碟區數量時,資料庫管理員或儲存管理員(或兩者)必須在靈活性和可維護性之間選擇適當的平衡。

文件存儲

NAS 伺服器在 Unity XT 儲存空間上託管檔案系統。 可以使用 SMB 或 NFS 協定存取檔案系統,並且透過多協定檔案系統,您可以同時使用這兩種協定。 NAS 伺服器使用虛擬介面將主機連接到 SMB、NFS 和多協定檔案系統,以及 VMware NFS 儲存和 VMware 虛擬磁碟區。 檔案系統和虛擬介面在單一 NAS 伺服器內隔離,允許使用多個 NAS 伺服器進行多租戶。 如果儲存處理器故障,NAS 伺服器會自動進行故障轉移。 它們關聯的檔案系統也會進行故障轉移。

SQL Server 2012 (11.x) 及更高版本支援伺服器訊息區塊 (SMB) 3.0,它允許網路檔案共用儲存。 對於獨立和故障轉移群集安裝,您可以使用 SMB 儲存選項安裝系統資料庫(master、model、msdb 和 tempdb)和資料庫引擎使用者資料庫。 使用 Always On 可用性群組時,使用 SMB 儲存空間是一個不錯的選擇,因為檔案共用需要存取高度可用的網路資源。

使用 Unity XT 儲存為 SQL Server 部署建立 SMB 檔案共用是一個簡單的三步驟流程:建立 NAS 伺服器、檔案系統和 SMB 共用。 Dell EMC Unisphere 儲存管理軟體包含一個設定精靈,可協助您完成此流程。 但是,在 SMB 檔案共用上託管 SQL Server 工作負載時,需要記住一些重要注意事項,這些注意事項不一定適用於 SMB 檔案共用的使用。 Microsoft 編制了一份安裝和安全性問題以及當前已知問題的清單; 有關詳細信息,請參閱《使用 SMB 文件存儲安裝 SQL Server》 微軟文件.

數據快照

數據已成為公司最重要的資源,當今的關鍵任務環境需要的不僅僅是冗餘。 應用程式必須始終在線,並提供不間斷的操作和更新。 它們還需要透過本地快照複製和遠端複製等選項實現高效能和資料可用性。

Unity XT 儲存陣列提供共用通用工作流程、作業和架構的區塊和檔案快照功能。 Unity 的快照方法提供了一種簡單有效的資料保護方法。 快照使復原資料變得容易 - 回滾到較早的快照,或者您可以從先前的快照複製選定的資料。 下表顯示了 Unity XT 系統的快照保留期。

資料快照本地和遠端存儲

照片類型

CLI的
UI
REST的

手工 

預定 

手工 

預定 

手工 

預定 

當地的 

1年 

1年

5年 

週4

100年

沒有任何限制

偏僻的 

5年

255недель 

5年

255недель

5年

255недель

快照不能直接取代其他資料保護方法(例如備份)。 它們只能補充傳統備份,作為低 RTO 場景的第一道防線。

Dell EMC Unity 快照功能包括資料縮減和進階重複資料刪除。 快照還受益於在原始儲存資源上實現的空間節省。 當您對支援資料縮減功能的儲存資源進行快照時,可以對來源資料進行壓縮或重複資料刪除。

以下是有關在 SQL Server 資料庫中使用快照時資料庫還原的一些注意事項:

  • SQL Server 資料庫的所有元件都必須作為資料集來保護。 當資料和日誌檔案位於不同的 LUN 上時,這些 LUN 必須屬於一致性群組。 一致的群組可確保在群組中的所有 LUN 上同時拍攝快照。 當資料和日誌檔案位於多個 SMB 檔案共用上時,這些共用必須位於同一檔案系統上。
  • 從基於區塊的快照還原 SQL Server 資料庫時,如果 SQL Server 執行個體必須保持連接,請使用 Unisphere 主機連線。 對於基於檔案的恢復,使用快照作為來源建立額外的 SMB 共用。 安裝磁碟區後,可以使用不同的名稱附加資料庫,或者可以用復原的資料庫取代現有資料庫。

  • 在 Unisphere 中使用快照還原方法執行還原時,請讓 SQL Server 執行個體離線。 SQL Server 不知道復原操作。 使執行個體離線可確保磁碟區在復原之前不會因資料庫寫入而損壞。 一旦執行個體重新啟動,SQL Server災難復原將使資料庫進入一致狀態。
  • 同時啟用多個儲存物件的快照,然後在啟用其他快照之前確保系統處於建議的運作模式。

鏡頭自動化和調度

Unity XT 中的快照可以自動化。 Unisphere 儲存管理中提供以下預設快照選項:預設保護、較短保留保護和較長保留保護。 每個選項都會拍攝每日快照並保存不同時段的快照。

您可以選擇一個(或兩個)計劃選項 - 每 x 小時(從 1 到 24)和每天/每週。 每日/每週快照計畫可讓您指定拍攝快照的特定時間和日期。 對於所選的每個選項,您必須設定保留策略,可以將其配置為自動刪除池或暫時儲存它。

有關 Unity 快照的詳細資訊 - 位於 Dell EMC Unity 文檔

薄克隆

精簡複製是精簡區塊儲存資源(例如磁碟區、一致性群組或 VMware VMFS 資料儲存)的讀取/寫入副本,與其父資源共用區塊。 精簡複製是快速、緊湊地呈現 SQL Server 資料庫副本的好方法,這是傳統 SQL Server 工具無法實現的。 將精簡複製呈現給主機後,磁碟區即可聯機,並將使用 SQL Server 中的 DB Attach 方法附加資料庫。

將升級功能與精簡克隆一起使用時,請使精簡克隆上的所有資料庫離線。 這必須在更新操作之前完成。 如果在執行升級之前未能使資料庫離線,可能會導致 SQL Server 上出現資料不一致錯誤或資料結果不正確。

資料複製

複製是一種軟體功能,可將資料與同一網站或其他位置的遠端系統同步。 Unity 的複製和配置選項可讓您選擇一種有效的方法來滿足 SQL Server 資料庫的 RTO/RPO 要求,同時平衡效能和吞吐量。

使用 Dell EMC Unity Replication 保護多個磁碟區上的 SQL Server 資料庫時,您應將資料庫中的所有資料和記錄磁碟區限制為單一一致性群組或檔案系統。 然後在群組或檔案系統上設定複製,並且可以包括多個資料庫的磁碟區或共用。 需要不同複製選項的資料庫必須位於單獨的 LUN、一致性群組或檔案系統上。

精簡克隆與同步和非同步複製相容。 當精簡複製到目標時,它將成為磁碟區、一致性群組或 VMFS 儲存的完整副本。 複製後,精簡克隆是一個完全獨立的捲,具有自己的設定。

Microsoft SQL Server 2019 與 Dell EMC Unity XT 快閃記憶體陣列
來源系統和目標系統之間的精簡克隆複製過程。

tempdb資料庫不需要複製,因為SQL Server重新啟動時會重建該文件,因此元資料與其他SQL Server執行個體的方法不一致。 仔細選擇要複製的磁碟區以及這些磁碟區的內容可以消除不必要的複製流量。

整合的 Microsoft SQL Server 資料複製管理

大多數現代儲存產品(包括所有 Dell EMC 產品)可以透過以下方式建立任何檔案類型的「作業系統一致」副本:

  • 從主機到驅動器,各級作業系統的寫入順序一致。
  • 將磁碟區分組,以便不同磁碟區上的多個檔案保持寫入順序。

隨著可擴展儲存裝置的廣泛採用,Microsoft 為儲存提供者開發了 API。 此 API 允許儲存提供者與 SQL Server 資料庫軟體協調,使用卷影複製服務 (VSS) 建立「應用程式一致的副本」。 這些副本模擬 SQL Server 計劃和關閉期間 SQL Server 與作業系統之間的互動。 所有寫入緩衝區都將刷新,事務將被掛起,直到所有磁碟在某個時間點都更新並保持一致,這會記錄在 SQL 日誌中。

與 Unity XT 快照整合的 Dell EMC AppSync 軟體可簡化並自動化建立、使用和管理應用程式一致的工作資料副本的過程。 該軟體旨在用於資料庫復原和重複使用的複製控制場景。 

AppSync 軟體會自動發現應用程式資料庫、了解資料庫結構,並透過硬體或虛擬化層將檔案結構對應到底層 Unity XT 儲存。 它協調所有必要的步驟,從建立和驗證副本到在目標主機上安裝快照以及啟動或還原資料庫。 AppSync 支援並簡化 SQL Server 工作流程,包括更新和還原生產資料庫。

資料縮減和進階重複資料刪除

Dell EMC Unity 系列儲存系統提供功能豐富、易於使用的資料縮減服務。 不僅可以節省配置的主儲存資源,還可以節省這些資源的快照和精簡複製。 快照和精簡克隆繼承來源儲存的資料縮減設置,從而提高容量節省。

資料縮減功能包括重複資料刪除、壓縮和零區塊偵測活動,可能會增加使用者物件和內部使用的可用儲存空間量。 Unity XT 資料縮減功能取代了 Unity OE 4.3 及更高版本中的壓縮功能。 壓縮是一種資料縮減演算法,可以減少儲存資料集所需的實體容量分配。

Unity XT 系統還提供進階重複資料刪除功能,如果啟用了資料縮減,則可以啟用此功能。 進階重複資料刪除透過僅儲存 Unity 資料區塊的少量副本(通常只有一個副本)來減少使用者資料所需的容量。 重複資料刪除區域為XNUMX個LUN。 選擇儲存方案時請考慮這一點。 LUN 越少,重複資料刪除效果越好,但 LUN 越多,效能越好。 

進階重複資料刪除帶來的容量節省可以在大多數環境中提供最大的優勢,但也需要使用 Unity 陣列處理器。 在 OE 5.0 中,進階重複資料刪除功能啟用後,可以對任何區塊(壓縮或未壓縮)進行重複資料刪除。 有關更多信息,請參閱 Dell EMC 文檔.

下表顯示了資料縮減和進階重複資料刪除支援的配置:

Unity 中的資料縮減(所有型號)和增強的重複資料刪除支持

Unity OE版本 

Технология 

支援的池類型 

支援型號

4.3 / 4.4 

數據縮減 

快閃記憶體池 - 傳統或動態 

300、400、500、600、300°F、400°F、500°F、600°F、350°F、450°F、550°F、650°F 

4.5 
 

數據縮減 

300、400、500、600、300°F、400°F、500°F、600°F、350°F、450°F、550°F、650°F 

資料縮減與進階重複資料刪除*

450°F、550°F、650°F 


 

數據縮減 

300、400、500、600、300F、400F、500F、600F、350F、450F、550F、650F、380、480、680、880、380F、480F、680F、880F 

資料縮減和進階重複資料刪除

450F、550F、650F、380、480、680、880、380F、480F、680F、880F

* 資料縮減預設為停用狀態,必須在進階重複資料刪除成為可用選項之前啟用。 啟用資料縮減後,可以使用進階重複資料刪除,但預設為停用。

Unity 中的資料縮減和 SQL Server 中的資料壓縮

SQL Server 2008 企業版是第一個提供本機資料壓縮功能的版本。 SQL Server 2008 行級和頁級壓縮使用 SQL Server 內部資料庫表格式的知識來減少資料庫物件消耗的空間。 減少空間可以讓您在每頁上儲存更多行,並在緩衝池中儲存更多頁面。 由於不是以 8k 資料頁格式儲存的資料(例如 NVARCHAR(MAX) 等行外資料)不會使用行或頁壓縮方法,因此 Microsoft 引入了 Transact-SQL COMPRESS 和 DECOMPRESS 函數。 

這些函數使用傳統的資料壓縮方法(GZIP 演算法),必須為要壓縮或解壓縮的每個資料部分呼叫該方法。

Unity XT 壓縮並非 SQL Server 獨有,它使用軟體演算法來分析和壓縮儲存資料。 自 Unity OE 4.1 發布以來,Unity 資料壓縮已可用於快閃記憶體池中的區塊儲存磁碟區和 VMFS 資料儲存。 從 Unity OE 4.2 開始,壓縮也可用於快閃記憶體儲存池中的檔案系統和 NFS 資料儲存。

SQL Server 資料壓縮方法的選擇取決於幾個因素。 這些因素包括資料庫內容的類型、儲存和資料庫伺服器上的可用 CPU 資源,以及維護 SLA 所需的 I/O 資源。 一般來說,使用SQL Server 壓縮的資料可以節省額外的空間,但使用TSQL 的GZIP 壓縮功能壓縮的資料不太可能從Unity XT 的壓縮功能中看到顯著的額外空間節省,因為大多數好處都來自前者。演算法。

如果儲存物件上的資料壓縮至少 25%,則 Unity 壓縮可節省空間。 在對儲存物件啟用壓縮之前,請確定它是否包含可以壓縮的資料。 不要對儲存物件啟用壓縮,除非這樣做可以節省容量。 

在決定是否使用 Unity 資料縮減、SQL Server 資料庫級壓縮或同時使用兩者時,請考慮以下因素:

  • 寫入Unity系統的資料在儲存到系統快取後由主機驗證。 但是,在清除快取之前,壓縮過程不會開始。

  • 不僅可以節省 Unity XT 儲存資源的壓縮成本,還可以節省資源的快照和精簡複製的壓縮成本。
  • 在壓縮過程中,使用取樣演算法聚合多個區塊來確定資料是否可以被壓縮。 如果採樣演算法確定只能實現最小的節省,則跳過壓縮並將資料寫入池中。
  • 當資料在寫入儲存媒體之前進行壓縮時,資料處理量將大大減少。 因此,壓縮透過減少寫入驅動器的物理資料量來幫助減少快閃記憶體的磨損。

有關 SQL Server 中表和索引的行和頁壓縮的詳細信息,請參閱 微軟文件.

不要忘記任何壓縮都需要 CPU 資源。 當頻寬要求很高時,壓縮會對效能產生重大影響。 OLAP 工作負載的高寫入率也會降低 SQL Server 資料庫壓縮的優勢。

Dell EMC 使用 Unity 陣列上的實際數據減少率研究了潛在的節省量。 該團隊收集了有關 VMware 虛擬機器、檔案共用、SQL Server 資料庫、Microsoft Hyper-V 虛擬機器等的資料。

研究結果表明,SQL Server日誌檔案大小的減少幾乎比資料檔案小10倍:

  • 資料庫大小 = 1,49:1 (32,96%)
  • 原木體積 = 12,9:1 (92,25%)

SQL Server 資料庫提供了兩個磁碟區。 資料庫檔案儲存在一個磁碟區上,交易日誌儲存在另一磁碟區上。 對資料庫磁碟區使用資料縮減技術可以節省儲存空間; 但是,在決定是否對資料庫磁碟區啟用重複資料刪除時,您應該考慮效能影響。 雖然實際資料庫大小的減少可能會因儲存的資料而異,但研究結果表明 SQL Server 交易日誌儲存空間可以 顯著減少.

數據縮減最佳實踐

在對儲存物件啟用資料縮減之前,請考慮以下準則:

  • 使用儲存系統監控來確保其有可用資源來支援資料縮減。
  • 一次啟用多個儲存物件的資料縮減。 在其他儲存網站上啟用系統之前,請監視系統以確保其處於建議的運作條件。
  • 在 Unity XT x80F 型號上,如果儲存單元中的資料壓縮至少 1%,則資料縮減將節省容量。

只要資料至少可壓縮 80%,先前執行 OE 5.0 的 Unity x25F 模型上的資料減少就可以節省成本。

  • 在對儲存物件啟用資料縮減之前,請確定該物件是否包含可壓縮資料。 某些資料類型(例如視訊、音訊、影像和二進位資料)通常無法從壓縮中獲得什麼好處。 如果不會節省空間,請勿在儲存物件上啟用資料縮減。
  • 考慮選擇性地壓縮通常壓縮效果良好的檔案資料量。

VMware虛擬化

VMware vSphere 是一個適用於虛擬化和雲端環境的高效且安全的平台。 vSphere 的核心元件是 VMware vCenter Server 和 VMware ESXi hypervisor。

vCenter Server 是 vSphere 環境的統一管理平台。 易於部署並主動優化資源。 ESXi 是一個直接安裝在實體伺服器上的開源虛擬機器管理程式。 ESXi 可以直接存取核心資源,並且尺寸較小,僅為 150MB,從而最大限度地減少了記憶體需求。 它為各種應用程式工作負載提供可靠的效能,並支援強大的虛擬機器配置——最多 128 個 vCPU、6 TB RAM 和 120 個裝置。

為了使 SQL Server 在現代硬體上有效運行,SQL Server 作業系統 (SQLOS) 必須了解硬體設計。 隨著多核心和多節點非均勻記憶體存取 (NUMA) 系統的出現,理解核心、邏輯處理器和實體處理器之間的關係變得尤為重要。

處理器 

虛擬處理單元 (vCPU) 是分配給虛擬機器的虛擬中央處理單元。 分配的 vCPU 總數計算如下:

Total vCPU = (количество виртуальных сокетов) * (количество виртуальных ядер на сокет)

如果一致的效能很重要,VMware 建議分配給所有虛擬機器的 vCPU 總數不應超過 ESXi 主機上可用的實體核心總數,但如果監控顯示未使用的 CPU 資源,您可以增加分配的 vCPU 數量可用。

在啟用 Intel 超執行緒技術的系統上,邏輯核心 (vCPU) 的數量是實體核心數量的兩倍。 在這種情況下,請勿分配 vCPU 總數。

較低層的 SQL Server 工作負載受延遲變化的影響較小。 因此,這些工作負載可以在 vCPU 與實體 CPU 比例較高的主機上運作。 合理的 CPU 使用率等級可以提高整體系統吞吐量、最大限度地節省授權並保持足夠的效能。

英特爾超執行緒通常可將主機整體吞吐量提高 10% 至 30%,這表明 vCPU 與實體 CPU 的比率為 1,1 至 1,3。 VMware 建議盡可能在 UEFI BIOS 中啟用超線程,以便 ESXi 可以利用該技術。 VMware 也建議在對 SQL Server 工作負載使用超執行緒時進行徹底的測試和監控。

Память

幾乎所有現代伺服器都使用非均勻記憶體存取 (NUMA) 架構來進行主記憶體和處理器之間的通訊。 NUMA是一種共享記憶體的硬體架構,它實現了物理處理器之間實體記憶體區塊的劃分。 NUMA 節點是一個或多個 CPU 插槽以及一塊分配的記憶體。 

在過去的十年裡,NUMA 一直是個廣泛討論的話題。 NUMA 的相對複雜性部分歸因於不同供應商的實現。 在虛擬化環境中,NUMA 複雜性還取決於配置選項和層的數量——從硬體到虛擬機器管理程序,再到來賓作業系統,最後到 SQL Server 應用程式。 對於任何執行虛擬化 SQL Server 執行個體的 SQL Server DBA 來說,必須充分了解 NUMA 硬體架構。

為了在具有大量核心的伺服器上實現更高的效率,微軟引入了 SoftNUMA。 SoftNUMA 軟體可讓您將單一 NUMA 內的可用 CPU 資源劃分為多個 SoftNUMA 節點。 據VMware稱,SoftNUMA與VMware的虛擬NUMA(vNUMA)拓撲相容,可進一步優化大多數工作負載的資料庫引擎可擴展性和效能...

使用 SQL Server 虛擬化 VMware 時使用:

  • 監視虛擬機器以偵測 SQL Server 資料庫引擎的記憶體資源不足。 此問題會導致 I/O 操作增加並降低效能。

  • 若要提高效能,請透過避免 ESXi 主機層級的記憶體過載來防止虛擬機器之間的記憶體爭用。
  • 請考慮檢查硬體 NUMA 實體記憶體分配,以確定可以在實體 NUMA 邊界內分配給虛擬機器的最大記憶體量。
  • 如果實現足夠的效能是主要目標,請考慮保留與分配的記憶體相等的記憶體。 此參數設定可確保虛擬機器僅接收實體記憶體。

虛擬化儲存

在虛擬化環境中設定儲存需要了解儲存基礎架構。 與 NUMA 一樣,您需要了解不同層級的 I/O 是如何運作的 - 在本例中,從 VM 中的應用程式到持久性儲存媒體上的資訊的實體讀寫。

vSphere 提供了許多用於配置儲存的選項,這些選項在使用 Unity XT 陣列的 SQL Server 實作中具有有用的應用程式。 FS VMFS是Unity XT等區塊儲存系統中使用最廣泛的資料儲存方式。 Unity XT 陣列是底層,由 vSphere 作為邏輯磁碟(磁碟區)公開的實體磁碟機組成。 Unity XT 磁碟區由 ESXi 虛擬機器管理程式格式化為 VMFS 磁碟區。 VMware 管理員建立一個或多個提供給來賓作業系統的虛擬磁碟 (VMDK)。 RDM 允許虛擬機器直接存取 Unity XT 區塊儲存(透過 FC 或 iSCSI),而無需格式化 VMFS。 VMFS 和 RDM 磁碟區可以提供相同的事務吞吐量。 

對於 ESXi 基於 NFS 的存儲,Dell EMC 建議使用 VMware NFS 而不是通用 NFS 檔案系統。 在 SQL Server 上運作並在 NFS 資料儲存上使用 VMDK 的虛擬機器不知道底層 NFS 層。 來賓作業系統將虛擬機器視為執行 Windows Server 和 SQL Server 的實體伺服器。 不支援 NFS 資料儲存上的故障轉移叢集實例配置的共用磁碟。

VMware vSphere Virtual Volumes (VVol) 在虛擬機器層級提供更精細的控制,獨立於底層實體記憶體表示(例如磁碟區或檔案系統)。 從 VVol 2.0 (vSphere 6.5) 開始,支援使用 VVol 進行基於陣列的複製。 從 vSphere 6.7 開始,可以使用 VVol 磁碟取代 RDM 磁碟為 SQL 故障轉移叢集實例提供磁碟資源,並支援持久性 SCSI 備份。

虛擬化網路

虛擬世界中的網路遵循與物理世界相同的邏輯概念,但使用軟體而不是實體電纜和交換器。 網路延遲對 SQL Server 工作負載的影響可能有很大差異。 在代表性時期內監控現有工作負載或實施良好的測試系統的網路效能指標有助於創建虛擬網路。

將 VMware 虛擬化與 SQL Server 結合使用時,請考慮下列事項:

  • 標準虛擬交換器和分散式虛擬交換器都提供 SQL Server 所需的功能。
  • 若要在邏輯上分離管理、vSphere vMotion 和網路儲存流量,請使用 VLAN 標記和虛擬交換器連接埠群組。
  • VMware 強烈建議在啟用 vSphere vMotion 流量或 iSCSI 流量的虛擬交換器上啟用大型訊框。
  • 一般來說,請遵循客戶作業系統和硬體的網路指南。

 結論 

SQL Server 資料庫環境變得越來越大、越來越複雜。 在 SQL Server 2019 中,微軟改進了 SQL Server 的核心功能並新增了新功能,例如對 Apache Spark 和 HDFS 的大數據工作負載的支援。 Dell EMC 與 Microsoft 合作,繼續為 SQL Server 環境提供必要的基礎架構元件 - 伺服器、儲存和網路。 

當儲存和資料庫專業人員共同努力在共用儲存平台上為 SQL Server 建立基礎架構解決方案時,我們發現正常運作時間顯著增加,總擁有成本 (TCO) 降低。 Dell EMC Unity XT 全快閃陣列是一款中階解決方案,適合需要高效能和低延遲的 SQL Server 開發人員和管理員。 Unity XT 全快閃記憶體專為在所有快閃磁碟機上運作而設計,支援雙 CPU、雙控制器配置和多核心最佳化。

組織越來越多地對其 SQL Server 環境進行虛擬化。 儘管虛擬化在架構堆疊中添加了另一個設計層,但它提供了顯著的好處。 我們希望您發現上面介紹的一些最常用的 VMware 功能和工具在 SQL Server 環境中很有用。 我們還推薦資源連結以獲取更多詳細資訊。

有用的鏈接

戴爾EMC

VMware的

Microsoft微軟

來源: www.habr.com

添加評論