由於 WebSphere® Business Monitor 會在其資料服務元件中使用多個資料庫,因此您務必瞭解在資料庫抄寫期間,系統如何在這些資料庫間轉換時間戳記。
WebSphere Business Monitor 拓蹼有許多可能的配置。 您必須知道設定這些拓蹼的方式,以達到使用時間戳記想要的結果。相關的伺服器有包含「執行時期」資料庫的伺服器、包含「歷程」資料庫的伺服器、以及安裝 WebSphere Portal 的伺服器 (這是 DB2® Alphablox 的位置)。 如果結果是以格林威治標準時間 (GMT) 報告所有的時間,則「執行時期」資料庫、「歷程」資料庫以及 WebSphere Portal 機器的系統時鐘都必須設為 GMT。所有時間戳記及維度報告便會以 GMT 呈現。
如果您要以美東標準時間 (EST) 報告所有的時間,則所有伺服器應設為 EST。如果您要用戶端位於不同時區,則建議設定是將所有伺服器設為 GMT。如果整個 WebSphere Portal 的用戶端設定不是 GMT,則使用時間戳記的報告 (此時間戳記與 WebSphere Portal 的設定相關) 和執行維度分析的報告之間便會出現落差。這些報告將以 GMT 為基礎。 相關技術明細如下。
「狀態」資料庫中的時間戳記直欄會儲存為 long Java™ 資料 型態 (根據 GMT 的序列化 Java 時間戳記)。當這些時間戳記在三個資料庫中移動時, 在「狀態」和「執行時期」資料庫之間執行 ETL 步驟期間,時間戳記會從這些 Java Long 轉換成實際的 DB2 時間戳記。 此變更是使用 Java 型 UDF 將 long 轉換為時間戳記,並將時間戳記資料類型傳回至 DB2 來完成。此時,時間戳記便會根據管理「執行期間」資料庫的伺服器時鐘設定,來進行轉換。若此系統時鐘設為 GMT, 則這些時間戳記會轉換為 GMT;否則,會根據系統時鐘的時區偏移及日光節約時間偏移來進行轉換。它們會以相對於該時區的 DB2 來儲存,而非以 GMT 儲存。DB2 會提供特殊登錄以擷取時區偏移,並將其套用到時間戳記上。
移動到「歷程」資料庫的時間戳記不會經過轉換,因此, 「歷程」資料庫會以「執行時期」系統相同的時區,來儲存時間戳記。這表示「執行時期」資料庫及「歷程」資料庫伺服器必須使用相同的時區設定。於 ETL 期間,這些時間戳記 會與 DIM_TIME 表格作比較。DIM_TIME 表格本身沒有設定時區,但當其與資料庫伺服器聯結時,將會使用伺服器的時區設定。因此,在整個 DIM_TIME 表格對映過程中,系統會假設查閱的 DIM_TIME 及時間戳記與「歷程」資料庫伺服器的時區 (可能不為 GMT) 相對,來完成所有對映。
管理 WebSphere Portal 的伺服器,也必須與「執行時期」及「歷程」資料庫伺服器位於相同的時區。目前,當儀表板直接查詢時間戳記直欄時 (不使用時間維度),目前的架構會假設「執行時期」及「歷程」資料庫的時區與儀表板伺服器的時區相同。時間戳記會轉換回 Java 時間戳記,並且 WebSphere Portal 會假設資料庫伺服器時間戳記與其本身位於 相同的時區,並根據這些設定將時間戳記轉換回 GMT。用戶端機器可能 會有不同的時區設定。只要 WebSphere Portal 正確地將時間戳記轉換為 GMT,就不會產生問題。只有當 WebSphere Portal 和「執行時期」及「歷程」伺服器使用相同的時區設定時,它才會正確地進行轉換。
由於 WebSphere Business Monitor 中「時間維度」的設計,前一項目沒有如此直接明確。在 ETL 階段期間,針對「維度」分析,會有數個「時間維度」的鍵結。執行這項分析的人員必須了解,不論用戶端時區設定為何,這些報告仍是以「執行時期」與「歷程」資料庫伺服器的時區為依據,並會進行從 GMT 到這些伺服器當地時間的轉換。即使「時間維度」的精確程度只有到以天為單位,時區的不同可能會變更 發生特定記錄的日期。