SQL Server 2022 中的新功能

SQL Server是Microsoft的首要企業級數據庫平台。然而在今天快節奏的版本發布和持續更新的世界裡,新版的SQL Server 2022 似乎還是久等了一段時間。不過它包含了一些很棒的新功能。SQL Server 2019是SQL Server的最後一個重要版本。每次版本發布,Microsoft都在優化核心的SQL Server引擎。如今,大多數SQL Server的創新都是從Azure雲端開始,然後再進入SQL Server的本地版本。讓我們更仔細地看看即將推出的SQL Server 2022版本及其新功能。

SQL Server 2022 新功能

SQL Server 2022 的新功能包括:

廣告

  • 參數敏感計劃優化
  • 查詢商店功能增強
  • 連結至Azure SQL Managed Instance
  • 包容性可用性群組
  • Azure Synapse Link for SQL
  • 多寫複製
  • Azure Active Directory 認證
  • Azure Purview 整合
  • SQL Server 記帳本
  • AWS S3 存儲整合

現在讓我們逐一詳細看看每個功能。

參數敏感計畫優化

這是一個新的智能查詢處理增強功能,旨在改善現有工作負載的性能,而無需更改應用程式代碼。以前,SQL Server會為每個存儲過程緩存一個計畫。這是根據一組參數來進行的,稱為參數嗅探。但是,一些帶有參數的查詢對使用的輸入參數值非常敏感。生成的計畫對這些參數可能採用的所有可能值並不是最佳的。新的參數敏感計畫優化會為單個帶有參數的查詢在計畫緩存中緩存多個活動執行計畫。這些緩存的執行計畫將根據提供的運行時參數值來容納不同的數據大小。要啟用PSP優化,您需要將使用的數據庫的相容性級別設置為160。

查詢存儲增強功能

查詢存儲是一項性能功能,可幫助您更好地跟踪性能歷史,並解決查詢計劃和性能問題。在以前的版本中,您需要手動啟用查詢存儲。在 SQL Server 2022 中,查詢存儲將會被默認啟用以供新數據庫使用,提供了改進的查詢智能和洞察力。查詢存儲現在還支持在可用性組讀取唯讀副本上運行,為您的唯讀工作負載提供更好的性能分析。您還可以使用查詢存儲提示來調整查詢計劃,提高查詢執行性能,而無需更改應用程式代碼。以前,查詢存儲提示僅適用於 Azure SQL Database 和 Azure SQL 托管實例。

連結至 Azure SQL 托管實例

就像您可能猜到的那樣,連結至 Azure SQL 托管實例是一項混合雲功能,旨在增強可用性。它提供了 SQL Server 2022 與 Azure SQL 托管實例中的連結功能之間的幾乎實時數據複製。它使您可以將工作負載轉移到 Azure 上的唯讀次要服務器,以便利用雲端性能和擴展這些工作負載。

廣告

SQL Server 2022 – Azure SQL Managed Instance (Image Credit: Microsoft)

您還可以使用它以最短的停機時間遷移數據庫。支持使用Azure 托管實例連結 SQL Server 2019 企業版和開發人員版,以及 SQL Server 2016 企業版、開發人員版和標準版。此功能基於來自分布式可用性組的技術。但它不需要涉及可用性組的設置和配置。目前,從 SQL Server 遷移到 Azure SQL 托管實例的用戶數據庫複製是單向的。而且它僅可用於用戶數據庫。https://youtu.be/ncF-zFzBDAY 從 SQL 托管實例的用戶數據庫無法複製回 SQL Server,儘管您可以將遷移後的數據庫還原回 SQL Server 2022 本地。微軟已指出,Azure SQL 托管實例的連結功能具有雙向災難恢復(DR)故障切換功能的一般可用性將在 SQL Server 2022 一般可用性後發布。

容器可用性組

