建立連線和資料來源

Essbase 建立外部來源資料連線之前,必須先向系統管理員取得連線詳細資訊,例如主機名稱、使用者名稱、密碼以及任何其他服務證明資料。

建立全域連線

建立全域連線 (可供多個應用程式存取) 的作業如下:

  1. 服務管理員身分登入 Essbase Web 介面

  2. 按一下來源


    Essbase Web 介面中的「來源」圖示

  3. 按一下建立連線,然後選取您要連線的來源。Essbase 隨附的來源與版本列在認證表的資料庫一節中 (請參閱平台 SQL 表格)。如果您偏好使用自己即將上傳的 JDBC 驅動程式,請參考建立一般 JDBC 驅動程式的連線與資料來源以取得詳細資訊。


    含下列連線選項的「建立連線」按鈕:Oracle Database、Essbase、檔案、Spark、DB2、SQL Server、MySQL 及 JDBC

  4. 完成連線詳細資訊並儲存連線。接著,建立一或多個使用該連線的資料來源。輸入詳細資訊會因來源類型而異。

建立應用程式層級連線

建立應用程式層級連線 (僅可供該應用程式存取) 的作業如下:

  1. 應用程式管理者身分或以具備所指定應用程式之應用程式管理權限的超級使用者身分登入 Essbase Web 介面

  2. 應用程式頁面上,按一下應用程式名稱右邊的「動作」功能表,然後按一下檢查

  3. 按一下來源頁籤。


    Sample 應用程式之應用程式偵測器中的「來源」頁籤。顯示的是「連線」區域,其中已經建立兩個連線:OracleDB 和 Essbase2。

  4. 按一下建立連線,然後選取您要連線的來源。Essbase 隨附的支援來源與版本列在認證表的資料庫一節中 (請參閱平台 SQL 表格)。如果您偏好使用自己即將上傳的 JDBC 驅動程式,請參考建立一般 JDBC 驅動程式的連線與資料來源以取得詳細資訊。

  5. 完成連線詳細資訊並儲存連線。接著,建立一或多個使用該連線的資料來源。輸入詳細資訊會因來源類型而異。

建立存取 Oracle Database 的連線和資料來源

定義 Essbase 與 Oracle Database 之間的連線和資料來源。

如果適用,請使用下列其中一個子主題而不是此主題:

  1. Essbase 的「來源」頁面中,按一下連線
    或者,若要定義應用程式層級 (而非全域) 的連線和資料來源,請在「應用程式」頁面而不是「來源」頁面著手。從應用程式名稱右邊的「動作」功能表中啟動偵測器,然後按一下來源。本主題中使用的範例是在 Sample Basic 上定義的應用程式層級連線。
  2. 按一下建立連線並選取 Oracle Database
  3. 輸入連線名稱、主機、連接埠號碼、使用者名稱以及密碼。當您輸入使用者名稱時,請輸入不包含角色的 Oracle Database 使用者名稱。選取 SID (伺服器 ID) 或服務,然後輸入伺服器詳細資訊。

    用於建立 Oracle Database 連線的「建立連線」對話方塊。名稱:OracleDB。主機:198.51.100.165。連接埠:1521。使用者:essbase。密碼:(已遮蔽)。已勾選 SID,且值為 orcl。描述:Connection to Oracle Database

  4. 按一下測試以驗證連線,如果成功,請按一下建立
  5. 確認連線已順利建立並顯示在連線清單中。
    接下來,您將建立 Oracle Database 連線的資料來源。
  6. 依序按一下資料來源建立資料來源
  7. 連線下拉式方塊中,選取剛才建立的連線名稱;例如 SAMPLE.OracleDB。應用程式層級連線會以應用程式名稱作為首碼,格式為 appName.connectionName
  8. 提供資料來源的名稱;例如 OracleDB_DS。
  9. 視需要輸入資料來源的描述;例如 SAMPLE_BASIC_TABLE on Oracle Database
  10. 在「查詢」欄位中提供適當的 SQL 查詢,用以選取要在此資料來源提供的 Oracle Database 資料。

    用於建立 Oracle Database 之資料來源的「建立資料來源」對話方塊「一般」步驟。連線:SAMPLE.OracleDB,名稱:OracleDB_DS,描述:SAMPLE_BASIC_TABLE on Oracle Database,查詢:select * from SAMPLE_BASIC_TABLE

  11. 按一下下一步。如果查詢 Oracle Database 區域的 SQL 敘述句正確,您就會見到填入的查詢資料欄。

    用於建立 Oracle Database 之資料來源的「建立資料來源」對話方塊「資料欄」步驟。索引:1,名稱:DIMENSION_PRODUCT,類型:字串。已依序列出數個其他名稱的其他資料欄,部分類型為字串,部分類型為雙精度浮點數。

  12. 將所有數值資料欄都變更為「雙精度浮點數」,然後按一下下一步
  13. 變更任何其他的來源特定參數 (如果適用),然後按一下下一步。如需瞭解如何使用參數,請參閱實作資料來源的參數
  14. 複查預覽面板。您應該會見到從 Oracle Database 擷取資料欄資料的 SQL 查詢結果。

    用於建立 Oracle Database 之資料來源的「建立資料來源」對話方塊「預覽」步驟。顯示來自 Oracle Database 的預覽資料,其中值在資料欄名稱下方。

  15. 如果預覽看起來正確,請按一下建立以完成建立資料來源。

