我的一畝三分地

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            7 隨筆 :: 0 文章 :: 17 評論 :: 0 Trackbacks
             數據倉庫很難寫清楚的,試試看能不能以亂彈的方式將它寫的通俗易懂,老少咸宜。
             數據倉庫就是把不同數據庫的數據收集到一起,加以整理,主要用于做長期趨勢分析 。也就是說我們需要 從數據庫中把數據取過來,加工下(規整下),存儲起來,分析展現。下面就按這個過程亂彈下數據倉庫。
            首先要考慮我們需要什么數據,換句話說那些數據是值得集成的,那些數據是值得保留的。當然這些需要客戶說了算,看他們關心那些數據,關心那些指標,關心數據的時間,希望以怎樣的方式展現。比如需要按月統計各類型手機用戶話費類型比率。可以知道客戶需要有話費類型、用戶類型、話費金額、時間這些數據及數據的關系。這樣就有了簡單的數據模型,知道我們需要什么數據,數據之間的簡單關系了。當然也有人叫它企業數據模型,這個模型是有數據倉庫特點的模型即面向主題的、與時間相關的。為了不落下不嚴密的口舌暫叫“簡單企業模型”。
            有了簡單企業模型,我們就按圖索驥從業務系統中獲取數據了,可是你在A系統中叫張三、B系統中叫zhangsan、C系統中叫7。把這些數據整進數據倉庫也沒有辦法利用,沒有統一的標準,怎么查詢分析呀。這下應該看出來了需要轉換數據,按照統一的標準轉換。說的通俗些需要統一的數據字典或編碼標準,將各個業務系統的數據轉換成為標準的數據。當然實際情況復雜的多,需要將生數據進行轉碼,轉類型甚至合并,補缺等等最終整成能用的數據或者叫熟數據,加載入目的數據庫。源數據可能是xml、平面文件,oracle,foxbase等,沒有遇不到只有想不到。這個數據轉換、清洗、加載、抽取的過程就叫ETL。
            可是問題又出現了,在業務系統關心的是細節數據,如某人當月每次通話記錄,在數據倉庫關心的匯總數據,如某類人當月通話次數。不能按照正常的數據庫設計進行數據倉庫的設計,因為很多數據是決策層面的人不需要,而且數據量一大存儲就大,存儲大查詢就慢,查詢速度一慢數據倉庫縱然有白好也一無是處了。于是就演變出來雪花模型和星型模型。星型模型是目前采用較多的模型??梢赃@樣理解星型模型的角就是group by的條件,中心的數據就是聚合的結果。將數據按照星型模型存儲起來,作為數據倉庫的數據。
            現在就差數據展現分析部分了,只要數據對客戶來說沒有什么用。數據倉庫有多種應用如靜態報表、多維查詢、即席查詢、數據挖掘等等??梢院唵蔚恼J為我把多個維度一拼就是一個分析,比如我把聯通、北京、用戶數一組合就認為聯通北京的用戶數是多少?當然也可以一拆開聯通、用戶數認為聯通的用戶數是多少?當然你也許已經知道了這就是數據立方,我只是從不同的角度看這個世界,看到的層面不一樣。
             為了文章通俗,減少了數據倉庫一些核心方面,比如數據質量、元數據管理、數據安全、ODS、數據集市等介紹。 希望對大家有用。 
            
          posted on 2007-06-27 23:11 西北狼 閱讀(1411) 評論(4)  編輯  收藏 所屬分類: 開發技術

          評論

          # re: 亂彈數據倉庫 2007-06-28 17:50 yangtse_ye
          收益  回復  更多評論
            

          # re: 亂彈數據倉庫 2007-06-28 22:27 紫貓
          只顧著看了,才想起來要支持下。這種方式很好啊,繼續啦,這樣了解就更多了。  回復  更多評論
            

          # re: 亂彈數據倉庫 2007-07-12 07:41 davy
          寫得好。  回復  更多評論
            

          # re: 亂彈數據倉庫 2007-07-26 12:37 hemu1190
          不錯,繼續吧!關注中  回復  更多評論
            

          主站蜘蛛池模板: 惠安县| 阿瓦提县| 漳州市| 阳东县| 平山县| 茌平县| 壤塘县| 佛冈县| 醴陵市| 汝州市| 佛山市| 商城县| 江永县| 额济纳旗| 井冈山市| 漳平市| 偏关县| 宜川县| 云阳县| 磐安县| 宝坻区| 泸州市| 游戏| 广南县| 宁晋县| 平潭县| 乌苏市| 司法| 闽侯县| 竹山县| 蒲江县| 河源市| 定日县| 宜良县| 岐山县| 井研县| 樟树市| 乐安县| 泰顺县| 大同县| 刚察县|