BIEE入門(二)物理層的定義

BIEE入門(二)物理層的定義

使用BIEE的第一步是使用admintool去建立一個多維數據模型,而建立多維數據模型的第一步則是建立物理層,請注意因爲BIEE本身並不存儲數據,所以所謂BIEE物理層的意義是需要在BIEE裏建立各個源系統的描述: ·         如源系統的類型(各種關係數據庫或各種多維數據庫) ·         源系統的連接方式(指定所對應的源系統的連接信息,如用戶名,密碼,端口等) ·         以及導入源系統的數據的定義(源系統裏表的結構,主外鍵關係等)定義物理層的方式是從file-》import。。。-》from database然後通過嚮導選擇正確的數據庫類型並輸入連接信息。在最簡單的時候,這樣就可以完成整個物理層的定義了,接着可以繼續進行邏輯層的定義工作,但是其實物理層還是有一些額外的配置值得交代。物理層的額外配置數據源額外的物理層配置的第一個地方就是關於數據源的屬性,因爲BIEE被設計用於連接各種各樣的數據源,而每個數據源的特性都是不一樣的,比如哪怕同樣是關係數據庫,Oracle和DB2的很多特性就不一樣,爲了能夠充分發揮一個特定的數據源的能力,BIEE的物理層數據源裏允許人爲配置數據源所支持的各種額外特性,如下圖: 窗體頂端 窗體底端通過這樣的配置,BI Server將可以充分使用不同數據源的各種能力,生產數據源所支持的特性的SQL來提高處理效率,但是對於配置這些屬性還是要小心,因爲如果配置了數據源不能支持的屬性,則在針對該數據源查詢的時候將會返回錯誤!連接池物理層第二個需要說明的是:在import的時候,源系統的大部分數據結構和主外鍵信息都會自動地輸入到Repository裏,而物理層通過一個連接池的定義來和源系統連接,BI Server使用連接池的定義和源系統進行連接,這個“連接池”和一般的應用服務器的連接池定義有相似之處,除了同樣可以: ·         定義最大連接數 ·         連接idle時間 ·         交易隔離類型(如髒讀,序列化等)還有一個有意思的地方是,可以定義連接數據源所需要執行的額外腳本,或者在執行查詢之前和查詢之後都可以定義需要額外執行的SQL語句,如下圖(點擊查看大圖): 窗體頂端 窗體底端這樣就可以在每次查詢之前或之後去執行一些特定的SQL語句,從而提供了更多的可能性。物理層的表物理層的第三個需要說明的地方是關於物理層表的定義:物理層表的定義對應着數據源的真正的表,除了可以把源系統的表的各種定義屬性導入到物理層,BIEE也提供了在物理層定義源系統所不存在的各種關係的重新定義,如定義源系統所不存在的主外鍵關係來爲星型模型做準備,還有一個特性是直接和BI Server的緩衝區直接相關,就是BI Server可以定義緩衝區,當第一次查詢的時候數據可以緩衝中BI Server的緩衝區裏,第二次查詢將不再把查詢發到數據源,而是可以直接使用緩衝區的數據,這樣將能夠有效地減少對於數據源的查詢壓力和提高查詢性能,特別是對一些更新沒這麼快的數據源而言是一個非常好的選擇,如下圖: 窗體頂端 窗體底端從這裏你可以看到,其實BIEE的設計有很多地方還是非常好的!另外,也可以定義一個表使用SQL或者存儲過程來生成,而不一定非要是一個實際存在的物理表。最後需要對物理層進行說明的是關於表和表之間的關係:  我們都知道爲了構建星型模型,在事實表和維表之間存在主外鍵關係是必要的,所以首先需要檢查我們需要分析的源系統裏的維表是否有主鍵(如果沒有可以在物理層裏定義),然後還要通過物理關係圖定義他們之間的外鍵關係來構建一個星型模型,如下圖: 窗體頂端 窗體底端這個定義主要是通過一個類似畫板的東西上進行劃線來形成,這樣就完成了物理層的定義。  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章