另一個可用性功能,包含可用性群組解決了以前版本的可用性群組(AG)中發現的限制。 AG包含一個或多個旨在操作為協調組的用戶數據庫,這些數據庫被複製到集群中的不同節點。當主要副本所在節點發生故障時,AG中的數據庫將作為單元移動到AG中的另一個副本節點。以前版本的AG不包括用戶、登錄和權限等其他對象。這要求管理員手動確保這些對象在AG中所有副本實例之間進行了重複。包含的可用性群組擴展了被複製的數據庫組的概念,以包括主要和msdb數據庫的相關部分。包含的AG環境包括可能影響應用程序的設置。依賴於它們像用戶、登錄、權限和SQL Agent作業在AG級別使用可用性群組內的專用包含系統數據庫。像用戶數據庫一樣,這些對象將自動在AG中的副本之間保持一致。這樣可以省去管理員手動在不同的AG副本之間創建、製作和更新這些對象的需要。

Azure Synapse Link for SQL

Azure Synapse Link for SQL是一項新的分析功能,為 SQL Server 的關聯數據提供了無需 ETL(提取、轉換、加載)的幾乎實時分析和報告功能。它捕獲 SQL Server 2022 數據庫的變化並將它們傳送到 Azure Synapse Analytics 進行實時分析。SQL Server 2022 關聯數據庫和 Azure Synapse Analytics 專用 SQL 池之間實現了無縫集成。

SQL Server 2022 new features powered by Azure (Image Credit: Microsoft)

它的運作方式是持續地從 Azure SQL Database 或 SQL Server 2022 複製數據到 Azure Synapse Analytics。這種集成使您能夠在操作數據上運行分析、商業智能和機器學習方案,對源數據庫的影響最小,而無需任何 ETL 過程。

廣告

多寫複製

SQL Server 2022 的 多寫複寫 功能自動化了複寫衝突解決中的最後寫入者獲勝規則。在早期版本的 SQL Server 中,當不同複本中的數據發生衝突時,通常需要手動處理這些衝突。多寫複寫通過實現最後寫入者獲勝規則來解決這個問題。如果複本之間發生衝突,則最後一次寫入將優先並寫入所有複本。多寫複寫使用以協調世界時(UTC)記錄的時間戳來避免時區問題。

Azure Active Directory 認證

在之前的 SQL Server 版本中,無論您是否在混合 Azure 環境中使用 SQL Server,都需要使用 Windows Server Active Directory(AD)或 SQL Server 認證。但在 SQL Server 2022 中,您現在可以使用 Azure AD 認證來進行 SQL Server 2022 連接。

Azure Purview 整合

Azure Purview 是一個在Azure中運行的統一數據治理和管理服務。SQL Server 2022集成了Microsoft Purview,可實現更廣泛的數據發現,使您能夠打破數據孤立並為存取控制提供政策管理。Purview可以使用內置和自定義分類器,以及Microsoft Information Protection敏感性標籤對數據進行分類。

SQL Server Ledger

SQL Ledger是另一個功能,首次在Azure SQL數據庫上推出,後來傳遞至SQL Server 2022。SQL Ledger使用區塊鏈來驗證對數據庫所做的更改。它使您能夠保持不可變的數據記錄,通過加密將數據及其更改在區塊鏈結構中進行連接。它顯示任何數據篡改並使數據可驗證。

SQL Server 2022 Ledger overview (Image Credit: Microsoft)

Ledger可以幫助客戶簡化審計程序,向審計師提供數據完整性的加密證據,消除了對手動取證的需求。Ledger還有助於保護數據免受任何攻擊者或高權限用戶的侵害,包括數據庫管理員(DBAs)、系統管理員和雲管理員。如果數據庫中的行被更新,其先前的值將在歷史表中得到保留和保護。Ledger提供了隨時間對數據庫所做的所有更改的歷史記錄。

AWS S3 存儲整合

SQL Server 2022 提供了新的對象存儲整合,使您能夠將 SQL Server 與 AWS S3 兼容的對象存儲集成,除了 Azure 存儲。SQL Server 新增了一個 S3 連接器。它使用 S3 REST API 來與任何支持 S3 兼容對象存儲的提供商建立連接。SQL Server 2022 通過使用 REST API 支持新的 S3 連接器,擴展了現有的 BACKUP/RESTORE TO/FROM URL 語法。有許多雲供應商提供 S3 存儲,包括亞馬遜、Cloudian、Dell、Hitachi、HPE、Netapp、Nutanix、Pure Storage、Red Hat 等。

SQL Server 2022 在 Linux 上