建立 Oracle Autonomous Data Warehouse 連線和資料來源

定義 Essbase 與自治式資料倉儲之間的連線和資料來源。

如果您將在 Essbase無伺服器自治式資料倉儲之間建立同盟分割區,請使用下列主題而不是此主題:建立同盟分割區的連線

若要建立全域連線,您必須具備服務管理員角色。若要建立應用程式層級連線,您必須具備應用程式的使用者角色,再加上應用程式管理者權限

  1. Essbase 的「來源」頁面中,按一下連線
    若要定義應用程式層級 (而非全域) 的連線和資料來源,請從「應用程式」頁面 (而非「來源」頁面) 開始作業。從應用程式名稱右邊的「動作」功能表中啟動偵測器,然後按一下來源
  2. 按一下建立連線並選取 Oracle Database
  3. 使用切換開關選取自治式

    「建立連線」對話方塊的圖像,其中顯示如何建立 Essbase 與 Oracle Autonomous Data Warehouse 的連線

  4. 輸入連線名稱。
  5. 選取服務名稱。
  6. 如有需要,可拖放公事包檔案,或是按一下公事包檔案欄位來上傳公事包檔案。

    如果您是使用已提供給您的連線 (儲存區域連線),則不需要上傳公事包,因為它應該已經在儲存區域中。選取儲存區域資料庫選項。


    已選取「儲存區域資料庫」選項

    如果您需要上傳公事包,可以從 Oracle Cloud Infrastructure 的「自治式資料倉儲管理」頁面中選取下載從屬端證明資料 (公事包),以取得公事包檔案。

  7. 輸入您的自治式資料倉儲使用者名稱和密碼,並視需要輸入描述。
  8. 按一下測試以驗證連線,如果成功,請按一下建立

    如果收到連線錯誤,您可能需要展開進階選項以調整連線集區大小下限與上限。


    「集區大小下限」為 5、「集區大小上限」為 50 的「進階選項」

    請參閱 Universal Connection Pool Developer's Guide 中的 About Controlling the Pool Size in UCP

  9. 確認連線已順利建立並顯示在連線清單中。
  10. 接下來,您將建立自治式資料倉儲連線的資料來源。依序按一下資料來源建立資料來源
  11. 從「連線」下拉式方塊中選取剛才建立的連線名稱;例如 EssbaseADW。若為應用程式層級資料來源,請選取應用程式層級的連線名稱,格式為 appName.connectionName
  12. 提供資料來源的名稱;例如 ADW_DS。
  13. (選擇性) 輸入資料來源的描述;例如,自治式資料倉儲資料來源。
  14. 查詢欄位中提供適當的 SQL 查詢,用以選取要在此資料來源提供的自治式資料倉儲資料。
  15. 按一下下一步。如果查詢自治式資料倉儲區域的 SQL 敘述句正確,您就會見到填入的查詢資料欄。
  16. 變更任何其他的來源特定參數 (如果適用),然後按一下下一步
  17. 複查預覽面板。您應該會見到從自治式資料倉儲擷取資料欄資料的 SQL 查詢結果。
  18. 如果預覽看起來正確,請按一下建立以完成建立資料來源。

