我們為某個程序創建的特定的數據庫一般稱為事務型數據庫(Transaction Database), 它Data Warehouse(DW)還是有很大差別的. 1. 事務數據庫幫助人們執行活動,而數據倉庫幫助人們做計划。例如,事務數據庫可能顯示航班的哪些座位是空的,這樣旅客可以進行預定。而數據倉庫用於展示空座率情況的歷史信息,以讓航班管理員決定在未來是否要調度航班。 2. 事務數據庫關注細節,而數據倉庫關注高層次的聚集。例如,一個大人只想購買最流行的兒童圖書而不關心它的庫存情況。但負責圖書在書架上排列的管理員也關心圖書的銷售情況和變化趨勢。這之間的不同的隱含區別在於數據倉庫中的數據通常都是數值類型,它可用於匯總。 3. 事務數據庫通常為特定的程序而設計,而數據倉庫用於整合不同來源的數據。例如訂單處理程序——數據庫會包含每筆訂單的折扣信息,但不會包含產品的成本超支情況。相應地產品管理程序會包含詳細的成本信息但不會包含銷售折扣。但可以把這兩樣信息組合到一個數據倉庫中,你就可以計算產品的實際銷售利潤。 4. 事務數據庫關注現在,而數據倉庫關注於歷史。例如一個銀行帳戶,每一次事務——即每次的存款與取款都會改變帳戶余額的值,但事務系統很少會維護歷史余額。但在數據倉庫中,你可以存儲很多年的事務數據(可能被匯總的),還會存儲余額快照。這樣允許你把當前值與歷史進行比較。在進行決策時,可以查看歷史趨勢。 5. 事務數據庫是可變的,這很容易理解。但數據倉庫是穩定的;它的信息會以固定的間隔進行更新(可能是每月,每星期或每小時),而且理想情況下,更新只會為新的時間段添加新值,而不會改變先前存儲的值。 6. 事務數據庫必須提供對詳細信息的快速獲取和更新,而數據倉庫必須對高匯總信息的快速獲取或更新。所以事務數據庫的設計優化與數據倉庫的設計優化可能不同。而且,以管理目的查詢一個事務數據庫生成報表可以會導致該事務程序運行性能下降