SQL Server Analysis Services 的新功能

SQL Server Analysis Services 的新功能

SQL Server 2016 分析服務

SQL Server 2016 Analysis Services 包含許多新的增強功能,可改善效能、更輕鬆地撰寫解決方案、自動化資料庫管理、使用雙向交叉篩選增強關聯性、平行數據分割處理等等。 此版本大部分增強功能的核心是表格式模型資料庫的新1200相容性層級。

SQL Server 2016 Service Pack 1 (SP1) Analysis Services

下載 SQL Server 2016 SP1

SQL Server 2016 Service SP1 Analysis Services 透過非均質記憶體存取(NUMA)感知以及基於 Intel 執行緒構建模組(Intel TBB)的優化記憶體配置,提供改善的效能和延展性。 這項新功能可藉由支援較少且功能更強大的企業伺服器上更多使用者,協助降低總擁有成本(TCO)。

特別是 SQL Server 2016 SP1 Analysis Services 功能在這些主要領域有改善:

NUMA 感知 - 為了獲得更好的 NUMA 支援,Analysis Services 內的記憶體內部 (VertiPaq) 引擎現在會在每個 NUMA 節點上維護個別的工作佇列。 這可確保區段掃描作業會在配置記憶體給區段數據的相同節點上執行。 請注意,NUMA 感知預設只會在至少有四個 NUMA 節點的系統上啟用。 在雙節點系統上,存取遠端配置記憶體的代價通常不值得為管理NUMA特性而增加額外負擔。

記憶體配置 - Analysis Services 已使用 Intel 線程建置組塊加速,這是一個可調整的配置器,可為每個核心提供個別的記憶體集區。 隨著核心數目的增加,系統幾乎可以線性擴展。

記憶體碎片 - 以 Intel TBB 為基礎的可擴充分配器也有助於減輕效能問題,因為已證明 Windows 堆積會導致記憶體碎片現象。

在大型多節點企業伺服器上執行 SQL Server 2016 SP1 Analysis Services 時,效能和延展性測試顯示查詢輸送量大幅提升。

雖然此版本中大多數的增強功能針對的是表格式模型,但多維度模型也有多項增強功能。例如,針對像 DB2 和 Oracle 的資料來源進行了相異計數的 ROLAP 優化、Excel 2016 的數據鑽取多選支援,以及 Excel 查詢優化。

SQL Server 2016 正式運作 (GA) Analysis Services

建 模

改善表格式 1200 模型的模型化效能

對於表格式 1200 模型,SSDT 中的元數據作業比表格式 1100 或 1103 模型快得多。 相較之下,在相同硬體上,在設定為 SQL Server 2014 相容性層級的模型上建立關聯性(1103)與 23 個數據表需要 3 秒,而建立為相容性層級 1200 之模型上的相同關聯性只需要不到一秒。

在 SSDT 中為表格式 1200 模型新增專案範本

在此版本中,您不再需要兩個版本的 SSDT 來建置關係型和 BI 專案。 SQL Server Data Tools for Visual Studio 2015 新增 Analysis Services 解決方案的專案範本,包括用於在 1200 相容性層級建置模型的 Analysis Services 表格式專案 。 也包含多維度和數據採礦解決方案的其他 Analysis Services 專案範本,但與舊版相同功能等級(1100 或 1103)。

顯示資料夾

顯示資料夾現在適用於表格式 1200 模型。 在 SQL Server Data Tools 中定義,並在 Excel 或 Power BI Desktop 等用戶端應用程式中轉譯,顯示資料夾可協助您將大量量值組織到個別資料夾中,並新增視覺階層,以便更輕鬆地在欄位清單中流覽。

雙向交叉篩選

