Fact table 是由多筆實際交易的資料進行 summary 組成,每筆資料都會包含複合的主鍵項(Multipart Key),
及量值(Measure),即每一筆資料除了包含數個 id 型態的欄位之外,
還會包含至少一個數字型態的欄位(量值:總計、平均、最大值、最小值等等),
Fact table 的資料量非常大,為了效率考量,通常不會對它作正規化。
ex. 日期ID, 台北ID, 飲料ID, 價格總計 -> 為一筆資料
2. Dimension tables 維度表格
Dimension 與 Fact 最大的差別在於維度表格內存放的是文字性、階層性及類別性資料,
作為查詢語言之條件,其屬性描述 Fact table 中每一個列(欄位)的資訊。
Dimension tables 有時候也會進一步作正規化,再切成兩個以上的關聯表,
並以外來鍵相互連接,維度表格資料會少於事實表格,可能只有上百或上千個資料列。
ex. 地區維度: 台北, 台中, 台南...等
3. Star schema 星狀架構
一個 Fact 會關聯到多個 Dimension,且Dimension彼此之間沒有關聯(Dimension沒有正規化)。
4. Snowflake schema 雪花狀架構
一個 Fact 會關聯到多個 Dimension,且Dimension會延伸出相關的Dimension(Dimension有正規化)。
沒有留言:
張貼留言