同盟立方體維護與疑難排解

運用以下準則來進行 Essbase 同盟分割區維護或疑難排解。

本主題假設您已建立同盟分割區,並已複查先前主題中詳述的資訊。

設計同盟立方體模型與測試

設計同盟分割區立方體時,建立分割區所需的時間如果太長,請依照以下的測試準則進行。這些準則對於採用階段方式進行除錯或監督效能相當實用。

  • 在測試環境開始同盟分割區專案。

  • 從具有下列特徵的立方體模型開始進行:

    • 沒有許多層級

    • 沒有許多共用成員或屬性

  1. 建立同盟分割區時,請在不允許對執行處理進行查詢時排定離線作業。

  2. 使用 MaxL alter application disable commands 和 (或) connects (以防止開始任何新的使用者作業),後面接著 alter system logout session 和 (或) kill request (如果需要終止任何不需要完成的作用中階段作業),逐步中斷作用中 Essbase 使用者階段作業連線。請注意,MaxL 無法終止任何仍在自治式資料倉儲執行的要求。如果您在應用程式中停用命令,請記得在建立同盟分割區之後重新啟用。

  3. 執行逾時調整:
    • 客戶網路上的 HTTPS 代理主機 - 調整客戶網路逾時
    • 負載平衡器 - 將負載平衡器逾時增加至 1260 秒 (21 分鐘)
    • 將 HTTPD 逾時增加至 21 分鐘
      /etc/httpd/conf.d/00_base.conf:ProxyTimeout 1260
      /etc/httpd/conf.d/00_base.conf:Timeout 1260
    • APS/JAPI 逾時:
      • Essbase Web 介面主控台頁面中選取組態,並記下 olap.server.netSocketTimeOut 的值。200 毫秒的值表示每 5 個這些特性會產生 1 秒的等待時間。
      • 若要將 APS/JAPI 逾時限制設為 30 分鐘,請將 olap.server.netRetryCount 設為 9000。
  4. 建立同盟分割區。
  5. 回復步驟 3 中的逾時調整。
  6. 使用 alter application enable commands 和 (或) connects (若先前停用的話),讓使用者回到系統上。
  7. 針對具有同盟分割區之 Essbase 立方體,將 QRYGOVEXECTIME 調整為大於對同盟分割區執行查詢的預期時間。請注意,QRYGOVEXECTIME 無法終止任何仍在自治式資料倉儲執行的要求。
  8. 開發環境測試與調整都完成之後,請使用上面的第 1 到第 7 步驟,將同盟分割區加到生產環境中。

註:

如果在建立同盟分割區時看到「無法儲存大綱」錯誤,請等待階段作業完成再重新整理瀏覽器。如果已建立同盟分割區,請在 SQL Developer 中進行驗證。如果已在 SQL Developer 中驗證,該同盟分割區便可供使用。如果未在 SQL Developer 中驗證,則需要修正模型,並且如上述步驟 3 所述進行逾時調整。

同盟分割區立方體的中繼資料預防措施

Essbase 有同盟分割區,在編輯立方體大綱時務必小心謹慎。若新增或重新命名成員,請確定中繼資料變更也會顯示在自治式資料倉儲的事實表格中。

如果 Essbase 大綱與自治式資料倉儲中的事實表格不同步,同盟分割區將會失效或無法正確運作。若要修正此問題,您需要刪除同盟分割區、變更大綱和事實表格,然後重新建立同盟分割區。

若同盟分割區失效,您可能會遇到 Essbase 錯誤(1040235):同盟分割區發出遠端警告開頭的錯誤。

下列類型的 Essbase 大綱變更會導致同盟分割區失效:

  • 新增、重新命名或移除維度

  • 新增、重新命名或移除旋轉維度中儲存的成員

  • 將任何成員從已儲存變更為動態

對於上方未提及的其他 Essbase 大綱變更類型 (例如,新增或重新命名非旋轉維度成員),則應該對事實表格中受影響的資料列進行對應的變更。否則,同盟分割區將無法正常運作。

如果您事先知道 Essbase 大綱中繼資料將會變更,最好先移除同盟分割區、進行大綱變更、更新事實表格,然後重新建立同盟分割區。

不過,如果 Essbase 中繼資料變更並導致分割區失效,請採取下列動作:

  1. 移除同盟分割區以及與其關聯的連線 (如果未使用),如移除同盟分割區中所述。

    自治式資料倉儲中的同盟分割區使用者綱要,手動刪除任何 Essbase 產生的表格和其他未與分割區一起移除的物件。

  2. 確定 Essbase 立方體已完成大綱變更。

  3. 再次建立事實表格。請參閱建立事實表格

  4. 重新建立自治式資料倉儲連線。這可以是全域連線 (位於 Essbase Web 介面中的主要來源圖示底下),或在專為該應用程式定義的來源中。請依照建立同盟分割區的連線中的指示操作。

  5. 重新建立同盟分割區,如建立同盟分割區中所述。

資料庫連線詳細資訊變更時該怎麼做

Essbase 用於同盟分割區的自治式資料倉儲連線詳細資訊已變更,您必須刪除並重新建立同盟分割區。

若在同盟分割區建立後發生下列任一事件,則必須刪除並重新建立同盟分割區:

如果您事先知道連線詳細資訊將會變更,最好在變更前移除同盟分割區,並在變更後再次建立同盟分割區。不過,如果連線變更並導致分割區失效,請採取下列動作:

修正無效的同盟分割區

  1. 移除同盟分割區以及與其關聯的連線 (如果未使用),如移除同盟分割區中所述。

    自治式資料倉儲中的同盟分割區使用者綱要,手動刪除任何 Essbase 產生的表格和其他未與分割區一起移除的物件。

  2. 重新建立自治式資料倉儲連線。這可以是全域連線 (位於 Essbase Web 介面中的主要來源圖示底下),或在專為該應用程式定義的來源中。請依照建立同盟分割區的連線中的指示操作。請務必測試並儲存該連線。

  3. 重新建立同盟分割區,如建立同盟分割區中所述。

  4. 若您持續看到連線錯誤,例如 Essbase 錯誤(1350012):嘗試連線至 OCI 失敗,請參閱 https://support.oracle.com/rs?type=doc&id=2925030.1

備份與回復同盟分割區應用程式

同盟分割區不會隨 Essbase 應用程式一起移轉。準備將您的應用程式與立方體移至其他伺服器或移轉至其他 Essbase 版本時,必須刪除同盟分割區,然後在新環境中重新建立該分割區。

備份同盟立方體的作業如下:

  1. 備份應用程式時不包含資料,但包含您可能需要的所有項目 (例如,組態特性、篩選條件、變數、計算命令檔和其他使用者自建物件)。若要這樣做,請使用 LCM 匯出 (或 Essbase Web 介面中的匯出 LCM 工作)。

  2. 備份事實表格。請參閱備份和回復自治式資料庫

  3. 從立方體刪除同盟分割區定義,請依照移除同盟分割區中的步驟操作。

從備份中回復同盟立方體的作業如下:

  1. 重新建立應用程式,請使用 LcmImport:回復立方體檔案 (或 Essbase Web 介面中的匯入 LCM 工作)。

  2. 如有需要,請回復自治式資料倉儲上的事實表格。

  3. 重新建立連線來連線至自治式資料倉儲。建議使用新的連線名稱以避免發生錯誤。

  4. 重新建立同盟分割區。