此版本中的新功能是一種內建方法,可在表格式模型中啟用雙向跨表篩選,而不需要手動撰寫DAX公式,以跨數據表關聯性傳遞篩選上下文。 只有在能夠以高度確定程度建立方向時,才會自動產生篩選。 如果跨數據表關聯性的多個查詢路徑形式存在模棱兩可,則不會自動建立篩選。 如需詳細資訊,請參閱 SQL Server 2016 Analysis Services 中表格式模型的雙向交叉篩選 。

翻譯

您現在可以將翻譯的元資料儲存在表格式 1200 模型中。 模型中的元數據包含 文化特性、翻譯的標題和翻譯描述的欄位。 若要新增翻譯,請使用 SQL Server Data Tools 中的 模型>翻譯 命令。 如需詳細資訊,請參閱表格式模型中的翻譯(Analysis Services)。

貼上的數據表

當模型包含貼上的數據表時,您現在可以將 1100 或 1103 表格式模型升級至 1200。 我們建議使用 SQL Server Data Tools。 在 SSDT 中,將 CompatibilityLevel 設定為 1200,然後部署到 SQL Server Analysis Services 的 SQL Server 2017 實例。 如需詳細資訊,請參閱 Analysis Services 中表格式模型的相容性層級 。

SSDT 中的計算表格

計算表格是基於 SSDT 中 DAX 運算式或查詢的模型專用結構。 在資料庫中部署時,計算表看起來與一般數據表無異。

計算數據表有數個用途,包括建立新的數據表,以在特定角色中公開現有的數據表。 傳統範例是在多個內容中運作的 Date 數據表(訂單日期、出貨日期等等)。 藉由為指定角色建立計算表,您現在可以啟用表格關聯性,以利使用計算表進行查詢或數據互動。 計算數據表的另一個用途是將現有數據表的元件結合成只存在於模型中的全新數據表。 若要深入瞭解,請參閱 建立計算表 。

公式修正

在表格式 1200 模型上修正公式時,SSDT 會自動更新參考已重新命名之數據行或數據表的任何量值。

改良版 Visual Studio 配置管理器的支援

為了支援多個環境,例如測試和生產前環境,Visual Studio 可讓開發人員使用組態管理員建立多個項目組態。 多維度模型已經利用這個,但表格式模型沒有。 在此版本中,您現在可以使用組態管理員來部署至不同的伺服器。

實例管理

在 SSMS 中管理 Tabular 1200 模型

在此版本中,表格式伺服器模式中的 Analysis Services 實例可以在任何相容性層級執行表格式模型(1100、1103、1200)。 最新的 SQL Server Management Studio 已更新,可用於顯示屬性並提供 1200 相容性層級表格式模型的資料庫模型管理。

資料表模型中多個數據表分區的平行處理

此版本包含具有兩個或多個數據分割之數據表的新平行處理功能,可提升處理效能。 這項功能沒有組態設定。 如需設定數據分割和處理數據表的詳細資訊,請參閱 表格式模型分割。

將電腦帳戶新增為 SSMS 中的系統管理員

SQL Server Analysis Services 系統管理員現在可以使用 SQL Server Management Studio 將計算機帳戶設定為 SQL Server Analysis Services 系統管理員群組的成員。 在 [選取使用者或群組] 對話框中,設定計算機網域的位置,然後新增 Computers 物件類型。 如需詳細資訊,請參閱 將伺服器管理員許可權授與 Analysis Services 實例。

適用於 Analysis Services 的 DBCC

資料庫一致性檢查程式 (DBCC) 會在內部執行,以偵測資料庫負載的潛在數據損毀問題,但如果您懷疑數據或模型中的問題,也可以視需要執行。 DBCC 會根據模型是表格式還是多維度,執行不同的檢查。 如需詳細資訊 ,請參閱 Analysis Services 表格式和多維度資料庫的資料庫一致性檢查程式 (DBCC )。

擴展事件功能更新

