資料倉儲中心管理手冊

執行倉儲步驟

資料倉儲中心可讓您將步驟分類為下列三個模式,藉此管理步驟的開發:開發、測試或生產。模式決定您是否可以變更表格,以及資料倉儲中心是否可以根據排程來執行步驟。

開發倉儲步驟

當您第一次建立步驟時,步驟處於開發模式。在此模式下,您可以變更任何步驟內容。資料倉儲中心尚未在目標倉儲中建立步驟的表格。您無法執行步驟來測試它,資料倉儲中心也不會根據它的自動式排程來執行步驟。

測試倉儲步驟

您執行步驟以將資料移入目標。然後,您可以驗證結果是否和您預期的一樣。

執行步驟之前,您必須將步驟提昇為測試模式。

在步驟內容中,您可以指定資料倉儲中心將要建立步驟的目標表格。當您將步驟提昇為測試模式時,資料倉儲中心會建立目標表格。因此,將步驟提昇為測試模式之後,您只能進行對目標表格沒有破壞性的變更。例如,當目標表格的相關步驟處於測試模式時,您可以將直欄新增到此目標表格中,但無法除去目標表格中的直欄。

將步驟提昇為測試模式之後,您即可分別執行每個步驟。資料倉儲中心不會根據步驟的自動式排程來執行步驟。

將步驟提昇為測試模式

若要提昇步驟,請:

  1. 在步驟上按一下滑鼠右鍵。
  2. 按一下模式 --> 測試

    確認視窗會問您是否要儲存該程序。按一下

    資料倉儲中心即會開始建立目標表格,並開啟進度視窗。

若要驗證已建立目標表格,請:

  1. 如果「DB2 控制中心」未開啟,請按一下工具 --> 控制中心,以從主資料倉儲中心視窗開啟「DB2 控制中心」。
  2. 展開物件樹狀結構,直至看到倉儲資料庫為止。
  3. 展開資料庫。
  4. 展開表格資料夾。

    表格清單會顯示於視窗的「內容」窗格中。

  5. 驗證目標表格確實在清單中。

測試步驟

若要測試步驟,請:

  1. 在「程序模型」的步驟上按一下滑鼠右鍵。
  2. 按一下測試

    步驟即會開始執行。資料倉儲中心發出步驟的 SQL 陳述式,或啟動倉儲程式或轉換程式。步驟停止執行之後,畫面中會出現確認視窗。

  3. 從主資料倉儲中心視窗,按一下資料倉儲中心 --> 工作進度

    如此即會開啟「工作進度」視窗。


    Figure db2tu044 not displayed.

    使用「工作進度」視窗,可以監督資料倉儲中心中所有正在執行或已排程之步驟的進度。您應該會看到正在執行之步驟的項目。步驟執行時,處於移入中狀態。處理程序應該會順利完成。不過,如果處理失效:

    「工作進度」視窗的相關資訊,請參閱線上說明中的"工作進度--概觀"。

  1. 選取此步驟。
  2. 按一下日誌

    畫面中會出現「日誌檢視器」視窗。

  3. 尋找訊息類型為「執行期錯誤」的日誌記錄。
  4. 選取一個記錄。
  5. 按一下明細

    畫面中會出現「日誌檢視器明細」視窗。

    如果錯誤 RC1 欄位值為 8410,則程式是在處理期間失效。您可以查看程式的線上說明中「回覆碼」區段內錯誤 RC2 欄位的值,此值為程式傳回的值。

    轉換程式錯誤訊息與資料倉儲中心中的其它訊息不同:

    建議:定期清除輸出日誌表格,讓它們不會包含已作廢的日誌資料。

  6. 查看程式的日誌檔,以取得有關程式處理的詳細資訊。 這些程式會在 VWS_LOGGING 環境變數所指定的目錄中。在 Windows NT 和 OS/2 上,VWS_LOGGING 的預設值是 x:\vwswin\logging\,在 UNIX 上,是 /var/IWH。

    VWS_LOGGING 的值是「架構」筆記本追蹤日誌目錄欄位的預設值。如果您變更追蹤日誌目錄欄位的值,資料倉儲中心會將日誌檔寫入您指定的新目錄中,但 VWS_LOGGING 的值不會變更。

    請先查看 trcppp.log 檔。對於某些錯誤而言,這個文件會指出一些用以確定問題的額外日誌檔。

    有一個常出現的問題,是由於將 Windows NT 代理程式當作系統程序來執行,而不是當作使用者程序來執行而造成的。當倉儲代理程式當作系統程序來執行時,因為該程序沒有使用者 ID,所以它沒有連接到網路磁碟機或產品的授權。這個問題的症狀包括代理程式找不到倉儲程式 (在「日誌檢視器明細」視窗內錯誤 RC2 = 128 或錯誤 RC2 = 1),或代理程式無法執行程式的起始設定。

    如果倉儲代理程式是當作使用者處理來執行,則倉儲代理程式會擁有使用者的特性,包括可以存取網路磁碟機或使用者已獲授權的程式。

    如果要避免發生這些問題,請執行下列步驟:

    1. 執行下列步驟,變更要當作使用者處理來執行的倉儲伺服器、倉儲日誌程式和倉儲代理常駐程式服務:
      1. 按兩下 Windows NT 控制台資料夾中的服務圖示。
      2. 停止服務。
      3. 選取服務,然後按一下啟動
      4. 按一下此帳戶
      5. 按一下此帳戶欄位之後的 ... 按鈕,以選取使用者 ID。

        使用者 ID 必須擁有 Windows NT 的管理權限,以及任何必要的網路磁碟機的權限。

      6. 輸入兩次使用者 ID 的通行碼。
      7. 按一下確定
      8. 重新啟動服務。
    2. 如果您是在使用所提供的 OLAP 伺服器程式,請驗證 DB2 OLAP 或 Essbase 從屬站已安裝於執行這個程式之代理程式的某個本端磁碟機。
    3. 如果您是在使用所提供的 OLAP 伺服器程式,請驗證 ARBORPATH 變數 (設定於 Essbase 從屬站或管理者) 已指定執行這個程式之代理程式的某個本端磁碟機,並指定為系統變數。