建立存取其他立方體的連線和資料來源

定義兩個 Essbase 立方體 (位於不同執行處理) 之間的連線和資料來源。

  1. Essbase 的「來源」頁面中,按一下連線
    或者,若要定義應用程式層級 (而非全域) 的連線和資料來源,請在「應用程式」頁面而不是「來源」頁面著手。從應用程式名稱右邊的「動作」功能表中啟動偵測器,然後按一下來源。本主題中使用的範例是在 Sample Basic 上定義的應用程式層級連線。
  2. 按一下建立連線並選取 Essbase
  3. 輸入連線名稱;例如 Essbase2
  4. 輸入「主機」與「連接埠」資訊,或勾選使用 URL 方塊。連線資訊可由您的服務管理員提供。

    用於建立與另一個 Essbase 執行處理之連線的「建立連線」對話方塊。名稱:Essbase2。已勾選「使用 URL」。URL 是 https://192.0.2.1:443/essbase/agent。已勾選「使用 URL」,因此「主機」與「連接埠」空白。使用者:admin。密碼:(已遮蔽)。描述:Connection to Essbase instance 2

    如果您使用 URL,請使用尋找 URL 格式。尋找 URL 是由服務管理員所提供的 URL,以 /agent 為結尾。例如:

    https://192.0.2.1:443/essbase/agent
  5. 按一下測試以驗證連線,如果成功,請按一下建立
  6. 確認連線已順利建立並顯示在連線清單中。
    接下來,您將建立 Essbase 連線的資料來源。
  7. 依序按一下資料來源建立資料來源
  8. 連線下拉式方塊中,選取剛才建立的連線名稱。
  9. 輸入資料來源的名稱和選擇性的描述。
  10. 選取將用於此資料來源的應用程式和資料庫。
  11. 提供有效的 MDX 查詢,用以選取此資料來源提供的立方體資料。

    用於建立另一個 Essbase 執行處理之資料來源的「建立資料來源」對話方塊「一般」步驟。連線:SAMPLE.Essbase2,名稱:Essbase2_DS,描述:Connection to Essbase instance 2,應用程式:Sample,資料庫:Basic,MDX 查詢:Select {Market} on columns, {Product} on rows from Sample.basic

  12. 按一下下一步。如果查詢遠端立方體的 MDX 語法正確,您應該會見到已填入所查詢的資料欄。
  13. 將所有數值資料欄都變更為「雙精度浮點數」,然後按一下下一步

    用於建立另一個 Essbase 執行處理之資料來源的「建立資料來源」對話方塊「資料欄」步驟。索引:1,名稱:Product,類型:字串。索引:2,名稱:Market,類型:字串

  14. 變更任何其他的來源特定參數 (如果適用),然後按一下下一步
  15. 複查預覽面板。您應該會見到從其他立方體擷取資料欄資料的 MDX 查詢結果。

    用於建立另一個 Essbase 執行處理之資料來源的「建立資料來源」對話方塊「預覽」步驟。顯示來自 Essbase 的預覽資料。

  16. 如果預覽看起來正確,請按一下建立以完成建立資料來源。

建立存取資料檔的連線和資料來源