此版本會將圖形使用者介面新增至 SQL Server Management Studio,以設定和管理 SQL Server Analysis Services 擴充事件。 您可以設定即時數據流來即時監視伺服器活動、將會話數據保留在記憶體中以加快分析速度,或將數據流儲存至檔案以進行離線分析。 如需詳細資訊,請參閱使用 SQL Server 擴充事件來監視 Analysis Services。

腳本

適用於表格式模型的PowerShell

此版本包含相容性層級 1200 表格式模型的 PowerShell 增強功能。 您可以使用所有適用的指令,外加針對表格式模式特有的指令:Invoke-ProcessASDatabase 和 Invoke-ProcessTable 指令。

SSMS 文稿資料庫作業

在 最新的 SQL Server Management Studio (SSMS)中,現在已針對資料庫命令啟用腳本,包括建立、改變、刪除、備份、還原、附加、卸離。 輸出是 JSON 格式的 TMSL(表格式模型腳本語言)。 如需詳細資訊,請參閱 表格式模型腳本語言 (TMSL) 參考 。

Analysis Services 執行 DDL 工作

Analysis Services 執行 DDL 工作現在也接受表格式模型腳本語言 (TMSL) 命令。

SSAS PowerShell Cmdlet

SSAS PowerShell Cmdlet Invoke-ASCmd 現在接受表格式模型腳本語言 (TMSL) 命令。 未來版本中可能會更新其他 SSAS PowerShell Cmdlet,以使用新的表格式元數據(版本資訊中將會指出例外狀況)。 欲了解詳細資訊,請參閱 Analysis Services PowerShell 參考文件。

SSMS 中支援的表格式模型文稿語言 (TMSL)

使用 最新版本的 SSMS,您現在可以建立腳本,將表格式 1200 模型的大部分系統管理工作自動化。 目前,可以編寫下列工作腳本:在任何層級處理流程,以及資料庫層級的 CREATE、ALTER、DELETE。

在功能上,TMSL 相當於提供多維度物件定義的 XMLA ASSL 延伸模組,但TMSL會使用 模型、 數據表和 關聯 性等原生描述元來描述表格式元數據。 如需架構的詳細資訊,請參閱 表格式模型腳本語言 (TMSL) 參考 。

針對表格式模型產生的 JSON 型腳本可能如下所示:

{

"create": {

"database": {

"name": "AdventureWorksTabular1200",

"id": "AdventureWorksTabular1200",

"compatibilityLevel": 1200,

"readWriteMode": "readWrite",

"model": {}

}

}

}

承載有效載荷是一個 JSON 文件,可以像上面所示的範例一樣簡單,或通過使用完整的物件定義集進行詳盡描述。

表格式模型文本語言 (TMSL) 參考 會描述語法。

在資料庫層級,CREATE、ALTER 和 DELETE 命令會在熟悉的 XMLA 視窗中輸出 TMSL 腳本。 其他命令,例如 Process,也可以在此版本中編寫腳本。 未來版本中可能會新增許多其他動作的腳本支援。

可編寫腳本的命令

說明

建立

加入資料庫、連接或分割區。 ASSL 的等效項目是 CREATE。

創建或替換

藉由覆寫舊版來更新現有的物件定義(資料庫、連接或分割區)。 ASSL 對等專案是 ALTER,AllowOverwrite 設定為 true,而 ObjectDefinition 則設定為 ExpandFull。

刪除

拿掉物件定義。 ASSL 相當於 DELETE。

重新整理

處理該物件。 ASSL 對等專案是 PROCESS。

DAX

改善的 DAX 公式編輯

公式列的更新可以讓您更輕鬆地撰寫公式,方法是使用語法著色來區分函數、欄位和量值,並提供智慧函數和欄位建議。如果您的 DAX 表達式有錯誤部分,會透過錯誤波浪線提醒您。 它也可讓您使用多行 (Alt + Enter) 和縮排 (Tab)。 公式列現在也可讓您撰寫批註來整合到量值中,只要輸入 "//",相同行上這些字元後面的所有內容都會被視為批註。

