Essbase
項目 |
說明 |
發行狀態 |
正式發行 |
產品 |
Power BI (語意模型) |
支援的驗證類型 |
基本 (使用者名稱/密碼) |
函式參考檔 |
Essbase.Cubes |
支援 Essbase 11.1.2.x 版本。
- Import
- 直接查詢 (Power BI 語意模型)
- 進階選項
- 以分鐘為單位的命令逾時
- 伺服器
- 申請
- MDX 語句
從 Power Query Desktop 連線 至 Essbase
若要連線到 Essbase 伺服器:
選取 [取得數據] 體驗中的 [Essbase] 選項。
輸入 Oracle Essbase Hyperion 伺服器的 URL 。 一般而言,URL 看起來像 http://[hostname]:[port number]/aps/XMLA
。 URL 的元件包括:
hostname
例如, yourservername.domain.com
是內部系統的 Oracle Hyperion 應用程式提供者服務 (APS) 伺服器的主機名或 IP 位址。
port number
(例如,19000) 是 APS 伺服器接聽 XMLA 要求的埠號碼。
URL 的最後一個部分,路徑(也就是 /aps/XMLA),會區分大小寫,必須如所示指定。
一些範例 URL 會是:
http://apsserver.company.com:19000/aps/XMLA
—搭配預設埠 19000 使用完整主機名。
http://hypserver01:13080/aps/XMLA
—使用未完整主機名和埠 13080。
http://10.10.10.10/aps/XMLA
—使用IP位址和埠80從預設19000變更。
選取 [匯入] 或 [DirectQuery 數據連線模式]。 詳細資訊: 在 Power BI Desktop 中使用 DirectQuery
或者,在您想要用來修改連接查詢的任何進階選項中輸入值。 詳細資訊:使用進階選項 連線
第一次連線到數據源(由每個唯一 URL 識別),系統會提示您輸入帳戶認證。 輸入連線的使用者名稱和密碼。 詳細資訊: 使用數據源進行驗證
在 [導覽器] 中,選取您需要的數據。 然後,選取 [轉換數據] 以轉換 Power Query 編輯器 中的數據,或選取 [載入] 以在 Power BI 中載入數據。
Power Query 提供一組進階選項,您可以視需要新增至查詢。 下表列出您可以在Power Query 中設定的所有進階選項。
進階選項 |
描述 |
以分鐘為單位的命令逾時 |
可讓您設定在Power BI 放棄呼叫之前,允許命令執行的時間上限。 如果達到命令逾時,Power BI 可能會再重試兩次,然後再完全放棄呼叫。 此設定有助於查詢大量數據。 命令逾時的預設值為140秒。 |
伺服器 |
要執行選擇性 MDX 語句的伺服器名稱。 此值區分大小寫。 |
申請 |
要執行選擇性 MDX 語句的應用程式名稱。 此值區分大小寫。 |
MDX 語句 |
選擇性地將特定的 MDX 語句提供給要執行的 Oracle Essbase 伺服器。 一般而言,Power BI 會以互動方式決定要傳回之 Cube 的量值和維度。 不過,藉由指定 MDX 語句,將會載入該特定 MDX 語句的結果。 當您指定 MDX 語句時,也必須提供伺服器 (例如 essbaseserver-1 ) 和應用程式 (例如 Sample , ) 進階選項,以指出 MDX 語句要執行的位置。 此外,您只能搭配 Data 連線 ivity 模式設定為 [匯入] 使用 MDX 語句。
一般而言,SmartView 所產生的 MDX 或 Essbase 管理員 接受的 MDX 與 Power BI 不相容。
PowerBI 需要在 MDX 查詢的 0 軸上指定量值。 此外,XMLA 中的層級編號也會反轉。 最小細微層級是 XML 中的層級 0、1 等等,但在 Essbase 中則相反,「直接」。 因此,如果在 MDX 查詢中明確使用層級號碼,則必須加以調整。 |
當 [數據 連線]模式設定為 [匯入] 時,數據源導覽器會載入您在 URL 中提供的 APS 伺服器所設定的伺服器。 展開樹狀結構中的伺服器節點會顯示可用的應用程式。 展開應用程式節點會顯示可用的資料庫(也稱為 Cube)。 展開資料庫節點會顯示可用的量值和維度。 維度可以進一步展開,以顯示每個維度階層中的層級。
選取名稱旁的複選框,以選擇量值和所有(或特定)維度層級。 右側的窗格中會提供數據的預覽。 您可以選取 [ 載入 ] 按鈕來擷取與選取範圍相關聯的數據,或選取 [轉換數據 ] 按鈕,以在Power BI 中載入數據之前設定數據進一步篩選。
在導覽器中展開維度階層時,您可能會注意到,相較於使用 Essbase 管理員 istration Services 控制面板,它看起來會有所不同。
例如,下圖顯示從 Essbase 管理員 istration Services 展開的實體維度階層。
在 Power Query 導覽器中,正在展開的相同實體會顯示如下:
請注意,此外觀是文體決策,且數據沒有任何差異。 Power Query 導覽器中的層級會對應至階層式層級。
在上述範例中,層級 1 會包含 “R_ReportingUnits”、“Adjustment Entity Input” 和 “No_Entity”。 層級 2 會包含 「R_Americas」、“R_EMEA”、“R_AsiaPacific”、“1_ReportingUnits_Adjustment”、“CALA_HFM_Input”、“CALA_Total”等等。
原因是 Power Query 中的導覽器限制為 10,000 個要顯示的成員,而且階層底下可能有數百萬或數十億個成員。 即使沒有成員顯示限制的情況(例如使用 Power Query Online),在樹狀結構格式中瀏覽和選取每個個別成員,而且可能的值會很快變得乏味且難以使用。
因此,階層式層級的群組可讓您更輕鬆地選取要匯入的內容,而後續的報表產生可以使用篩選,只以使用者想要的成員為目標。
使用適用於 DirectQuery 的數據源導覽器
選擇 DirectQuery 的數據 連線 模式時,數據源導覽器會載入為您在 URL 中提供的 APS 伺服器所設定的伺服器。 展開樹狀結構中的伺服器節點會顯示可用的應用程式。 展開應用程式節點會顯示可用的資料庫(也稱為 Cube)。
Essbase 連接器不支援量值階層。 所有量值都會在同一層級顯示。 您仍然可以選取您需要的所有量值。 如果有大量的量值,搜尋欄位可用來縮小顯示的量值範圍。
在 DirectQuery 模式中與 Power BI 互動是非常動態的。 選取複選框以在視覺效果中包含量值或維度層級時,Power BI Desktop 會產生查詢,並將其傳送至 Oracle Essbase 伺服器以取得結果。 Power BI 已優化,可快取任何重複的查詢,以改善效能。 但是,如果產生任何新的查詢,則會傳送至 Oracle Essbase 伺服器以產生新的結果。 根據所套用的量值、維度層級和篩選數目而定,查詢可能會比 Oracle Essbase 伺服器回應更快。 若要改善效能並提升回應性,請考慮下列三種方法來優化您與 Oracle Essbase 伺服器的互動。
有三個選項可減少傳送的查詢數目。 在 Power BI Desktop 中,選取 [檔案] 索引標籤,然後選取 [選項和設定>選項],然後選取 [目前檔案] 區段下的 [查詢縮減]。
選取 [ 依預設 停用交叉醒目提示/篩選] 選項底下的 [停用 交叉醒目提示/篩選] 選項,預設會停用交叉醒目提示/篩選。 停用時,篩選條件中的成員清單在篩選相同維度的其他層級時不會更新。 選取 [顯示套用] 按鈕下的 [交叉分析篩選器選取專案] 選項,並在交叉分析篩選器選取專案變更時,只傳送查詢一次, 區段會顯示 [套用] 按鈕。 選取 [顯示套用] 按鈕底下的 [篩選選項] 選項,並只針對區段傳送查詢一次,就會在篩選選取專案變更時顯示 [套用] 按鈕。
注意
這些選項僅適用於您目前正在處理的檔案。 目前的 [檔案 ] 選項設定會與檔案一起儲存,並在開啟相同的檔案時還原。
在匯入模式中與 Oracle 的 Essbase 等多維度 Cube 數據源互動時,Power Query 一開始會在 [資料庫 導覽器 ] 對話框中顯示量值、維度和維度層級。 不過,雖然Power BI 可讓您輕鬆地選取資料並將其可視化,但有時會導致從伺服器擷取太多數據。
下列程式示範如何藉由反覆地將篩選套用至每個層級的維度成員,減少將數據匯入 Power BI 時擷取更多數據的機會。
請遵循從Power Query Desktop 連線 至 Essbase 中的指示,使用匯入模式連線到 Essbase 伺服器。
展開樹狀結構,向下切入至您所需的伺服器、應用程式和資料庫,直到它公開資料庫的量值和維度為止。 目前,請選取您的量值,而且只有一個維度層級。 挑選最重要的維度層級。 在後續步驟中,您將透過累加方式新增更多維度層級來建置結果。
選取 [載入] 以匯入選取的量值和維度層級。
既然您已經有起點,您可以開始新增更多維度層級,並在您執行時套用篩選。
選取 Power BI Desktop 功能區上的 [編輯查詢 ] 以啟動程式。
如果您有想要在初始維度中篩選的成員,請選取 [資料行屬性] 按鈕 ,以顯示此層級的可用維度成員清單。 只選取此層級所需的維度成員,然後選取 [ 確定 ] 以套用篩選。
產生的數據現在會使用套用的篩選來更新。 [套用的步驟 ] 現在包含您設定之篩選的新步驟(已篩選的數據列)。 您可以選取步驟的 [設定] 按鈕 ,以便稍後修改篩選。
現在您將新增維度層級。 在此情況下,您將會針對您最初選擇的相同維度,將下一個層級新增至下一個層級。 選取 功能區上的 [新增專案 ] 以顯示 [ 導覽器 ] 對話框。
流覽至相同的維度,但這次選取第一個層級下方的下一個層級。 然後選取 [ 確定 ] 將維度層級新增至結果。
結果方格現在具有來自新維度層級的數據。 請注意,由於您已在最上層套用篩選,因此只會傳回第二層中的相關成員。
您現在可以像第一個層級一樣,將篩選套用至第二層維度。
如此一來,每個後續步驟可確保只會從伺服器擷取所需的成員和數據。
現在,讓我們重複上述步驟來新增維度層級。 再次選取 功能區列上的 [新增專案 ]。
流覽至您想要的維度層級,加以選取,然後選取 [ 確定 ] 將維度層級新增至結果。
新的維度層級會新增至結果。
視需要將篩選套用至此維度層級。
觀察結果。
當您新增您想要的所有維度層級,並已設定所有必要的篩選時,請選取 右上角的 [關閉 ] 以關閉編輯器。
選取 [ 是 ] 以套用變更。
等候套用變更。
觀察 [ 欄位 ] 窗格中的新維度層級。
您現在已準備好建立報表和視覺效果。
在 DirectQuery 模式中新增維度層級時,反覆篩選應用程式
在 DirectQuery 模式中與多維度 Cube 數據源互動時(例如 Oracle 的 Essbase),Power BI 會在 [欄位 ] 窗格中顯示 Cube 的維度和層級。
若要根據維度成員檢視和篩選:
將維度層級從 [字段] 窗格拖放到 [篩選] 窗格。 您可以根據需求,將維度層級拖曳至 [在此視覺效果上的篩選]、此頁面上的 [篩選] 或 [篩選所有頁面] 底下的 [新增數據欄位] 區域。
一旦維度的層級位於 [ 篩選 ] 窗格中,且篩選類型設定為 [基本篩選],您就會注意到該維度層級的成員會顯示為可用的篩選清單。
您可以檢查您要包含在結果中的成員。
或者,您可以選取 [全部選取] 選項,然後取消核取您不想包含在結果中的成員。
在該篩選條件的搜尋欄位中輸入某些字元,以在清單中尋找成員。
當您有兩個以上相同維度層級的篩選條件時,您會發現從維度中較高層級選取成員會變更該維度較低層級中可用的成員。
您可以檢查 [依預設停用交叉醒目提示/篩選] 選項來停用此交叉醒目提示/篩選行為,如查詢縮減選項中所述。
當您完成在維度層級篩選中選擇想要的成員時,最好將該維度層級新增至視覺效果。 檢查 [字段] 窗格中的相符維度層級,然後將它新增至目前的視覺效果。
如需新增篩選的詳細資訊,請移至 在Power BI中將篩選新增至報表。
本節概述您可能會遇到的常見問題,並包含解決問題的疑難解答步驟。
徵兆 1
Power BI Desktop 會傳回錯誤訊息「無法連線到遠端伺服器」。
解決方法
請確定 Essbase 分析提供者服務 (APS) 伺服器已針對 Essbase 管理員 istration Service (EAS) 控制台中的提供者伺服器和獨立伺服器正確設定。 詳細資訊: 設定 Essbase 叢集
請確定URL正確無誤。
- 檢查以確定主機名和或IP位址正確無誤。
- 檢查以確保提供的埠正確無誤。
- 檢查以確定已指定 HTTP (不是 HTTPs) 通訊協定。
- 檢查以確定此案例正確適用於 URL 中的 /aps/XMLA 路徑。
如果 Power BI Desktop 與提供的主機名之間有防火牆,請檢查以確定提供的主機名和埠可以透過防火牆傳遞輸出。
驗證
嘗試再次連線不會顯示錯誤,而且 Cube 和成員清單位於瀏覽窗格中。 您也可以在匯入模式中選取並顯示預覽。
徵兆 2
Power BI Desktop 會傳回錯誤訊息「我們無法向提供的認證進行驗證。 請再試一次」。
解決方法
請確定所提供的使用者名稱和密碼正確無誤。 請仔細重新輸入其值。 密碼會區分大小寫。
驗證
更正使用者名稱和密碼之後,您應該能夠在預覽中顯示成員和值,或能夠載入數據。
徵兆 3
Power BI Desktop 會傳回錯誤訊息「根層級的數據無效。 第 1 行,位置 1。
解決方法
請確定 Essbase 分析提供者服務 (APS) 伺服器已針對 Essbase 管理員 istration Service (EAS) 控制台中的提供者伺服器和獨立伺服器正確設定。 詳細資訊: 設定 Essbase 叢集。
驗證
嘗試再次連線不會顯示錯誤,而且 Cube 和成員清單會顯示在瀏覽窗格中。 您也可以在匯入模式中選取並顯示在預覽中。
徵兆 4
成功連線到 Oracle Essbase 分析提供者服務 (APS) 伺服器之後,數據源導覽器中的 URL 節點下方會列出伺服器。 不過,當您展開伺服器節點時,該伺服器節點下方不會列出任何應用程式。
解決方法
建議您設定 Oracle Hyperion 伺服器,透過 Essbase 管理員 istration Service (EAS) 控制台來定義提供者和獨立伺服器。 請參閱附錄:在 Essbase 管理員 istration Service (EAS) 控制台中註冊提供者和獨立伺服器一節。
驗證
嘗試再次連線並不會顯示錯誤,而且您可以在瀏覽窗格中看到 Cube 和成員清單。 您也可以在匯入模式中選取並顯示在預覽中。
徵兆 1
Power Query 會傳回錯誤訊息「作業已逾時」
解決方法
請確定網路穩定,且數據源 URL 中提供的 Essbase Analytic Provider Services (APS) 伺服器有可靠的網路路徑。
如果服務查詢可能會傳回大量數據,請指定較長的 (或較長的) 命令逾時間隔。 可能的話,請將篩選新增至查詢,以減少傳回的數據量。 例如,只選取您想要傳回之每個維度的特定成員。
驗證
重試以載入數據,如果問題持續發生,請嘗試增加為較長的逾時間隔,或進一步篩選數據。 如果問題仍然存在,請嘗試解決 徵兆 3 的問題。
徵兆 2
查詢會傳回錯誤訊息「內部錯誤:查詢正在配置太大的記憶體 ( > 4GB),而且無法執行。 查詢配置超過配置限制。」
解決方法
您嘗試執行的查詢會產生大於 Oracle Essbase 伺服器可處理的結果。 提供或增加查詢上的篩選,以減少伺服器將傳回的數據量。 例如,針對每個維度的每個層級選取特定成員,或針對量值的值設定數值限制。
驗證
重試以載入數據,如果問題持續發生,請嘗試增加為較長的逾時間隔,或進一步篩選數據。 如果問題仍然存在,請嘗試解決 徵兆 3 的問題。
徵兆 3
Essbase 分析提供者服務 (APS) 或 Essbase 伺服器表示大量的連線與長時間執行的會話。
解決方法
當連線模式為 DirectQuery 時,很容易選取量值或維度層級以新增至選取的視覺效果。 不過,每個新選取項目都會建立新的查詢和 Essbase 分析提供者服務 (APS)/Essbase 伺服器的新會話。 有幾種方式可以確保查詢數目減少,或減少每個查詢結果的大小。 檢閱 效能考慮 ,以減少查詢伺服器的次數,以及減少查詢結果的大小。
驗證
重試以載入數據。
徵兆
MDX 語句會傳回錯誤訊息「索引鍵不符合數據表中的任何數據列」。
解決方法
值或 [伺服器和應用程式] 欄位的案例可能不相符。 選取 [ 編輯] 按鈕,並更正 [伺服器和應用程式] 字段的值和大小寫。
驗證
重試以載入數據。
徵兆
MDX 語句會傳回錯誤訊息「無法從 語句取得 Cube 名稱。 檢查用於指定 Cube 名稱的格式。
解決方法
請確定 MDX 語句 FROM 子句中的資料庫名稱具有應用程式和資料庫名稱的完整名稱,例如 [Sample.Basic]。 選取 [ 編輯] 按鈕,並更正 MDX 語句 FROM 子句中的完整資料庫名稱。
驗證
重試以載入數據。
Essbase 錯誤 (1260060) 問題 - MDX
徵兆
MDX 語句會傳回錯誤訊息「Essbase 錯誤 (1260060):Cube 名稱 XXXX 與目前的應用程式/資料庫不相符」
解決方法
請確定FROM子句中的應用程式名稱和完整資料庫名稱相符。 選取 [ 編輯] 按鈕,並在 MDX 語句的 FROM 子句中更正應用程式名稱或完整資料庫名稱
驗證
重試以載入數據。
Essbase 錯誤 (1200549):MDX 查詢中的重複維度 [量值]
徵兆
載入維度會傳回錯誤訊息「Essbase 錯誤(1200549):MDX 查詢中的重複維度 [量值]。
解決方法
登入 Essbase 伺服器,開啟 Essbase 管理員 istration Services 控制台,並使用系統管理員使用者登入(或具有問題資料庫許可權的人員)。
流覽至具有問題「量值」維度的 Essbase 伺服器 > 應用程式 > 資料庫。
解除鎖定資料庫的大綱並加以編輯。
判斷哪個維度應該是「帳戶」維度類型。 以滑鼠右鍵按兩下它,然後選取 [ 編輯成員屬性...]。
選取 [維度類型] 字段,並將其設定為 [ 帳戶]。 選取 [確定]。
確認並儲存大綱。
驗證
重試以載入維度。