定義 Essbase 與來源資料檔之間的連線和資料來源。

  1. 將來源資料檔上傳至 Essbase 的檔案目錄。
    若要使用範例來源資料檔進行此作業流程,可以將 UserDetails.csv 從檔案目錄的儲藏庫區段,複製並貼到您應用程式的檔案目錄 (或參考它而不移動)。這是一個有 22 位使用者的資料儲存區域,裡面有他們關聯的國家、成本中心、幣別、經理、公司、業務單位以及辦公室。
  2. Essbase 的「來源」頁面中,按一下連線
    或者,若要定義應用程式層級 (而非全域) 的連線和資料來源,請在「應用程式」頁面而不是「來源」頁面著手。從應用程式名稱右邊的「動作」功能表中啟動偵測器,然後按一下來源。本主題中使用的範例是在 Sample Basic 上定義的應用程式層級連線。
  3. 按一下建立連線,然後選取檔案
  4. 輸入連線的名稱;例如 UserDetails
  5. 提供來源資料檔的目錄路徑。
  6. 輸入選擇性描述;例如 CSV file of user details

    用於建立與 Essbase 伺服器目錄中檔案之連線的「建立連線」對話方塊。名稱:UserDetails,路徑:/gallery/Technical/Filters/UserDetails.csv,描述:CSV file of user details

  7. 按一下測試以驗證連線,如果成功,請按一下建立
  8. 確認連線已順利建立並顯示在連線清單中。
    接下來,您將建立檔案連線的資料來源。
  9. 依序按一下資料來源建立資料來源
  10. 連線下拉式方塊中,選取剛才建立的連線名稱;例如 UserDetails。
  11. 輸入資料來源的名稱和選擇性的描述。
  12. Essbase 會進行偵測並輸入來源資料的詳細資訊;例如,是否含有標頭資料列以及是否以逗號分隔。按一下下一步

    用於建立 Essbase 伺服器上檔案之資料來源的「建立資料來源」對話方塊「一般」步驟。連線:SAMPLE.UserDetails,名稱:userDetails_DS,描述:User details repository。Essbase 偵測到 CSV 有標頭記錄,因此勾選了「標頭資料列」。Essbase 偵測到檔案是以逗號分隔,因此「分隔符號」為「逗號」

  13. 您應該會見到填入檔案來源內容的資料欄。將所有數值資料欄都變更為「雙精度浮點數」,然後按一下下一步
  14. 如果預覽看起來正確,請按一下建立以完成建立資料來源。
如果要更新來源檔案中繼資料 (例如,新增資料欄),必須重新建立資料來源。

建立一般 JDBC 驅動程式的連線與資料來源

您可以使用此工作流程運用上傳至 Essbase 伺服器的驅動程式,讓 Essbase 連線至任何 JDBC 資料來源。

如果您是 Essbase 部署管理員,可以將 Essbase 設定成使用您上傳至 Essbase 伺服器機器的偏好驅動程式。Oracle 已使用 Oracle 驅動程式測試 Essbase JDBC 連線。若要使用其他廠商的 JDBC 驅動程式,請查看驅動程式文件,以瞭解有關指定您 JDBC 資料來源之 URL 和證明資料的需求。如需任何與效能有關的步驟,請參閱廠商的 JDBC 文件。

註:

請確定您搭配 Essbase 使用的 JDBC 驅動程式遵照 setFetchSize 方法來控制處理結果集時使用的記憶體。為了最佳化資料載入與維度建置處理作業的效能,Essbase 每次網路呼叫會擷取 1000 筆記錄。

