在SSDT中部署一個 SSAS 項目到本地服務器上出現錯誤
You cannot deploy the model because the localhost deployment server is not running in multidimensional mode.
錯誤原因是因為我在本地安裝 SQL Server 2012 的時候只選擇安裝了 Tabular Mode, 而這個Demo項 目是多維數據集項目, 在 SQL Server 2012 中被稱之為 Multidimensional Mode.
有的時候我們部署的項目並不一定是在本地服務器示例上, 有可能部署在遠程服務器示例, 那麼如何 知道遠程服務器上的 SSAS 服務安裝了哪些模式?
非常簡單的做法就是連接到遠程服務器分析服務然後參照此圖 - 顯示了不同 SSAS 模型的實例
第一種表示是 Multidimensional Mode 多維和數據挖掘模式 , 簡單理解就是我們在 SQL Server 2008 / 2008 R2 上使用的 SSAS 的模型, 可以支持 MOLAP, HOLAP 和 ROLAP 存儲以及數據挖掘模型的 多維數據庫.
第二種顯示的是 Tabular Mode, 在 SQL Server 2012 中新推出的一個 SSAS 解決方案, 是完完全全 的一個新產品, 是基於內存存儲或 DirectoryQuery 存儲的表格模型
第三種顯示的是 SSAS 實例是作為 PowerPivot for SharePoint 部署的一部分安裝.
每一種模式之間是互斥的, 不能在表格模型下運行多維數據庫模型的 SSAS 數據庫, 就像我開頭提到 的這個問題, 在 Tabular Mode 下我是無法將一個 Multidimensional Mode 的項目部署成功的.
並且建議也不要嘗試將幾種不同的模型安裝到同一個服務器實例中, 因為我的嘗試沒有成功!
在之後的嘗試中, 我也試圖在同一台服務器中將這些不同的模型分別安裝到不同的服務器實例, 發現 也不能成功, 也有可能是人品問題!
錯誤信息 - Rule "Same architecture installation" failed.
有一個很重要的原因就是在第一次安裝完 SQL Server 2012 之後系統目錄中會出現 Microsoft SQL Server 2008 的部分內容, 等再次安裝 SQL Server 2012 的時候它認為兩者之間產生了某種沖突, 因此 驗證失敗!
還好我的電腦中有不同的虛擬機, 因此也不打算繼續浪費時間嘗試下去. 並且有一個很重要的前提就 是除非你的電腦配置非常高, 否則也不要將多個 SSAS 服務安裝在同一個系統中, 開銷會非常大.