DAX 變數

此版本現在包含 DAX 中變數的支援。 變數現在可以將表達式的結果儲存為具名變數,然後可以當做自變數傳遞至其他量值表達式。 一旦計算變數表達式的結果值之後,即使變數在另一個表達式中參考,這些值也不會變更。 如需詳細資訊,請參閱 VAR 函式。

新的 DAX 函式

透過此版本,DAX 引進了五十多個新的函式,以支援Power BI中更快的計算和增強視覺效果。 若要深入瞭解,請參閱 新的DAX函式。

儲存不完整的量值

您現在可以直接在表格式 1200 模型項目中儲存不完整的 DAX 量值,並在準備好繼續時再次挑選。

其他 DAX 增強功能

非空白計算 - 減少非空白所需的掃描數目。

量值融合 - 相同數據表中的多個量值將會合併成單一儲存引擎 - 查詢。

分組集 - 當查詢要求多個數據粒度量值時(總計/年/月),單一查詢會在最低層級傳送,而其餘的數據粒度則衍生自最低層級。

備援聯結消除 - 記憶體引擎的單一查詢會同時傳回維度數據行和量值。

IF/SWITCH 的嚴格評估 - 當條件為 false 時,分支將不再導致資料庫引擎查詢。 先前,分支曾被積極評估,但評估結果稍後被捨棄。

開發人員

AMO 中用於 1200 程式設計的 Tabular Microsoft.AnalysisServices.Tabular 命名空間

Analysis Services 管理物件 (AMO) 已更新為包含新的表格式命名空間,以便管理 SQL Server 2016 Analysis Services 的表格式模式實例,並提供數據定義語言,以程式設計方式建立或修改表格式 1200 模型。 請流覽 Microsoft.AnalysisServices.Tabular 以閱讀 API。

Analysis Services 管理物件(AMO)更新

Analysis Services 管理物件 (AMO) 已重構為包含第二個組件,Microsoft.AnalysisServices.Core.dll。 新的元件會區分在 Analysis Services 中具有廣泛應用程式的常見類別,例如伺服器、資料庫和角色,而不論伺服器模式為何。 先前,這些類別是原始Microsoft.AnalysisServices 元件的一部分。 將它們移至新的元件,為 AMO 的未來延伸鋪平了道路,並清楚劃分泛型與內容特定的 API。 現有的應用程式不受新元件影響。 不過,如果您基於任何原因選擇使用新的 AMO 程式集來重建應用程式,務必將參考新增至 Microsoft.AnalysisServices.Core。 同樣地,載入和呼叫 AMO 的 PowerShell 腳本現在必須載入 Microsoft.AnalysisServices.Core.dll。 請務必更新任何腳本。

BIM 檔案的 JSON 編輯器

Visual Studio 2015 中的程式代碼檢視現在會以 JSON 格式呈現表格式 1200 模型的 BIM 檔案。 Visual Studio 版本會決定 BIM 檔案是透過內建 JSON 編輯器轉譯為 JSON,還是以簡單文字呈現。

若要使用 JSON 編輯器,能夠展開和折疊模型的區段,您將需要最新版本的 SQL Server Data Tools 加上 Visual Studio 2015(任何版本,包括免費的 Community 版本)。 針對所有其他版本的 SSDT 或 Visual Studio,BIM 檔案會以 JSON 轉譯為簡單文字。

空模型至少會包含下列 JSON:

{

"name": "SemanticModel",

"id": "SemanticModel",

"compatibilityLevel": 1200,

"readWriteMode": "readWrite",

"model": {}

}

警告

避免直接編輯 JSON。 這樣做可能會損毀模型。

MS-CSDLBI 2.0 架構中的新元素

下列元素已新增至 [MS-CSDLBI] 2.0 架構中定義的 TProperty 複雜類型:

元素

定義

預設值

