SQL Server 2019正式上市

by adonisy 14. 十一月 2019 09:25

作 者:楊先民
審 稿:張智凱

SQL Server 2019正式上市

在 SQL Server 2005之後,因為更改的幅度太大,使得原本在用 SQL Server 2000的人也很難升級成 SQL Server 2005,這讓微軟有點嚇到

所以之後就宣布微軟的 SQL Server 大約每隔2年就會小改款一次,不會像之前 SQL Server 2000到 2005更改的幅度這麼大。

而為什麼 SQL Server 2016過了三年才出 SQL Server 2019呢?主因是 SQL Server 2016上市前,微軟有說要做 Linux的版本,但是...就跳票了。

所以2017年才有 for Linux的版本,然後過了2年才有 SQL Server 2019的出生,所以也是2年啦,只是一般人通常還是說 SQL Server 2016,

甚至連微軟的考試都還叫做 SQL Server 2016呢。

SQL Server 2019的新功能

至於 SQL Server 2019到底有什麼新功能呢?企業是否一定得升級到 SQL Server 2019?其實關連式資料庫的進步現在多半都是記憶體化,

這方面會大量的增加相對的功能,把以前的限制與功能加入,會有什麼很多更新的語法倒是不用太過於期待。

首先,為了因應資料虛擬化,所以除了原本的 SQL Server Management Studio之外,還有另外的工具,稱為 Azure Data Studio。

它可以裝在除了 Windows上的其他作業系統,例如 Linux或是 Mac的環境。

這次在查詢方面,有所謂的智慧查詢處理,包含了類似資料列存放區的批次處理的功能,以及批次模式記憶體授與反應,當調整的記

憶體授與大小不正確時,就會降低效能。 授與過多會浪費記憶體並降低並行。 記憶體授與不足會佔用大量磁碟資源。 透過處

理重複的工作負載,批次模式記憶體授與意見反應會重新計算查詢實際所需的記憶體,然後更新快取計劃的授與值。 

 執行相同的查詢陳述式時,此查詢會使用修訂過的記憶體授權大小,減少影響並行的過多記憶體授與,並修正導致佔用大量磁

碟資源的記憶體授與低估。

以下大概列出幾個比較有關的新功能,完整而詳細的新功能,請各位可以直接參考微軟的官方 help。

首先,支援純量 UDF內嵌功能,有效改善以往使用者自訂函數嵌在 SQL運算式中的效能問題。

再者,資料表變數延後編譯,針對參考資料表變數的查詢,提升計畫品質與整體效能。 在最佳化和初始編譯期間,此功能會根據實際資料表

變數的資料列計數,傳播基數估計值。

 

記憶體內資料庫方面

新功能或更新詳細資料
混合式緩衝集區 SQL Server Database Engine 的新功能,坐落在置於持續性記憶體 (PMEM) 裝置上之資料庫檔案上的資料庫頁面,可在必要時直接存取。 請參閱混合式緩衝集區
經記憶體最佳化的 TempDB 中繼資料 SQL Server 2019 (15.x) 所引進新功能是記憶體內部資料庫功能系列的一部分,經記憶體最佳化的 TempDB 中繼資料能有效移除此瓶頸,並為大量 TempDB 工作負載提供新一層的延展性。 在 SQL Server 2019 (15.x) 中,涉及管理暫存資料表中繼資料的系統資料表,可以移至不需閂鎖之非持久性經記憶體最佳化的資料表。 請參閱經記憶體最佳化的 TempDB 中繼資料
資料庫快照集的記憶體內部 OLTP 支援 SQL Server 2019 (15.x) 引進建立資料庫快照集的支援,包括記憶體最佳化檔案群組的資料庫。

 

 

智慧型效能部分

新功能或更新詳細資料
OPTIMIZE_FOR_SEQUENTIAL_KEY 在有助於改善對索引進行高並行插入之輸送量的 SQL Server Database Engine 內,開啟最佳化。 此選項適用於可能出現最後一頁插入競爭的索引,這通常是具有循序索引鍵 (例如識別資料行、序列或日期/時間資料行) 的索引。 
強制執行向前快轉及靜態資料指標 提供強制支援向前快轉及靜態資料指標的查詢存放區計畫。
資源管理 CREATE WORKLOAD GROUP 和 ALTER WORKLOAD GROUP 的 REQUEST_MAX_MEMORY_GRANT_PERCENT 選項可設定值,已從整數變更為浮動資料類型,以允許對記憶體限制採取更細微的控制。 
減少對工作負載的重新編譯 藉由減少不必要的重新編譯,跨多個範圍使用暫存資料表來改善效能。 
間接檢查點延展性 在 SQL Server 2019 (15.x) 之前,您可能會在資料庫產生大量中途分頁 (例如 tempdb) 時遇到沒有產量的排程器錯誤。 SQL Server 2019 (15.x) 引進改善的間接檢查點延展性,有助於避免在具備大量 UPDATE/INSERT 工作負載的資料庫上發生這類錯誤。
並行 PFS 更新 分頁可用空間 (PFS) 分頁是資料庫檔案中的特殊分頁,SQL Server 在配置物件的空間時,可使用這些特殊分頁來協助找出可用空間。 PFS 分頁上的頁面閂鎖爭用通常與 TempDB 建立關聯,但在有許多並行物件配置執行緒時,也可能會發生在使用者資料庫上。 這種改進會改變使用 PFS 更新來管理並行的方式,使其可以在共用閂鎖下更新,而不是獨佔閂鎖。 此行為在從 SQL Server 2019 (15.x) 開始的所有資料庫 (包括 TempDB) 中預設為啟用。
排程器背景工作角色移轉 背景工作角色移轉可讓閒置排程器從相同 NUMA 節點上另一個排程器的可執行佇列中移轉背景工作角色,並立即繼續所移轉背景工作角色的作業。 這項增強功能可在將長時間執行工作指派給相同排程器的情況下,提供更平衡的 CPU 使用率。 
   

