總結
| 項目 | Description |
|---|---|
| 發行狀態 | 一般可用性 |
| Products | Power BI (語意模型) |
| 支援的驗證類型 | 基本 (使用者名稱/密碼) |
| 函數參考文檔 | Essbase.Cubes |
先決條件
支援 Essbase 11.1.2.x 版本。
支援的功能
- Import
- 直接查詢 (Power BI 語意模型)
- 進階選項
- 以分鐘為單位的命令逾時
- 伺服器
- Application
- 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 Application Provider Service (APS) 伺服器的主機名稱或 IP 位址。(
port number例如,19000)是APS伺服器接聽XMLA請求的埠號。URL 的最後一部分,即路徑(/aps/XMLA),區分大小寫,必須完全如所示指定。
一些範例網址如下:
-
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 中設定的所有進階選項。
| 進階選項 | Description |
|---|---|
| 以分鐘為單位的命令逾時 | 可讓您設定 Power BI 放棄呼叫之前允許命令執行的時間上限。 如果達到命令逾時,Power BI 可能會再重試兩次,然後才完全放棄呼叫。 此設定有助於查詢大量資料。 命令逾時的預設值為 140 秒。 |
| 伺服器 | 要執行選擇性 MDX 陳述式的伺服器名稱。 此值須區分大小寫。 |
| Application | 要執行選擇性 MDX 陳述式的應用程式名稱。 此值須區分大小寫。 |
| MDX 陳述式 | 選擇性地提供特定的 MDX 陳述式給 Oracle Essbase 伺服器以執行。 一般而言,Power BI 會以互動方式決定要傳回的 Cube 量值和維度。 不過,藉由指定 MDX 陳述式,會載入該特定 MDX 陳述式的結果。 當您指定 MDX 陳述式時,您也必須提供 [伺服器] (例如 essbaseserver-1) 和 [應用程式] (例如 Sample) 進階選項,以指出 MDX 陳述式的執行位置。 此外,您只能在 將資料連線模式 設定為 匯入的情況下使用 MDX 陳述式。一般而言,SmartView 產生的 MDX 或 Essbase Admin 接受的 MDX 與 Power BI 不相容 100%。 Power BI 需要在 MDX 查詢的 0 軸上指定量值。 此外,XMLA 中的層級編號會反轉。 在 XML 中,最不精細的層級是層級 0、1 等,但在 Essbase 中則相反。因此,如果在 MDX 查詢中明確使用層級編號,則需要調整它們。 |
匯入資料時使用資料來源導覽器
當 「資料連線模式」 設為 「匯入」時,資料來源導覽器會載入針對您在 URL 中提供的 APS 伺服器設定的伺服器。 展開樹狀結構中的伺服器節點會顯示可用的應用程式。 展開應用程式節點會顯示可用的資料庫 (也稱為 Cube)。 展開資料庫節點會顯示可用的量值和維度。 維度可以進一步展開,以顯示每個維度的階層中的層級。
選取名稱旁的核取方塊,選擇量值和所有 (或特定) 維度層級。 右側窗格中提供了資料的預覽。 您可以選取 [載入] 按鈕來擷取與選取項目相關聯的資料,或選取 [轉換資料] 按鈕,在將資料載入 Power BI 之前,先對資料設定進一步的篩選條件。
與 Essbase 管理相比的顯示差異
在導覽器中展開維度階層時,您可能會注意到與使用 Essbase Administration Services 控制面板相比,其外觀有所不同。
例如,下圖顯示 Essbase 管理服務中展開的實體維度階層。
在 Power Query 導覽器中,正在展開的相同實體會顯示如下:
請注意,這個外觀是風格上的選擇,在數據上沒有任何差異。 Power Query 導覽器中的層級會對應至階層層級。
在上一個範例中,層級 1 將包含 “R_ReportingUnits”、“調整實體輸入” 和 “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 時擷取比必要資料更多資料的機會。
連線至 Oracle Essbase 資料來源
若要使用匯入模式連線至 Essbase 伺服器,請遵循 從 Power Query Desktop 連線至 Essbase 中的指示。
展開樹狀結構,深入到所需的伺服器、應用程式和資料庫,直到它顯示資料庫的度量和維度為止。 現在,請選取您的量值,且僅選取一個維度層級。 挑選最重要的維度層級。 在後續步驟中,您可以透過累加新增更多維度層級來建置結果。
請選擇 載入 來匯入選取的測量和維度層級。
編輯查詢以新增更多維度層級
現在您已經有了起點,您可以開始新增更多維度層級並隨時套用篩選器。
選取 Power BI Desktop 功能區上的 [編輯查詢 ] 以啟動程式。
如果您想要在初始維度中篩選成員,請選取欄屬性按鈕
,以顯示此層級的可用維度成員清單。 只選取您在此層級所需的維度成員,然後選取 「確定」 以套用篩選。產生的資料現在會使用套用的篩選器進行更新。 「已套用的步驟」 現在包含您設定的篩選器的新步驟(篩選列)。 您可以選取步驟的設定按鈕
,稍後修改篩選器。現在,您新增了一個新的維度層級。 在此情況下,您將為最初選擇的相同維度添加下一個層級。 選取功能區上的 [新增項目 ] 以顯示 [ 導覽器 ] 對話方塊。
導覽至相同的維度,但這次選取第一個層級下方的下一個層級。 然後選取 確定 將維度層級新增至結果。
結果網格現在具有來自新維度層級的資料。 請注意,因為您在最上層套用了過濾器,所以只會傳回第二個層次中的相關成員。
您現在可以將篩選器套用至第二層維度,就像對第一層所做的那樣。
如此一來,每個後續步驟都會確保只從伺服器擷取您需要的成員及資料。
現在讓我們重複前面的步驟來新增維度層級。 再次選取功能區列上的 [新增項目]。
流覽至您想要的維度層級,選取它, 然後選取確定 以將維度層級新增至結果。
新的維度層級會新增至結果。
視需要將篩選器套用至此維度層級。
觀察結果。
套用變更並載入資料
您現在已準備好建立報表和視覺效果。
在 DirectQuery 模式中新增維度層級時的反覆篩選應用程式
當您以 DirectQuery 模式與多維度 Cube 資料來源互動時 (例如 Oracle 的 Essbase),Power BI 會在 [欄位 ] 窗格中顯示 Cube 的維度和層級。
若要根據維度成員檢視和篩選:
將維度層級從「欄位」窗格拖放到「篩選器」窗格。 您可以視您的需求,將維度層級拖曳至「在此視覺效果上的篩選器」、「此頁面上的篩選器」或「所有頁面上的篩選器」下的「在此新增資料欄位」區域。
一旦維度的層級位於 [篩選器] 窗格中,且篩選器類型設定為 [基本篩選],您會注意到該維度層級的成員會顯示為可用篩選器的清單。
您可以檢查要包含在結果中的成員。
或者,您可以選取 [全選] 選項,然後取消核取您不想包含在結果中的成員。
在該過濾器的搜尋欄位中輸入一些字元,以在清單中尋找成員。
當您具有相同維度的兩個或多個層次的過濾器時,您會注意到從維度中較高層次選取成員會變更該維度較低層次中可用的成員。
您可以勾選 [ 預設停用交叉醒目提示/篩選 ] 選項,以停用此交叉醒目提示/篩選行為,如 查詢縮減選項中所述。
當您在維度層級篩選器中完成選擇所需的成員時,現在是將該維度層級新增至視覺效果的好時機。 在 [欄位] 窗格中檢查相符的維度層級,然後將其新增至您目前的視覺效果。
如需新增篩選的詳細資訊,請移至 將篩選新增至 Power BI 中的報表。
故障排除
本節概述您可能遇到的常見問題,並包含解決問題的疑難排解步驟。
連接問題
症狀 1
Power BI Desktop 會傳回錯誤訊息「無法連線到遠端伺服器」。
Resolution
請確定已在 Essbase 管理服務 (EAS) 主控台中針對提供者伺服器和獨立伺服器正確設定 Essbase 分析提供者服務 (APS) 伺服器。 其他資訊: 設定 Essbase 叢集
請確定 URL 正確無誤。
- 檢查以確保主機名和/或IP地址正確。
- 檢查以確保提供的埠正確無誤。
- 檢查以確保指定了http(不是https)協定。
- 檢查並確認 URL 中 /aps/XMLA 路徑的大小寫是否正確。
如果 Power BI Desktop 與提供的主機名稱之間有防火牆,請檢查以確保提供的主機名稱和連接埠可以透過防火牆輸出。
驗證
嘗試再次連線不會顯示錯誤,且 Cube 和成員清單位於導覽窗格中。 您也可以選取並在匯入模式下預覽中顯示。
症狀 2
Power BI Desktop 會傳回錯誤訊息「我們無法使用提供的認證進行驗證。 請再試一次。
Resolution
確保提供的使用者名稱和密碼正確無誤。 仔細重新輸入他們的數值。 密碼區分大小寫。
驗證
更正使用者名稱和密碼之後,您應該能夠在預覽中顯示成員和值,或能夠載入資料。
症狀3
Power BI Desktop 會傳回錯誤訊息「根層級的資料無效。 第 1 行,位置 1。
Resolution
請確定已在 Essbase 管理服務 (EAS) 主控台中針對提供者伺服器和獨立伺服器正確設定 Essbase 分析提供者服務 (APS) 伺服器。 其他資訊: 設定 Essbase 叢集。
驗證
嘗試再次連線不會顯示錯誤,而且 Cube 和成員清單會顯示在導覽窗格中。 您也可以選取並在匯入模式的預覽中顯示。
症狀 4
成功連線至 Oracle Essbase Analytic Provider Services (APS) 伺服器之後,資料來源導覽器中的 URL 節點下方會列出伺服器。 不過,當您展開伺服器節點時,該伺服器節點下方不會列出任何應用程式。
Resolution
建議您設定 Oracle Hyperion 伺服器,以透過 Essbase 管理服務 (EAS) 主控台定義提供者和獨立伺服器。 請參閱附錄: 在 Essbase 管理服務 (EAS) 主控台中登錄提供者和獨立伺服器一節。
驗證
嘗試再次連線不會顯示錯誤,而且您可以在導覽窗格中看到 Cube 和成員清單。 您也可以選取並在匯入模式的預覽中顯示。
逾時或資料量龐大問題
症狀 1
Power Query 傳回錯誤訊息「作業已逾時」
Resolution
請確定網路穩定,且資料來源 URL 中提供的 Essbase 分析提供者服務 (APS) 伺服器有可靠的網路路徑。
如果服務的查詢可能會傳回大量資料,請指定較長 (或更長) 的命令逾時間隔。 可能的話,請在查詢中新增篩選器,以減少傳回的資料量。 例如,僅選取您要傳回之每個維度的特定成員。
驗證
重試載入資料,如果問題持續存在,請嘗試增加至較長的逾時間隔,或進一步過濾資料。 如果問題仍然存在,請嘗試 症狀 3 的解決方案。
症狀 2
查詢會傳回錯誤訊息「內部錯誤:查詢正在分配過大的記憶體( >4GB),無法執行。 查詢分配超出分配上限。
Resolution
您嘗試執行的查詢產生的結果大於 Oracle Essbase 伺服器可以處理的結果。 提供或增加查詢上的篩選器,以減少伺服器傳回的資料量。 例如,為每個維度的每個層級選取特定成員,或設定量值的數值限制。
驗證
重試載入資料,如果問題持續存在,請嘗試增加至較長的逾時間隔,或進一步過濾資料。 如果問題仍然存在,請嘗試 症狀 3 的解決方案。
Essbase 分析提供者服務 (APS) 或 Essbase 伺服器表示有大量連線且工作階段執行時間較長。
Resolution
當連線模式為 DirectQuery 時,您可以輕鬆選取要新增至所選視覺效果的量值或維度層級。 不過,每個新選取項目都會建立對 Essbase Analytic Provider Services(APS)/Essbase 伺服器的新查詢和新工作階段。 有幾種方法可確保減少查詢數目,或減少每一個查詢結果的大小。 檢閱 效能考量, 以減少查詢伺服器的次數,並減少查詢結果的大小。
驗證
重試載入資料。
執行 MDX 時金鑰不相符
癥狀
MDX 陳述式會傳回錯誤訊息:「索引鍵未匹配到資料表中的任何資料列」。
Resolution
伺服器和應用程式欄位的值或大小寫可能不相符。 選取 編輯 按鈕,然後更正 伺服器 和 應用程式 欄位的值和大小文字。
驗證
重試載入資料。
無法取得多維數據集問題 - MDX
癥狀
MDX 陳述式會傳回錯誤訊息「無法從陳述式取得 Cube 名稱。 檢查用於指定 Cube 名稱的格式。
Resolution
請確定 MDX 陳述式 FROM 子句中的資料庫名稱與應用程式和資料庫名稱完全限定,例如 [Sample.Basic]。 選取 [編輯] 按鈕,然後更正 MDX 陳述式 FROM 子句中的完整資料庫名稱。
驗證
重試載入資料。
Essbase 錯誤 (1260060) 問題 - MDX
癥狀
MDX 陳述式會傳回錯誤訊息「Essbase 錯誤 (1260060):Cube 名稱 XXXX 與目前的應用程式/資料庫不相符」
Resolution
請確定應用程式名稱與 FROM 子句中的完整資料庫名稱相符。 選取 [編輯] 按鈕,然後更正 MDX 陳述式 FROM 子句中的應用程式名稱或完整資料庫名稱
驗證
重試載入資料。
Essbase 錯誤 (1200549):MDX 查詢中重複的維度 [量值]
癥狀
載入維度會傳回錯誤訊息「Essbase 錯誤 (1200549):MDX 查詢中重複的維度 [量值]。
Resolution
登入 Essbase 伺服器,開啟 Essbase 管理服務主控台,然後使用管理員使用者 (或對有問題的資料庫具有權限的任何人) 登入。
導覽至具有有問題的 「量值」維度的 Essbase 伺服器 > 應用程式 > 資料庫。
解鎖資料庫的結構並對其進行編輯。
確定哪個維度應為「帳戶」維度類型。 在右鍵按一下它,然後選取 編輯成員屬性...。
選取維度類型欄位,並將其設定為 帳戶。 請選擇 [確定]。
驗證並保存大綱。
驗證
重試載入維度。