屬性,指定評估查詢時所使用的值。 DefaultValue 屬性是選擇性的,但如果無法匯總成員中的值,則會自動選取此屬性。

統計資料

與數據欄相關聯之基礎數據的一組統計數據。 這些統計數據是由 TPropertyStatistics 複雜型別所定義,而且只有在這些統計數據的計算成本不高時才會提供,如概念架構定義檔格式與商業智慧註釋檔 2.1.13.5 一節所述。

DirectQuery

新的 DirectQuery 實作

此版本對表格式 1200 模型的 DirectQuery 功能進行了顯著增強。 以下是摘要:

DirectQuery 現在會產生更簡單的查詢,以提供更佳的效能。

對定義用於模型設計和測試之範例數據集的額外控制。

DirectQuery 模式中的表格式 1200 模型現在支援列層級安全性(RLS)。 先前,RLS 的存在會防止在 DirectQuery 模式中部署表格式模型。

DirectQuery 模式中的表格 1200 模型現在支援計算欄。 先前,計算欄位的存在可防止在 DirectQuery 模式中部署表格式模型。

效能優化包括 VertiPaq 和 DirectQuery 的冗餘聯結消除。

DirectQuery 模式的新數據源

DirectQuery 模式下,表格式 1200 模型支持的數據源現在包括 Oracle、Teradata 和 Microsoft Analytics Platform(以前稱為並行數據倉庫)。 若要深入瞭解,請參閱 DirectQuery 模式。

SSAS 2016 中已被取代的功能

此版本已 淘汰 下列功能:

模式/類別

特徵

多面的

遠端分區

多維度的

遠端連結量值群組

多面的

維度回寫

多面的

連結維度

多面的

主動式快取的 SQL Server 資料表通知。 改用輪詢以進行主動式快取。 請參閱主動式快取(維度)和主動式快取(分割區)。

多面的

會話多維資料集。 沒有替代品。

多面的

本機資料立方體。 沒有替代品。

表格式

未來版本中,表格式模型 1100 和 1103 的相容性層級將不再獲得支援。 替換是將模型設置在相容性層級 1200 或更高,並將模型定義轉換為表格式元數據。 請參閱 Analysis Services 中表格式模型的相容性層級。

工具

SQL Server Profiler 用於擷取追蹤 取代是使用內嵌在 SQL Server Management Studio 中的擴充事件分析工具。 請參閱 使用 SQL Server 擴充事件來監視 Analysis Services。

工具

伺服器追蹤重播分析器更換。 沒有可替代的選擇。

追蹤管理物件和追蹤 API

Microsoft.AnalysisServices.Trace 物件(包含 Analysis Services 追蹤和重播物件的 API)。 替換涉及多個部分: - 追蹤組態:Microsoft.SqlServer.Management.XEvent- 追蹤讀取:Microsoft.SqlServer.XEvent.Linq- 追蹤回放:無

SSAS 2016 中已停止的功能

此版本中 已停止 下列功能:

特徵

替代方案或因應措施

CalculationPassValue (MDX)

沒有。 此功能在 SQL Server 2005 中已被取代。

CalculationCurrentPass (MDX)

沒有。 此功能在 SQL Server 2005 中已被取代。

NON_EMPTY_BEHAVIOR 查詢優化器提示

沒有。 此功能在 SQL Server 2008 中已被取代。

COM組件

沒有。 此功能在 SQL Server 2008 中已被取代。

CELL_EVALUATION_LIST內部儲存格屬性

沒有。 此功能在 SQL Server 2005 中已被取代。

SSAS 2016 的重大變更

.NET 4.0 版本升級

Analysis Services 管理物件(AMO)、ADOMD.NET 和表格式物件模型(TOM)客戶端程式庫現在以 .NET 4.0 運行時為目標。 對於以 .NET 3.5 為目標的應用程式,這可以是重大變更。 使用這些元件較新版本的應用程式現在必須以 .NET 4.0 或更新版本為目標。