若要驗證步驟處理程序的結果,請:

  1. 在「程序模型」視窗的目標表格上按一下滑鼠右鍵。
  2. 按一下範例內容

    此時資料倉儲中心即會顯示表格中的資料子集。

您也可以從「DB2 控制中心」檢視資料的範例。在目標表格上按一下滑鼠右鍵,再按一下範例內容

排程倉儲程序

若要排程資料移動和轉換,您可以使用資料倉儲中心排程功能,或者也可以搭配使用資料倉儲中心和另一個提供排程功能的產品。

使用資料倉儲中心的排程功能

在資料倉儲中心中,有兩種方法可讓您啟動步驟。您可以指定執行完一個步驟之後啟動另一個步驟。或者您可以排程步驟,以在所指定的日期與時間啟動。您可以合併這兩個方法,來執行程序中的步驟。您可以排程第一個步驟在指定的日期與時間執行。然後,再指定執行完一個步驟之後啟動另一個步驟,接著指定執行完第二個步驟之後啟動第三個步驟,以此類推。

指定步驟按順序執行

如果步驟使用由其它步驟轉換的資料,您可以排程步驟以在其它步驟完成處理程序之後啟動該步驟。

若要指定步驟按順序執行,請:

  1. 在「程序模型」視窗的作業流程圖示上按一下滑鼠按鈕:
    Figure arrowcol not displayed.
  2. 按一下下列其中一個圖示:

    成功時
    指出只有前一個步驟順利執行時才啟動步驟。

    完成時
    指出當前一個步驟順利完成或執行失敗時啟動步驟。

    失敗時
    指出只有前一個步驟失敗時才啟動步驟。

    相關資訊,請參閱線上說明中的"排程步驟"。

  3. 按一下要先執行的步驟。
  4. 按住滑鼠按鈕,並將滑鼠拖曳到在第一個步驟之後要執行的步驟。
  5. 釋放滑鼠按鈕。

    在畫布上兩個步驟之間會顯示一個箭頭,代表作業流程。

  6. 為處理程序順序中的每一個步驟,重複步驟35

    此時步驟即會按您指定的次序執行。

例如,在下列圖表中,「載入個人背景資訊資料」步驟最先執行。當它完成執行時,會執行「選取地理資料」步驟。當「選取地理資料」步驟完成執行時,會執行「結合市場資料」步驟。
Figure db2tu045 not displayed.

排程步驟以在所指定的日期與時間啟動

您可以排程步驟,以在所指定的日期與時間啟動。當您排程步驟時,您可以指定步驟執行時的一或多個日期與時間。您也可以指定步驟只執行一次或按照所指定的時間間隔 (例如每星期六) 執行。

若要排程步驟,以在所指定的日期與時間啟動,請:

  1. 在步驟上按一下滑鼠右鍵,再按一下排程

    如此即會開啟「排程」筆記本。

  2. 按一下排程標籤。
  3. 間隔清單中,按一下您想要執行步驟的間隔。

    預設選項為每週 .

  4. 頻率清單中,按一下頻率和日。

    預設選項為每星期五

  5. 開始日期與時間欄位中,選取步驟第一次執行的日期與時間。第一次執行之後,步驟將會按您指定的間隔和頻率執行。

    預設選項為當日晚上 10:00。

  6. 結束欄位中,指定結束排程的時間:無限期還是在特定日期。

    預設選項為排程將無限期執行。

  7. 按一下新增

    排程即會新增到排程清單中。

  8. 按一下確定

    如此即會建立所指定的排程。

在下列範例中,「載入個人背景資訊資料」步驟將每年執行一次,開始日期為 2000 年 1 月 26 日。該排程將會無限期執行。
Figure db2tu046 not displayed.

搭配使用資料倉儲中心與其它產品的排程功能

