2013-11-01 9 views
0

我想將客戶機往返MDX查詢的性能分解爲Analysis Services並返回。特別是,我在尋找識別/區分各個查詢並記錄每個查詢花費的時間:測量性能 - 往返MDX查詢的組件

  • 通過HTTP消息XMLA從客戶端到IIS
  • 的XMLA在從數據TCP/IP信息泵分析服務
  • 分析服務的數據泵
  • 從IIS到客戶端

我打開其他的數據點,這將是有益的,以確定機器人的響應響應在查詢的生命週期中使用tlenecks。

我公司已經測試的軟件組合,包括:定期SSAS DMV數據採集,性能監視器,飛行記錄,Splunk的和SQL哨兵。我們無法將它們捆綁在一起。

回答

1

您遇到的主要問題之一是可能存在時間上的重疊:IIS中的msmdpump可以開始向AS服務器發送第一個字節,只要它具有可用的httpA的XMLA的前幾個字節請求,反之亦然,它可能會在AS服務器的響應的前幾個字節可用時立即開始發送消息。

實際上,msmdpump和AS服務器之間的通信是在msmdpump和客戶端之間發送的XML的二進制版本,因此在稍後的消息中不需要知道信息就很容易翻譯。有關該協議的一些詳細信息,請參閱http://sqlblog.com/blogs/mosha/archive/2005/12/02/analysis-services-2005-protocol-xmla-over-tcp-ip.aspx。爲了跟蹤時間,我的方法會低一級:我會在運行IIS的計算機上運行Wireshark(http://www.wireshark.org/),並且僅篩選客戶端和IIS之間的http幀以及IIS計算機之間的幀和AS服務器。框架的內容或多或少都不相關,但您可以看到請求的第一個和最後一個包的時間戳,爲您提供關於不同通信持續時間的粗略估計。在一臺計算機上保留所有網絡流量記錄,避免了所有計算機的時鐘必須完全同步。

+0

嗨FrankPl - 感謝您的信息!我們不需要精確到字節......你有什麼建議可以開始解決這個問題嗎?如果您想粗略分解性能並找出瓶頸,您會做什麼? – SFun28