SQL Server分析服務協議開發 及 Message Analyzer輔助調試 董琳 & 王維 • 認識一下SSAS • SSAS協議概觀 • SSAS協議文檔的Test Suite 議程 • 演示 • Message Analyzer(MA)概觀 • MA解析器介紹 • SQL Server協議的MA解析器 • 資源及訊息 • Q&A 認識一下SSAS SSAS是哪一位?
功能:決策支援,商業分析職位:分析型資料引擎
企業級 BI應用程式 語義資料模型 DMX Data Mining Extensions MDX DAX Multidimensional Expressions Data Analysis Expressions SSAS在哪裡? SQL Server BI Platform APPs & Services
SQL Server Excel Analysis Services SharePoint SQL Server SQL Server Integration DBMS SQL Server Reporting Services Power BI Services Data
SQL Server Oracle MySQL JSON File Excel File Ta的能力是? 表格式模型化 Tabular Modeling 多維度模型化 Multidimensional Modeling
資料採礦 Data Mining PowerPivot for SharePoint 為何要使用SSAS? SSAS協議概觀 SSAS協議
MS-SSAS 1/3 Multidimensional
MS-SSAS-T 1/10 Tabular SSAS協議的應用場景
SQL Server Tools MS-SSAS Analysis Server (SSDT, SSMS) MS-SSAS-T
SOAP DirectMS-OLEDBSTR Internet Message 其它程式 XMLA EncapsulationMS-BINXML (DIME) (XML for Analysis) 典型的消息序列
Create Connection
Client AuthenticateNew Session Request (TCP) AuthenticateNew Session Response Response (TCP) Discover / Execute Request
Discover / Execute Response … End of Session Request Server End of Session Response Close Connection SSAS操作
Authenticate Request
Authenticate Response Discover Request
Client Discover Response Server Execute Request
Execute Response 生成一條消息 DIME Record GSS-API TYPE Field (RFC4178)
SOAP TCP Compression? Binary Binary XML? DIME Encryption? Message SSAS Request TCP IP SSAS Response HTTP HTTP
HTTP Header HTTPS Content-Type
解析一條消息 Decode Binary XML? Binary Decode Combine SOAP
TCP Decompress? DIME
Decrypt? Message Records SSAS IP TCP Request SSAS Response HTTP SSAS消息的結構
Scripting Language XMLA SOAP Scripting Language支持
Version Compatibility Multi- Tabular Tabular Tabular Level dimensional 110x 1200 1400
SQL Server 1470 ASSL ASSL TMSL TMSL 2019 Tabular Analysis Model SQL Server 2017 1400 Services Scripting ASSL ASSL TMSL TMSL Scripting Language SQL Server 2016 1200 ASSL ASSL TMSL TMSL Language
SQL Server 2014 1103 ASSL ASSL NA NA
SQL Server 2012 1100 ASSL ASSL NA NA XMLA中的ASSL
ASSL XMLA中的TMSL
TMSL 表格式模型對象
DataSource Column Expression
Table Partition
Relationship Measure Perspective Column Perspective Perspective Server Database Model Perspective Hierarchy Table Measure Perspective Culture Hierarchy
Role 多維度模型對象
MeasureGroup Server Database Cube Action Dimension
Mining Structure Scala Mining Assembly Mining Structure MeasureGroup Measure Column Structure Column
Dimension TableAggregation Mining Role Dimension MiningKPI Model Aggregation Attribute StructureDesign Column
Mining Structure Trace DataSource MDXScriptHierarchy Partition Permission
DataSourceView Perspective
Cube CubeDimension Account Permission Permission
Cell Assembly Cube Dimension Permission Database Role Permission AMO-TOM元件 SSAS協議文檔的TEST SUITE 我們為什麼要開發Test Suites?
確保微軟開放規範的品質
幫忙評估合作夥伴的實現
加速合作夥伴的開發 Test Suite開發流程
修復錯誤 協議文檔
發現 提取需求 高質量文檔 錯誤
Test Suite Test Suite架構
TestSuite SUT 演示 MESSAGE ANALYZER(MA)概觀 什麼是Microsoft Message Analyzer(MMA)?
顯示和分析 驗證網路數 抓取和追蹤 網絡狀態和 據包與協議 網絡數據 遠端抓包 故障 標準是否相 符
強大的網路分析診斷工具 MMA支持 多源抓取和分析 .cap .pcap .log .evtx SQL Azure Blob Powershell
以及更多! Network Administrator Network Support Analyst Help Desk方案:抓取客戶端數據或 網路故障排除和分析。 聚合來自多個源和不同時區的日誌和 跟踪數據以進行分析。
Protocol Developer Event Tracing Developer MA可以幫助 生成網絡協議代碼后,可以使用 使用ETW技術的應用程序開發,可以 MA作為協議行為,結構,消息 使用MA從ETW Provider抓取和分析 您做什麼? 字段值和狀態的驗證器。 事件訊息。
Tracer 遇到問題的普通用戶,也可以快速的上手抓取本地數據包自 查故障,或者共享給網絡管理員,加快問題的處理進程。 MA強大的過濾器 MA強大的過濾器
TCP.Port == 80
TCP.Port != 3389 // Remove RDP
*PayloadLength > 1000
(TCP.Port == 1234 and HTTP) or SMB
IPv4.Address == 192.168.1.1 MA解析器介紹 協議解析器介紹
OPN解析器 Request
Response
保存為抓包文件 E4074C69736110 協議解析器介紹 E4 07 4C697361 10
識別協議消息 值定義映射 Name= Type = 0xE4 Length = 0x07 Age = 0x10 0x4C697361
Type = Person Length = 6 識別出屬於特 將數據包重新 根據Name微軟 =開放 Lisa 不僅顯示UI中 解碼編碼流以 除了消息語法 定協議的消息。 組合為完整的 規範中定義的Age = 16 已解析的數據, 使其可讀。 驗證之外,解 長消息。 消息語法解析 還顯示微軟開 析器還可以提 原始數據。 放規範中描述 供協議級別限 的數據背後的 制驗證。 定義。 MA的協議解析器
Office and Exchange, Windows SQL SharePoint Skype Parsers Parsers Parsers Parsers
Core and Common Parsers
Microsoft Message Analyzer (MMA) SQL SERVER協議的MA解析器 MS-TDS MS-SSAS MS-SSAS-T SQL Server 協議的 MA解析器
網絡鏈接與應用開發解析器包 數據分析服務解析器包(最新發佈) (Network Connectivity and (Analysis Services parser Application Development package) parse package) Windows Parsers SQL Parsers 從Asset Manager 獲取 中下載安裝
SQL Server 協議的MA解析器 Core and Common Parsers MS-TDS Parser
Microsoft Message Analyzer (MA) 獲取SQL Server協議的MA解析器
點擊后可安裝下載
安裝成功! 資源及訊息 新聞訊息: Analysis Services Team Blog: https://blogs.msdn.microsoft.com/analysisservices/ Open Specifications Dev Center: https://docs.microsoft.com/en-us/openspecs/dev_center/ms- devcentlp/51a0d3ff-9f77-464c-b83f-2de08ed28134
SSAS開發: AMO: https://docs.microsoft.com/en-us/sql/analysis-services/multidimensional-models/analysis- management-objects/amo-classes-introduction?view=sql-server-2017 TOM: https://docs.microsoft.com/en-us/sql/analysis-services/tabular-model-programming- compatibility-level-1200/tabular-model-programming-for-compatibility-level-1200?view=sql-server- 2017 SQL Server 2016 Feature Pack download page: https://www.microsoft.com/en- us/download/details.aspx?id=52676 SQL Server 2017 Feature Pack download page: https://www.microsoft.com/en- us/download/details.aspx?id=55992 TestSuite Git: https://github.com/Microsoft/ProtocolTestFramework SQL Server Technical Documents: https://docs.microsoft.com/en- us/openspecs/sql_server_protocols/ms-sqlprotlp/3432cb95-3f91-446d-86d7-b9ea0816464e BI用戶: SSDT: https://docs.microsoft.com/en-us/sql/ssdt/sql-server-data-tools?view=sql-server-2017 SSRS: https://docs.microsoft.com/en-us/sql/reporting-services/tools/reporting-services- tools?view=sql-server-2017 Power BI: https://powerbi.microsoft.com/en-us/ Power BI Blog: https://powerbi.microsoft.com/en-us/blog/ Microsoft BI: https://www.microsoft.com/en-us/sql-server/business-intelligence
Microsoft Message Analyzer用戶: 操作指南: https://docs.microsoft.com/en-us/message-analyzer/microsoft-message-analyzer- operating-guide 下載地址: https://www.microsoft.com/en-us/download/details.aspx?id=44226 線上教程: https://docs.microsoft.com/en-us/message-analyzer/message-analyzer-tutorial Q&A 謝謝!