您在定義步驟時可指定它的移入方式。您可以將步驟定義為外部移入(P),這表示資料倉儲中心會建立該目標表格,但卻由另一個程式來移入它。另一個程式會被排定時程,並在資料倉儲中心之外執行。

例如,您將步驟定義為自外部移入。然後便可以使用 DPropR 的排程功能來移入目標表格。

將步驟提昇為生產模式

若要啟動您建立的排程和作業流程鏈結,必須將步驟提昇為生產模式。生產模式指出這些步驟處於其最終格式。在生產模式中,您只能變更不會影響該步驟產生之資料的設定值。您可以變更步驟的排程、處理程序選項 (移入類型除外) 或說明性資料。但無法變更步驟的參數。

若要將步驟提昇為生產模式,請:

  1. 在步驟上按一下滑鼠右鍵。
  2. 按一下模式 > 生產

    此時資料倉儲中心即會開啟進度視窗。

從資料倉儲中心之外啟動步驟

您可以使用外部觸發程式,不透過資料倉儲中心管理介面來啟動步驟。外部觸發程式是一個會呼叫資料倉儲中心的倉儲程式。

您無法從外部觸發程式執行程序。

外部觸發程式由兩個元件組成:XTServer 和 XTClient。XTServer 與倉儲伺服器安裝在一起。XTClient 與全部代理程式類型的倉儲代理程式安裝在一起。

若要使用外部觸發程式,您必須在倉儲伺服器工作站和代理程式端都已安裝了 JDK 1.1.7 或更新的版本。

啟動外部觸發伺服器

對外部觸發從屬站發出指令之前,您必須先啟動外部觸發伺服器。

啟動外部觸發從屬站的語法如下:

XTServer
 
>>-Java--XTServer--TriggerClientPort---------------------------><
 

TriggerServerPort
為外部觸發從屬站指定的 TCP/IP 埠。

此值通常是 11004。

啟動外部觸發從屬站

啟動外部觸發從屬站的語法如下:

XTClient
 
>>-Java--XTClient--ServerHostName--ServerPort--DWCUserID--DWCUserPassword-->
 
>----StepName--Command--+------------------------+---+-----------+->
                        '-WaitForStepCompletion--'   '-RowLimit--'
 
>--------------------------------------------------------------><
 

ServerHostName
安裝倉儲伺服器所在工作站的 TCP/IP 主電腦名稱。

請指定一個完整的主電腦名稱。

ServerPort
為倉儲伺服器指定的 TCP/IP 埠。

此值通常是 11004。

DWCUserID
具有資料倉儲中心作業專用權的使用者 ID。

DWCUserPassword
使用者 ID 的通行碼。

StepName
要啟動之步驟的名稱。

這個名稱是區分大小寫的。如果名稱內含空格,請用雙引號 ("") 括住它,例如 "Corporate Profit"。

Command
下列其中一個值:

1
移入

執行外部觸發程式時使用的使用者 ID 必須與包含該步驟的程序在相同的倉儲群組中。

2
提昇為測試模式

執行外部觸發程式時使用的使用者 ID 必須與包含該步驟的程序在相同的倉儲群組中。

3
提昇為生產模式

執行外部觸發程式時使用的使用者 ID 必須與包含該步驟的程序在相同的倉儲群組中。

4
降級為測試模式

執行外部觸發程式時使用的使用者 ID 必須與包含該步驟的程序在相同的倉儲群組中。

5
降級為開發模式

執行外部觸發程式時使用的使用者 ID 必須與包含該步驟的程序在相同的倉儲群組中。

WaitForStepCompletion
選用項目。此參數指出外部觸發程式是否要傳回步驟處理程序的結果。請選擇下列其中一個值:

1
等待步驟的完成,如果步驟順利完成,則傳回 0,如果步驟失敗,則傳回錯誤。

0 或空白
不等待步驟的完成。

RowLimit
選用項目。此參數指出外部觸發程式是要擷取來源表格中的全部列還是幾列。您可以使用此參數,快速測試從大型資料庫擷取資料的步驟。請選擇下列其中一個值:

0 或空白
提取全部列

n
提取 n

此參數只在步驟處於測試模式時才有效。

範例

例如,您想要用 db2admin 的使用者 ID 和 db2admin 的通行碼,啟動 Corporate Profit 步驟,而外部觸發程式是在 dwserver 主電腦上。您可以發出下列指令:

java XTClient dwserver 11004 db2admin db2admin "Corporate Profit" 1

狀態

當您執行外部觸發程式時,它會傳送訊息給倉儲伺服器。如果訊息順利傳送,則外部觸發程式傳回 0 回覆碼。

如果您指定了 WaitForStepCompletion 的參數值為 1,則外部觸發程式會等到步驟完成執行後,再傳回那次執行的回覆碼。

如果外部觸發程式無法傳送訊息給倉儲伺服器,則會傳回非零的回覆碼。當出現通信錯誤或身份驗證失敗時,回覆碼會與資料倉儲中心函數發出之對應的字碼相符。資料倉儲中心作業碼的相關資訊,請參閱 DB2 Universal Database Messages and Reason Codes


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]