標籤:
正如它的名字所示(Business Model and Mapping Layer),商務邏輯層需要把物理層的資料來源以一種業務使用者的視角來重新組織物理層的各個資料來源(所謂的Mapping),同時在商務邏輯層裡,我們將 需要真正構建資料倉儲裡的星型模型,包括:
· 事實表
· 維表
· 維表的階層(hierarchy)
· 事實表度量(measure)來提供一個模型供展現層使用,所以在商務邏輯層,使用者需要同時具有技術的知識(資料倉儲星型模型),又需要有業務的視角(構 建一個對於業務而言有意義的星型模型)。我們先來看看業務模型層和它所對應的物理層的一個比較: 表單頂端 表單底端 表單頂端 表單底端 表單頂端 表單底端
表單頂端 表單底端 商務邏輯層的一個關鍵的定義是: Captures how users think about their business using their own vocabulary 需要注意的是,雖然業務模型層同樣都是來源於物理層的表和列,但是業務模型層更加強調以業務的觀點來看所有的資料。其中Mapping一詞意味著使用者需要 匹配業務模型層的資料和物理層的資料,一個從商務邏輯層看起來的一個邏輯表,其資料來源可以是由物理層的多個資料來源組成;而同樣的,一個業務模型層的一列 資料,也可以被匹配成物理層不同資料來源的多列資料群組合而成:比如假設我們在物理層有三個不同的子系統分別對應不同的地區(華北,華南,華東),則如果我們 在業務模型層要定義全國的一個銷售額總和的時候,應該就需要把三個子系統的銷售額的列在業務模型層相加,才能夠形成一個針對全國的分析模型。這個正是 BIEE架構設計裡一個非常靈活的地方。當然,如果我們已經在物理層組織好了一個簡單的星型模型資料(使用物理層建模),其實我們可以簡單地把它從物理層 拖動到商務邏輯層就可以形成一個可用的商務邏輯層的星型模型原型(業務模型層的星型模型會自動延用物理層的建模),然後只需要把這個業務模型拖入到展現層 裡,我們就能夠做出一個最簡單的可供查詢的資料模型:是的,在最簡單的模型下一切都很簡單,我們甚至可以不去建立維表的層次關係,就可以形成一個馬上可以 投入使用的模型,只是在沒有建立維表的層次關係的時候,我們只能做一些一般性的報表,但是報表出來的結果沒有辦法下轉(商業智慧報表的一種典型操作)!業 務模型層的一個最常用的詞是logical,如果說我們在物理層都是使用表,表的主鍵外鍵,表的列的概念的話,那麼我們在業務模型層都要在物理層的名詞前 加上logical一詞,如:
· Logical Table
· Logical Column
· Logical Primary Key
· Logical Join ·
。。。等等!這些詞表明的真正含義是指業務模型層,我們的所謂的表,列等概念都是可以定義出來的(可以和物理層的概念並非是一對一的關係),比如業務模型 層的一個表由多個物理層的表組成等等,對於業務模型層的這種定義和修改不會影響物理層的各種定義所以我們甚至可以在現有的一些業務系統裡拿出不同的資料, 在物理層或者業務模型層定義出所需要的分析模型,但是同時這種定義根本不會影響到源系統的任何資料。
BIEE入門(三)業務模型層