Essbase 設定成使用一般 JDBC 驅動程式的作業如下:

  1. 使用 SSH 連線至 Essbase 伺服器機器。

  2. 在伺服器執行處理上的 <Essbase 產品本位目錄> 中建立 drivers 目錄。

    路徑會區分大小寫,因此請確保 drivers 全部都是小寫字母。

  3. 從您的廠商網站下載要使用的 JDBC 驅動程式 JAR。

    Essbase 支援的 Oracle Database JDBC 驅動程式為 ojdbc8.jar

    如果您使用自治式資料倉儲,就必須下載包含 Oracle JDBC Thin 驅動程式與配套 JAR 的完整存檔 (ojdbc8-full.tar.gz)。

  4. 將 JDBC 驅動程式 JAR 上傳到 Essbase 執行處理的 drivers 目錄。

    針對每個資料庫驅動程式,請只上傳一個版本到 drivers 目錄。例如,請勿同時上傳 sqljdbc41.jarsqljdbc42.jar,否則 Essbase 將使用較舊的版本 (因為它會優先顯示在 CLASSPATH 中)。

    如果您使用自治式資料倉儲,請將存檔 (ojdbc8-full.tar.gz) 解壓縮,然後將所有內容直接搬移至 drivers 目錄 (而不是子資料夾)。

  5. 建立與 JDBC 驅動程式的連線。

    1. Essbase Web 介面中,

      • 建立全域連線:在「來源」頁面上,按一下連線
      • 建立應用程式層級連線:從應用程式名稱右邊的「動作」功能表中,啟動偵測器並按一下來源
    2. 按一下建立連線,然後選取 JDBC

      為了尋找 JDBC 驅動程式,Essbase 會查看 drivers 資料夾。如果沒有找到任何 jar 檔案,Essbase 就會在您測試連線時傳回「找不到類別」(或無法載入驅動程式) 錯誤。

    3. 建立連線畫面中,

      1. 提供 JDBC 連線的名稱。例如 OrclJDBC。

      2. 在 URL 欄位中,提供 JDBC 連線字串。例如 jdbc:oracle:thin:@myserver:1521:orcl。從 JDBC 提供者取得 JDBC 連線字串。

        以上的語法格式只適用於 Oracle Database。如果您使用其他提供者,請參閱一般 JDBC 驅動程式的其他連線範例

      3. 針對「使用者」與「密碼」欄位,輸入獲授權存取資料庫的使用者證明資料。

      4. 在「驅動程式」欄位中,提供 JDBC 驅動程式的完整類別名稱。例如 oracle.jdbc.driver.OracleDriver


      JDBC 驅動程式連線的「建立連線」對話方塊。名稱:OrclJDBC,URL:jdbc:oracle:thin:@myserver:1521:orcl,使用者:essbase,密碼:(已遮蔽),驅動程式:oracle.jdbc.driver.OracleDriver,描述:My Oracle JDBC 8 connection

      針對 Oracle 驅動程式,請使用下列語法準則來指定 URL:

      • 若要使用唯一識別資料庫的 Oracle 系統 ID (SID),請使用 jdbc:oracle:thin:@<host>:<port>:<SID> 語法。例如:

        jdbc:oracle:thin:@myhost:1521:orcl
      • 如果 Oracle Database 已向監聽器註冊,您可以在 URL 中運用簡短語法 jdbc:oracle:thin:@<host>:<port>/<servicename> 使用「服務名稱」而不是 SID。範例:

        jdbc:oracle:thin:@myhost.example.com:1521/orcl.esscs.myhost.example.com
      • 以下範例使用「服務名稱」搭配完整語法。

        jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(host=myhost.example.com)(protocol=tcp)(port=1521))(CONNECT_DATA=(SERVICE_NAME=orcl.example.com)))
      • 如果您使用自治式資料倉儲,則必須在 URL 語法中包含指定公事包路徑的 TNS_ADMIN 環境變數。公事包可以在 Essbase 伺服器機器上的任何位置,但您用來提供完整路徑的語法必須類似:jdbc:oracle:thin:@<database_service_name>?TNS_ADMIN=<walletpath>

        Linux 範例

        jdbc:oracle:thin:@adwsql_low?TNS_ADMIN=/scratch/oracle_home/dist/essbase/drivers/adwConn

        Windows 範例

        jdbc:oracle:thin:@adwsql_low?TNS_ADMIN="C:\\Oracle123\\Middleware\\Oracle_Home\\essbase\\drivers\\adwConn"

        OCI 部署範例

        jdbc:oracle:thin:@adwsql_low?TNS_ADMIN=/u01/data/essbase/catalog/users/firstname.lastname@example.com/adwconn

      以上的範例只適用於 Oracle Database。如果您使用其他提供者,請參閱一般 JDBC 驅動程式的其他連線範例

    4. 按一下測試以驗證連線,如果成功,請按一下建立

    5. 確認連線已順利建立並顯示在連線清單中。

  6. 透過一般 JDBC 驅動程式建立資料來源。

    1. 依序按一下資料來源建立資料來源

    2. 連線下拉式方塊中,選取剛才建立的連線名稱;例如 SAMPLE.OrclJDBC。應用程式層級連線會以應用程式名稱作為首碼,格式為 appName.connectionName

    3. 提供資料來源的名稱;例如 OrclJDBC_DS。

    4. 視需要輸入資料來源的描述;例如 SAMPLE_BASIC_TABLE on Oracle Database

    5. 在「查詢」欄位中提供適當的 SQL 查詢,用以選取要在此資料來源提供的資料。

    6. 按一下下一步。如果查詢表格的 SQL 敘述句正確,您應該會見到已填入所查詢的資料欄。

    7. 將所有數值資料欄都變更為「雙精度浮點數」,然後按一下下一步

    8. 變更任何其他的來源特定參數 (如果適用),然後按一下下一步。如需瞭解如何使用參數,請參閱實作資料來源的參數

    9. 複查預覽面板。您應該會見到從外部來源擷取資料欄資料的查詢結果。

    10. 如果預覽看起來正確,請按一下建立以完成建立資料來源。