從 SQL Server 2017 開始,微軟釋出了針對 Linux 的 SQL Server 版本。SQL Server on Linux基本上提供了與 Windows 版本的 SQL Server 相同的核心關聯式數據庫引擎。它可在像 Red Hat、SUSE 和 Ubuntu 這樣的最受歡迎的 Linux 發行版上運行。兩個版本之間的關聯引擎和性能功能基本上相同。如果您想要在容器中運行 SQL Server 或者與 Kubernetes 一起使用,那麼您一定需要使用 Linux 版本。儘管 Windows 版本和 Linux 版本之間的差異在每個新版本發布時都在縮小,但仍然有許多功能未包含在 SQL Server 2022 for Linux 中。包括本文介紹的一些新功能。在 SQL Server 2022 的 Linux 版本中不包括以下主要功能:

  • Azure Arc 代理
  • Azure Synapse Link
  • Microsoft Purview 整合
  • 合併複製
  • Stretch DB
  • 鏈接服務器到 SQL Server 以外的數據源
  • 系統擴展存儲過程(xp_cmdshell 等)
  • FileTable、FILESTREAM
  • 帶有 EXTERNAL_ACCESS 或 UNSAFE 權限設置的 CLR 組件
  • 緩衝池擴展
  • SQL Server 代理子系統:CmdExec、PowerShell、Queue Reader、SSIS、SSAS、SSRS
  • 警報
  • 數據庫鏡像
  • Windows 集成認證用於連接的伺服器
  • Windows 集成認證用於可用性群組 (AG) 端點
  • Azure Active Directory 認證
  • 具有安全執行個體的永遠加密
  • StreamInsight
  • 分析服務
  • 報告服務
  • 資料品質服務
  • 主資料服務

SQL Server 2022 版本

SQL Server 2022 將繼續遵循與之前幾個版本相同的SQL Server 版本

  • 企業版 – 針對高端數據中心設計,企業版為關鍵任務工作負載提供了最高水平的性能和擴展性。它支持 CPU 和 RAM 的操作系統最大值。支持八節點可用性群組的完整支援。
  • 標準版 – 標準版為部門和小型組織提供基本的數據管理。它限制為 4 個插槽或 24 個核心和 128 GB 的 RAM。它提供對兩節點基本可用性群組的支援。
  • Web 版 – 針對 Web 主機提供商,Web 版提供了小型到大型 Web 特性的擴展性、負擔能力和可管理性。它限制為 4 個插槽或 16 個核心和 64 GB 的 RAM。
  • 開發人員 – 設計為使開發人員能夠使用 SQL Server 作為後端數據庫構建應用程序。它包含企業版的所有功能,但僅被許可為開發和測試系統使用。不得用於生產工作負載。
  • Express – 作為入門級、免費的數據庫,Express 版旨在作為學習工具使用。用於構建桌面和小型服務器應用程序。它受限於最多 1 個插槽或 4 核心、1410MB 的 RAM,並且最大數據庫大小為 10GB。

SQL Server 2022 將繼續在 Windows 和 Linux 上提供。相同的版本都得到 Windows 和 Linux 的支持。然而,在 Linux 版本中有一些功能是不可用的。兩個平台上可用功能之間的主要區別列在上述功能部分。

深入了解 SQL Server 2022

截至本文撰寫時,SQL Server 2022 仍處於預覽階段。但微軟已經宣布將於 2022 年下半年正式推出。在過去,微軟通常會在 PASS Summit 會議上宣布其新版本的 SQL Server。今年的大會定於 11 月舉行。如果你想要親自體驗 SQL Server 2022,可以從 介紹 SQL Server 2022 下載 SQL Server 2022 預覽版。在 Docker Hub 上的 SQL Server Linux 容器映像,你也可以嘗試使用 Ubuntu 容器。你也可以在 Azure 上免費試用 SQL Server,提供 180 天試用期,網址是 SQL Server 2022 或 Windows Server 2022。欲進行 安裝 SQL Server 2022,請查看我們在 Petri 上的指南!你可以在微軟網站上找到所有 SQL Server 2022 的新功能的完整列表。

相關文章:

Source:
https://petri.com/sql-server-2022-new-features/