AMO 版本升級

此版本是 Analysis Services 管理物件 (AMO) 的版本升級,在某些情況下是重大變更。 如果您從舊版升級,呼叫 AMO 的現有程式代碼和腳本將會繼續執行。 不過,如果您需要 重新編譯 應用程式,而且以 SQL Server 2016 Analysis Services 實例為目標,您必須新增下列命名空間,讓您的程式代碼或腳本運作:

using Microsoft.AnalysisServices;

using Microsoft.AnalysisServices.Core;

每當您在程式代碼中參考 Microsoft.AnalysisServices 元件時,現在都需要 Microsoft.AnalysisServices.Core 命名空間。 如果物件在表格式和多維度案例中使用相同的方式,則先前只位於 Microsoft.AnalysisServices 命名空間中的物件會移至此版本中的 Core 命名空間。 例如,伺服器相關 API 會重新配置至 Core 命名空間。

雖然現在有多個命名空間,但兩者都存在於相同的元件中(Microsoft.AnalysisServices.dll)。

XEvent DISCOVER 變更

為了更好地支援 SQL Server 2016 Analysis Services 中的 SSMS 的 XEvent DISCOVER 串流,將 DISCOVER_XEVENT_TRACE_DEFINITION 取代為以下 XEvent 追蹤:

探索_X事件_套件

DISCOVER_XEVENT_OBJECT

DISCOVER_XEVENT_OBJECT_COLUMNS

DISCOVER_XEVENT_SESSION_TARGETS(探索X事件工作階段目標)

SSAS 2016 的行為變更

SharePoint 模式中的 Analysis Services

不再需要執行Power Pivot 設定精靈作為安裝後工作。 對於從目前的 SQL Server 2016 Analysis Services 載入模型的所有受支援的 SharePoint 版本,情況皆如此。

表格模型中的 DirectQuery 模式

DirectQuery 是表格式模型的數據存取模式,可在後端關係資料庫上執行查詢執行,即時擷取結果集。 它通常用於非常大型的數據集,這些數據集無法容納於記憶體中,或者當數據變動頻繁時,您希望在查詢表格式模型時返回最新的數據。

DirectQuery 已作為過去數個版本的數據存取模式存在。 在 SQL Server 2016 Analysis Services 中,若表格式模型的相容性層級為 1200 或以上,則其實作方式已經做了稍微的修訂。 DirectQuery 的限制比之前少。 它也有不同的資料庫屬性。

如果您在現有的表格式模型中使用 DirectQuery,您可以將模型保持在目前 1100 或 1103 的相容性層級,並繼續使用這些層級所實作的 DirectQuery。 或者,您可以升級至 1200 或更新版本,以受益於 DirectQuery 的增強功能。

DirectQuery 模型無法就地升級,因為較舊相容性層級的設定在較新的 1200 和更高的相容性層級中沒有完全相同的對應項目。 如果您有在 DirectQuery 模式中執行的現有表格式模型,您應該在 SQL Server Data Tools 中開啟模型、關閉 DirectQuery、將 相容性層級 屬性設定為 1200 或更新版本,然後重新設定 DirectQuery 屬性。 如需詳細資訊,請參閱 DirectQuery 模式 。

相关推荐

掌握鼻腔共鸣,90%的歌曲都能唱得动听!
日博365登录网址

掌握鼻腔共鸣,90%的歌曲都能唱得动听!

📅 08-24 👍 730
涼麵醬汁比例配方終極指南:3種經典醬汁黃金比例大公開
柔软的英文翻译
日博365登录网址

柔软的英文翻译

📅 08-15 👍 43
互联网营销是什么?
日博best365下载

互联网营销是什么?

📅 01-03 👍 486
蠼螋  中国卫生有害生物防制协会
日博best365下载

蠼螋 中国卫生有害生物防制协会

📅 07-24 👍 944
执笔写流年下一句什么,执笔流年的意思是什么