一般 JDBC 驅動程式的其他連線範例

這些範例說明使用 Essbase 連線至非 Oracle JDBC 資料來源,以及使用您上傳至 Essbase 伺服器的驅動程式。

以下範例適用於非 Oracle 來源。若要建立使用一般 JDBC 驅動程式的 Oracle Database 連線,請參閱建立一般 JDBC 驅動程式的連線與資料來源

DB2 的 JDBC 連線範例

建立連線畫面中,


JDBC 驅動程式連線的「建立連線」對話方塊。名稱:DB2conn,URL:jdbc:db2://myhostname02.example.com:50000/TBC,使用者:myDB2User,密碼:(obscured),驅動程式:com.ibm.db2.jcc.DB2Driver,描述:使用 JDBC 驅動程式的 DB2 連線

  1. 提供 JDBC 連線的名稱。例如,DB2conn。

  2. 在 URL 欄位中,提供 JDBC 連線字串。例如, jdbc:db2://myhostname02.example.com:50000/TBC。從 JDBC 提供者取得 JDBC 連線字串。

  3. 針對「使用者」與「密碼」欄位,輸入獲授權存取資料庫的使用者證明資料。

  4. 在「驅動程式」欄位中,提供 JDBC 驅動程式的完整類別名稱。例如,com.ibm.db2.jcc.DB2Driver

MySQL 的 JDBC 連線範例

建立連線畫面中,


JDBC 驅動程式連線的「建立連線」對話方塊。名稱:MySQLconn,URL:jdbc:mysql://myhostname03.example.com:3306/tbc,使用者:MySQLUsr,密碼:(obscured),驅動程式:com.mysql.jdbc.Driver,描述:使用 JDBC 驅動程式的 MySQL 連線

  1. 提供 JDBC 連線的名稱。例如,MySQLconn。

  2. 在 URL 欄位中,提供 JDBC 連線字串。例如, jdbc:mysql://myhostname03.example.com:3306/tbc。從 JDBC 提供者取得 JDBC 連線字串。

  3. 針對「使用者」與「密碼」欄位,輸入獲授權存取資料庫的使用者證明資料。

  4. 在「驅動程式」欄位中,提供 JDBC 驅動程式的完整類別名稱。例如,com.mysql.jdbc.Driver

SQL Server 的 JDBC 連線範例

建立連線畫面中,


JDBC 驅動程式連線的「建立連線」對話方塊。名稱:MSSQLConn,URL:jdbc:sqlserver://myhostname04.example.com:1433,使用者:MySQLUsr,密碼:(obscured),驅動程式:com.microsoft.sqlserver.jdbc.SQLServerDriver,描述:使用 JDBC 驅動程式的 SQL Server 連線

  1. 提供 JDBC 連線的名稱。例如,MSSQLConn。

  2. 在 URL 欄位中,提供 JDBC 連線字串。例如, jdbc:sqlserver://myhostname04.example.com:1433。從 JDBC 提供者取得 JDBC 連線字串。

  3. 針對「使用者」與「密碼」欄位,輸入獲授權存取資料庫的使用者證明資料。

  4. 在「驅動程式」欄位中,提供 JDBC 驅動程式的完整類別名稱。例如,com.microsoft.sqlserver.jdbc.SQLServerDriver

Teradata 的 JDBC 連線範例

建立連線畫面中,


JDBC 驅動程式連線的「建立連線」對話方塊。名稱:TeraDconn,URL:jdbc:teradata://myhostname05.example.com/DBS_PORT=1025,使用者:TeraUsr,密碼:(obscured),驅動程式:com.teradata.jdbc.TeraDriver,描述:使用 JDBC 驅動程式的 Teradata 連線

  1. 提供 JDBC 連線的名稱。例如,TeraDconn。

  2. 在 URL 欄位中,提供 JDBC 連線字串。例如, jdbc:teradata://myhostname05.example.com/DBS_PORT=1025。從 JDBC 提供者取得 JDBC 連線字串。

  3. 針對「使用者」與「密碼」欄位,輸入獲授權存取資料庫的使用者證明資料。

  4. 在「驅動程式」欄位中,提供 JDBC 驅動程式的完整類別名稱。例如,com.teradata.jdbc.TeraDriver