當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普服務(wù)體系 > 泛普博客
基于多維模型的獨(dú)立型數(shù)據(jù)集市數(shù)據(jù)轉(zhuǎn)換
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
來源:泛普軟件數(shù)據(jù)集市為用戶提供部門級(jí)的決策分析依據(jù),其數(shù)據(jù)的可用性及其數(shù)據(jù)質(zhì)量直接影響了管理者的決策。數(shù)據(jù)轉(zhuǎn)換的成功與否制約著決策者能否制訂出行之有效的決策。所以數(shù)據(jù)轉(zhuǎn)換是用戶是否能得到高質(zhì)量信息進(jìn)行決策分析的前提。
針對(duì)獨(dú)立型數(shù)據(jù)集市的特點(diǎn),本文在基于維度的數(shù)據(jù)轉(zhuǎn)換模型基礎(chǔ)上本文詳細(xì)討論了基于維度模型的獨(dú)立型數(shù)據(jù)集市數(shù)據(jù)轉(zhuǎn)換的內(nèi)容,并進(jìn)一步研究了多段數(shù)據(jù)轉(zhuǎn)換及管道數(shù)據(jù)轉(zhuǎn)換的轉(zhuǎn)換策略。
1 數(shù)據(jù)轉(zhuǎn)換內(nèi)容
獨(dú)立型的數(shù)據(jù)集市由于其抽取的數(shù)據(jù)來自O(shè)LTP(on line transaction processing,聯(lián)機(jī)事務(wù)處理)環(huán)境,因而多種類型數(shù)據(jù)源決定了獨(dú)立型數(shù)據(jù)集市的數(shù)據(jù)轉(zhuǎn)換將是ETL(Extract Transform Cleansing and Load,抽取、轉(zhuǎn)換、清洗、裝載)過程中最為復(fù)雜的一部分。數(shù)據(jù)集市以多維模型建模的特點(diǎn)決定了數(shù)據(jù)轉(zhuǎn)換過程可分四個(gè)主要的過程:粒度劃分、維度表的數(shù)據(jù)轉(zhuǎn)換、事實(shí)表的數(shù)據(jù)轉(zhuǎn)換及數(shù)據(jù)清洗。具體數(shù)據(jù)基本轉(zhuǎn)換過程如圖1所示。
1.1 代理關(guān)鍵字生成
代理關(guān)鍵字通常被分配成整型,并且每增加一個(gè)新鍵,會(huì)將該鍵加1。若數(shù)據(jù)轉(zhuǎn)換是在關(guān)系數(shù)據(jù)庫的管理系統(tǒng)中時(shí),可以通過創(chuàng)建一個(gè)序列來完成代理鍵的分配。當(dāng)數(shù)據(jù)抽取基于文件而不是基于數(shù)據(jù)流形式時(shí),代理關(guān)鍵字的分配邏輯同樣也很簡單:在沒有使用數(shù)據(jù)庫序列時(shí),應(yīng)該將當(dāng)前(或者下一個(gè))代理關(guān)鍵字保存到指定的元數(shù)據(jù)中,以避免在每次為新鍵分配鍵值時(shí)都必須執(zhí)行max(代理關(guān)鍵字)+1操作。
圖1 數(shù)據(jù)轉(zhuǎn)換過程
為了能在數(shù)據(jù)集市中使用代理關(guān)鍵字,必須借助于元數(shù)據(jù)的使用,即在元數(shù)據(jù)庫中同時(shí)為每個(gè)維度維護(hù)一個(gè)永久性的主交叉引用表。交叉引用表連同屬性概況表一起,跟蹤某個(gè)時(shí)間點(diǎn)分配給一個(gè)操作型關(guān)鍵字的代理關(guān)鍵字。一旦維度表反映最新的抽取,那么此維度表將被元數(shù)據(jù)中心發(fā)布給使用該維度的所有數(shù)據(jù)中心。
1.2 基本數(shù)據(jù)轉(zhuǎn)換
對(duì)于維度表來說有兩種最基本的轉(zhuǎn)換:簡單數(shù)據(jù)轉(zhuǎn)換和一般數(shù)據(jù)轉(zhuǎn)換。前者包括數(shù)據(jù)類型、格式、日期/時(shí)間及維度標(biāo)簽修飾等數(shù)據(jù)轉(zhuǎn)換;后者包括字段的解碼、單個(gè)字段的分離、匯總及度量單位的轉(zhuǎn)化等稍微復(fù)雜的數(shù)據(jù)轉(zhuǎn)換。維度轉(zhuǎn)換往往要借助于在元數(shù)據(jù)庫中建立的由源數(shù)據(jù)到目標(biāo)數(shù)據(jù)的映射表才能完成。
1.3 代理關(guān)鍵字處理
代理關(guān)鍵字的處理主要是指在事實(shí)表轉(zhuǎn)換的過程中用代理關(guān)鍵字取代操作源關(guān)鍵字。此時(shí),源系統(tǒng)中的關(guān)鍵字將不再被使用(演變成退化維度),而用代理關(guān)鍵字進(jìn)行取代。在取代過程中,需要使用最新代理關(guān)鍵字分配表。針對(duì)每個(gè)維度對(duì)事實(shí)表進(jìn)行一次遍歷,就可以快速地將遇到的每個(gè)源系統(tǒng)關(guān)鍵字用最新的代理關(guān)鍵字替換掉。
需要注意的是,在裝載歷史數(shù)據(jù)時(shí),需要獨(dú)立的處理來執(zhí)行代理關(guān)鍵字的查找,因?yàn)椴恍枰獙⒆钚碌漠?dāng)前值映射到歷史數(shù)據(jù)。此時(shí),需要?jiǎng)?chuàng)建代理關(guān)鍵字的查找邏輯,并且在生成事實(shí)記錄時(shí)應(yīng)用該邏輯。這就意味著,當(dāng)事實(shí)的事務(wù)處理日期介于代理鍵的有效開始日期與有效結(jié)束日期之間時(shí),就應(yīng)該查找代理關(guān)鍵字。
1.4 反規(guī)范化和重規(guī)范化
為了提高數(shù)據(jù)的質(zhì)量,需要某些情況下從業(yè)務(wù)角度出發(fā)對(duì)數(shù)據(jù)庫執(zhí)行反規(guī)范化處理。在數(shù)據(jù)集市中,通常最好將這些實(shí)體轉(zhuǎn)軸成若干獨(dú)立列,以便簡化各種變量的計(jì)算。
在轉(zhuǎn)換過程中進(jìn)行規(guī)范化處理也很常見,例如,傳統(tǒng)OLTP系統(tǒng)中,存在很多反規(guī)范化的用于報(bào)告生成的大型平面文件,此時(shí),要將列數(shù)據(jù)縱向分割成行形式,且每一行代表來源的系統(tǒng)報(bào)告中一個(gè)月的情況,這時(shí)所要做的轉(zhuǎn)換就是先獲取數(shù)據(jù),再將該數(shù)據(jù)從某個(gè)行逆向轉(zhuǎn)軸成某個(gè)日期列和相關(guān)數(shù)值,其中的每一行代表每個(gè)日期的情況。
1.5 參照完整性的處理
在數(shù)據(jù)轉(zhuǎn)換過程中,參照完整性是指對(duì)于事實(shí)表中的每個(gè)外鍵,在對(duì)應(yīng)維度表中都會(huì)存在一個(gè)記錄。因此,當(dāng)對(duì)事實(shí)表進(jìn)行轉(zhuǎn)換時(shí),若在事實(shí)表中存在的某一記錄信息,則與之相關(guān)的信息應(yīng)該在維度表中得到體現(xiàn)。參照完整性的處理方法主要包括:
(1)對(duì)事實(shí)表數(shù)據(jù)進(jìn)行質(zhì)量驗(yàn)收,應(yīng)該生成更多的行計(jì)數(shù)與參考腳注,以便與抽取統(tǒng)計(jì)值進(jìn)行比較;
(2)在代理關(guān)鍵字替代維表的主鍵以后,就應(yīng)該在事實(shí)表中選取合適的鍵作為外鍵,以確保該事實(shí)表與對(duì)應(yīng)的維度表之間建立了完整性參照關(guān)系;
(3)不能將空值用于事實(shí)表和維度表之間的連接操作,此時(shí)應(yīng)該先使用匿名的整型鍵來執(zhí)行連接操作。
2 多階段數(shù)據(jù)轉(zhuǎn)換
2.1 多階段數(shù)據(jù)轉(zhuǎn)換的基本概念
多階段數(shù)據(jù)轉(zhuǎn)換是通過對(duì)數(shù)據(jù)轉(zhuǎn)換過程中產(chǎn)生的臨時(shí)表進(jìn)行數(shù)據(jù)清洗,以及利用不同階段的檢查點(diǎn)對(duì)數(shù)據(jù)進(jìn)行各種完整性及正確性檢查的策略。在進(jìn)行數(shù)據(jù)轉(zhuǎn)換時(shí),需要每一過程分解為不同的SQL操作,并創(chuàng)建不同的、臨時(shí)的階段表,為每個(gè)轉(zhuǎn)換步驟存儲(chǔ)結(jié)果。獨(dú)立型數(shù)據(jù)集市的數(shù)據(jù)源來自于OLTP數(shù)據(jù)庫、遺留系統(tǒng)或者各種外部文檔,ETL程序把這些不同類型數(shù)據(jù)源中的數(shù)據(jù)抽取后生成了中間文件,為數(shù)據(jù)轉(zhuǎn)換提供處理數(shù)據(jù),該策略為整個(gè)轉(zhuǎn)換過程提供了檢查點(diǎn),使得整個(gè)過程更加容易監(jiān)視和重新啟動(dòng)。
多階段數(shù)據(jù)轉(zhuǎn)換除了可以較容易的根據(jù)用戶的定制實(shí)現(xiàn)各種類型的數(shù)據(jù)轉(zhuǎn)換,在數(shù)據(jù)集市的DBMS與數(shù)據(jù)源的DBMS是異構(gòu)并且需要XML文件作為中間媒介的情況下,可以利用多階段數(shù)據(jù)轉(zhuǎn)換將抽取生成的XML文件轉(zhuǎn)換成與數(shù)據(jù)集市同構(gòu)的DMBS,然后再進(jìn)行其它階段的轉(zhuǎn)換。多階段數(shù)據(jù)轉(zhuǎn)換大多是在數(shù)據(jù)庫之外,在成功的完成數(shù)據(jù)轉(zhuǎn)換和清洗工作后,新數(shù)據(jù)被載入到數(shù)據(jù)庫。
2.2 維度表轉(zhuǎn)換
針對(duì)本文提出的轉(zhuǎn)換過程,獨(dú)立型數(shù)據(jù)集市的數(shù)據(jù)轉(zhuǎn)換的過程可以劃分為兩個(gè)父階段(維度表轉(zhuǎn)換和事實(shí)表轉(zhuǎn)換)和一個(gè)基本過程(粒度劃分),每一個(gè)父階段又可以劃分為若干小的子階段,如維度表轉(zhuǎn)換就可以再劃分為代理關(guān)鍵字生成、數(shù)據(jù)清洗、基本數(shù)據(jù)轉(zhuǎn)換三個(gè)子階段。而基本數(shù)據(jù)轉(zhuǎn)換根據(jù)不同需要又可分為簡單轉(zhuǎn)換和一般數(shù)據(jù)轉(zhuǎn)換(參見1.2中的內(nèi)容)。維度表多階段轉(zhuǎn)換具體實(shí)現(xiàn)策略如圖2所示。
圖2 多階段維度表轉(zhuǎn)換策略
- 1期中考多所學(xué)校開設(shè)誠信考場
- 2杭州警方受理并調(diào)查
- 3泛普OA實(shí)現(xiàn)流程定義、權(quán)限控制、表單定義
- 4那么OA工作流系統(tǒng)未來3-6年將如何演繹?
- 52011年中國經(jīng)濟(jì)幾大懸疑
- 6國家安全部副部長馬建受調(diào)查
- 7photoshop 圖像處理
- 8日本連鎖業(yè)發(fā)展的創(chuàng)新與優(yōu)勢
- 9【行業(yè)新聞】連鎖經(jīng)營的優(yōu)勢分析
- 10探究OA系統(tǒng)在ERP合同和財(cái)會(huì)業(yè)務(wù)上的數(shù)據(jù)整合
- 11網(wǎng)絡(luò)管理維護(hù)技巧:如何解決堵塞網(wǎng)絡(luò)通信的問題
- 12成泳教育告訴你教師培訓(xùn)的意義
- 13對(duì)遼寧多家雪場的調(diào)查:寒假送孩子滑雪成時(shí)尚
- 14泛普軟件在新一代智能移動(dòng)OA軟件領(lǐng)域開拓了一片新天地
- 15新商業(yè)模式:差異化出擊
- 16新疆青河成立調(diào)查組調(diào)查“狗頭金”歸屬權(quán)問題
- 17客戶溝通管理之道
- 18呼叫中心助推電子商務(wù)的發(fā)展
- 19創(chuàng)業(yè)者應(yīng)找準(zhǔn)市場定位
- 20李厚霖新年童話送許愿網(wǎng)友鉆戒——微博營銷案例
- 21投資收購的競爭情報(bào)應(yīng)用
- 22企業(yè)家的契約精神
- 23OA系統(tǒng)要求每一個(gè)計(jì)劃都是可以落實(shí)成具體任務(wù)的計(jì)劃
- 24網(wǎng)絡(luò)管理員維護(hù)技巧 巧妙排除網(wǎng)絡(luò)連接故障
- 25OA辦公系統(tǒng)為企業(yè)用戶提供更多優(yōu)秀的工具和平臺(tái)
- 26攜程發(fā)布春節(jié)出游調(diào)查 出境游意愿高于境內(nèi)游
- 27OA系統(tǒng)的價(jià)格并不等同于OA系統(tǒng)的品質(zhì)
- 28經(jīng)銷商快速成長策略
- 29縱觀當(dāng)前OA市場,我們可以簡單地把OA系統(tǒng)劃分
- 30在中國悶聲發(fā)大財(cái)?shù)?2個(gè)秘訣
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