語言延伸模組可提供其他語言的可能性

新功能或更新詳細資料
新增 Java 語言 SDK 簡化可從 SQL Server 執行的 Java 程式開發。 請參閱適用於 SQL Server 的 Microsoft Extensibility SDK for Java
Java 語言 SDK 是開放原始碼 Microsoft SQL Server 中適用於 Java 的 Microsoft 擴充性 SDK 現已提供開放原始碼且可在 GitHub 上取得
Java 資料類型的支援 請參閱 Java 資料類型
新增預設 JAVA 執行階段 SQL Server 現在在整個產品中包含 Azul 系統適用於 Java 的 Zulu Embedded 支援。 請參閱 Free supported Java in SQL Server 2019 is now available (現已推出 SQL Server 2019 中的免費支援 Java)。
SQL Server 語言延伸模組 以擴充性架構執行外部程式碼。 請參閱 SQL Server 語言延伸模組
註冊外部語言 CREATE EXTERNAL LANGUAGE 這個新的資料定義語言(DDL) 會在 SQL Server 中註冊外部語言,例如 Java。 請參閱建立外部語言

 

任務關鍵性安全性部分

 

新功能或更新詳細資料
具有安全記憶體保護區的 Always Encrypted 透過在伺服器端安全記憶體保護區中啟用純文字資料上的計算,在具備就地加密和豐富計算的 Always Encrypted 上進行擴充。 就地加密可改善密碼編譯作業 (加密資料行、輪換資料行、加密金鑰等) 的效能和可靠性,因為就地加密會避免將資料移出資料庫。

支援豐富計算 (模式比對和比較作業) 可讓更多的範例適用 Always Encypted,以及要求敏感資料保護,但同時也需要在 Transact-SQL 查詢中擁有更豐富功能的應用程式。 請參閱具有安全記憶體保護區的 Always Encrypted
SQL Server 組態管理員中的憑證管理 請參閱憑證管理 (SQL Server 組態管理員)
資料探索與分類 資料探索與分類提供原生內建於 SQL Server 的進階功能,可用於分類、標記與保護資料庫中的敏感性資料。 分類最敏感的資料 (商務、財務、醫療、PII 等等) 可以扮演組織資訊保護成長的關鍵角色。 它可以作為下列的基礎結構:
  • 協助符合資料隱私權標準和法規合規性需求
  • 各種安全性情節,例如監視 (稽核),以及警示敏感性資料的異常存取
  • 更輕鬆地識別敏感性資料在企業中的位置,讓系統管理員可以採取正確的步驟來保護資料庫
也已經增強稽核,在稱為 data_sensitivity_information 的稽核記錄中包含新欄位,其中記錄查詢所傳回的實際資料敏感度分類 (標籤)。 如需詳細資料和範例,請參閱新增敏感度分類

可用性群組

新功能或更新詳細資料
最多五個同步複本 SQL Server 2019 (15.x) 會將同步複本的數目上限,從 SQL Server 2017 (14.x) 中最多為 3 的狀態增加至 5。 您可以設定這五個複本的群組,使其在群組內具備自動容錯移轉。 有一個主要複本,再加上四個同步次要複本。
次要到主要複本連線重新導向 可將用戶端應用程式連線導向至主要複本,而不論連接字串中指定的目標伺服器為何。 
HADR 權益 SQL Server 的每個軟體保證客戶都能夠針對 Microsoft 仍然支援的任何 SQL Server 版本,使用三項增強的權益。 
 

 

復原

新功能或更新詳細資料
加速資料庫復原 透過加速資料庫復原 (ADR),減少重新啟動或長時間執行交易回復後的復原時間。 
   
這大概只是列出一部分的新功能,毫無意外的,並沒有對 SQL指令多增加什麼功能,因為事實上在 SQL Server 2012之後
大概就沒有增加過什麼很特別的 SQL語法了,增加的多半都是一些內部的東西,看不到,形而上的東西,例如又增進了什麼
效能之類的,但事實上表面還是一般的 SQL Server,大概是這樣吧。

Tags:

SQL Server資料庫 | 楊先民Adonis Young

不允許評論

NET Magazine國際中文電子雜誌

NET Magazine國際中文電子版雜誌,由恆逸資訊創立於2000,自發刊日起迄今已發行超過500篇.NET相關技術文章,擁有超過40000名註冊讀者群。NET Magazine國際中文電子版雜誌希望藉於電子雜誌與NET Developer達到共同學習與技術新知分享,歡迎每一位對.NET 技術有興趣的朋友們多多支持本雜誌,讓作者群們可以有持續性的動力繼續爬文。<請加入免費訂閱>

月分類Month List