




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、基于數(shù)據(jù)倉庫數(shù)據(jù)集成1.1基于數(shù)據(jù)倉庫的數(shù)據(jù)集成目標(biāo)數(shù)據(jù)倉庫是一種典型的數(shù)據(jù)復(fù)制方法。該方法將各個(gè)數(shù)據(jù)源的數(shù)據(jù)復(fù)制到同一處,即數(shù)據(jù)倉庫。用戶則像訪問普通數(shù)據(jù)庫一樣直接訪問數(shù)據(jù)倉庫,滿足管理人員的決策需要。1.2基于數(shù)據(jù)倉庫的數(shù)據(jù)集成理論基礎(chǔ)1.2.1數(shù)據(jù)倉庫數(shù)據(jù)倉庫的定義:數(shù)據(jù)倉庫是在企業(yè)管理和決策中面向主題的、 集成的、與時(shí)間相關(guān)的、 不可修改的數(shù)據(jù)集合,用于支持管理層的決策過程。數(shù)據(jù)倉庫的有4個(gè)基本屬性:主題性,集成性,時(shí)變性,只讀性。數(shù)據(jù)倉庫是在數(shù)據(jù)庫已經(jīng)大量存在的情況下,為了進(jìn)一步挖掘數(shù)據(jù)資源和決策需要而產(chǎn)生的。數(shù)據(jù)倉庫是一個(gè)環(huán)境,而不是一件產(chǎn)品同,提供用戶用于決策支持的當(dāng)前和歷史數(shù)據(jù)
2、, 這些數(shù)據(jù)在傳統(tǒng)的操作數(shù)據(jù)型數(shù)據(jù)庫中很難或者不能得到。數(shù)據(jù)倉庫技術(shù)是為了有效地把操作型數(shù)據(jù)集成到統(tǒng)一的環(huán)境中,以提供決策型數(shù)據(jù)訪問的各種技術(shù)與模塊的總稱。所做的一切都是為了讓用戶更快、更方便地查詢所需要的信息,提供決策支持。1.2.2數(shù)據(jù)倉庫與傳統(tǒng)數(shù)據(jù)庫的對比數(shù)據(jù)倉庫雖然從數(shù)據(jù)庫發(fā)展而來的,但是兩者在許多方面都存在著相當(dāng)大的差異,具體表現(xiàn)如下:數(shù)據(jù)庫與數(shù)據(jù)倉庫對比表對比內(nèi)容數(shù)據(jù)庫數(shù)據(jù)倉庫數(shù)據(jù)內(nèi)容當(dāng)前值,歷史的、存檔的、歸納的、計(jì)算的數(shù)據(jù)數(shù)據(jù)目標(biāo)面向業(yè)務(wù)操作程序、重復(fù)處理面向主題域、管理決策分析應(yīng)用數(shù)據(jù)特性動(dòng)態(tài)尖化、按字段更新靜態(tài)、不能直接更新、只定時(shí)添加數(shù)據(jù)結(jié)構(gòu)高度結(jié)構(gòu)化、復(fù)雜、適合操作 計(jì)
3、算簡單、適合分析使用頻率高中到低數(shù)據(jù)訪問量每個(gè)事務(wù)只訪問少量記錄r有的事務(wù)可能要訪1可大重記錄響應(yīng)時(shí)間的要求以秒為單位計(jì)量以秒、分鐘,甚至小時(shí)為計(jì)量單位從內(nèi)容和設(shè)計(jì)的原則來講, 傳統(tǒng)的操作型數(shù)據(jù)庫是面向事務(wù)而設(shè)計(jì)的,數(shù)據(jù)庫中通常存儲(chǔ)在線交易數(shù)據(jù),設(shè)計(jì)時(shí)盡量避免冗余, 一般采用符合范式規(guī)則來設(shè)計(jì)。 而數(shù)據(jù)倉庫是面向 主題設(shè)計(jì)的,數(shù)據(jù)倉庫中存儲(chǔ)的一般是歷史數(shù)據(jù), 在設(shè)計(jì)時(shí)有意引入冗余, 采用反范式的方 式來設(shè)計(jì)。另一方面,從設(shè)計(jì)的目的來講,數(shù)據(jù)庫是為了捕獲數(shù)據(jù)而設(shè)計(jì), 而數(shù)據(jù)倉庫是為分析數(shù) 據(jù)而設(shè)計(jì),它的兩個(gè)基本元素是維表和事實(shí)表。 維是看問題的角度,維表是中存放的就是從 這些角度的定義;事實(shí)表里
4、存放著要查詢的數(shù)據(jù),同時(shí)有維的ID。數(shù)據(jù)倉庫并沒有嚴(yán)格的數(shù)據(jù)理論基礎(chǔ),也沒有成熟的基本模式,且更偏向于工程,具有強(qiáng)烈的工程性。通常按其關(guān)鍵技術(shù)部分分為數(shù)據(jù)的抽取、存儲(chǔ)與管理以及數(shù)據(jù)的表現(xiàn)等三個(gè)方面。1.2.3基于數(shù)據(jù)倉庫的數(shù)據(jù)集成設(shè)計(jì)理論1、主題的確認(rèn)面向主題性表示了數(shù)據(jù)倉庫中數(shù)據(jù)組織的基本原則,數(shù)據(jù)倉庫中的所有數(shù)據(jù)都是圍繞著某一主題展開的。數(shù)據(jù)倉庫的創(chuàng)建、使用都是圍繞著主題實(shí)現(xiàn)的。因此,我們必須了解如何按照決策分析 來抽取主題;所抽取的主題應(yīng)該包括那些數(shù)據(jù)內(nèi)容;這些數(shù)據(jù)內(nèi)容應(yīng)該如何組織。2、數(shù)據(jù)集成數(shù)據(jù)倉庫的集成性是指決策分析的要求, 將分散于各處的源數(shù)據(jù)進(jìn)行抽取、清洗、轉(zhuǎn)換、 加載等工作,
5、使數(shù)據(jù)倉庫中的數(shù)據(jù)具有集成性。 所以在設(shè)計(jì)數(shù)據(jù)倉庫時(shí), 應(yīng)該對這一過程工 具進(jìn)行詳細(xì)設(shè)計(jì),以便實(shí)現(xiàn)數(shù)據(jù)的集成。3、數(shù)據(jù)時(shí)變周期的選擇數(shù)據(jù)倉庫的時(shí)變,就是數(shù)據(jù)應(yīng)該隨著時(shí)間的推移而發(fā)生變化。盡管數(shù)據(jù)倉庫中的數(shù)據(jù)并不像業(yè)務(wù)數(shù)據(jù)庫那樣要反映業(yè)務(wù)處理的實(shí)時(shí)狀況,但是數(shù)據(jù)也不能長期不變,所以在設(shè)計(jì)數(shù)據(jù)倉庫時(shí)應(yīng)該選擇合適的主題數(shù)據(jù)更新時(shí)間,具體更新時(shí)間應(yīng)該根據(jù)具體的設(shè)計(jì)要求進(jìn)行設(shè)TEo4、數(shù)據(jù)集合數(shù)據(jù)倉庫的集合性意味著數(shù)據(jù)倉庫必須按照主題,以某種數(shù)據(jù)集合的形式存儲(chǔ)起來。目前數(shù)據(jù)倉庫所采用的數(shù)據(jù)集合方式主要是以多維數(shù)據(jù)庫方式進(jìn)行存儲(chǔ)的多維模式、以關(guān)系數(shù)據(jù)庫方式進(jìn)行存儲(chǔ)的關(guān)系模式或者以兩者相結(jié)合的方式進(jìn)行存儲(chǔ)的
6、混合模式。 1.2.4數(shù)據(jù)倉庫的體系結(jié)構(gòu)1、數(shù)據(jù)倉庫的概念結(jié)構(gòu)數(shù)據(jù)倉庫概念結(jié)構(gòu)數(shù)據(jù)倉庫在創(chuàng)建以后,首先要從數(shù)據(jù)源中抽取所需要的數(shù)據(jù)到數(shù)據(jù)準(zhǔn)備區(qū),在數(shù)據(jù)準(zhǔn)備區(qū)中經(jīng)過數(shù)據(jù)的凈化處理, 再加載到數(shù)據(jù)倉庫中, 最后再根據(jù)用戶的需求將數(shù)據(jù)發(fā)布到數(shù)據(jù) 集市/知識(shí)挖掘中。當(dāng)用戶使用數(shù)據(jù)倉庫時(shí),可以通過OLAP等數(shù)據(jù)倉庫應(yīng)用工具向數(shù)據(jù)集市/知識(shí)挖掘庫或者數(shù)據(jù)倉庫進(jìn)行決策查詢分析或者知識(shí)挖掘。2、虛擬數(shù)據(jù)倉庫結(jié)構(gòu)虛擬數(shù)據(jù)倉庫結(jié)構(gòu)在虛擬數(shù)據(jù)倉庫中并不需要從業(yè)務(wù)系統(tǒng)中抽取數(shù)據(jù)到新的數(shù)據(jù)存儲(chǔ)位置-數(shù)據(jù)倉庫中去。只是在用戶進(jìn)行數(shù)據(jù)倉庫的查詢操作時(shí),數(shù)據(jù)倉庫利用描述了業(yè)務(wù)系統(tǒng)中數(shù)據(jù)的位置和抽取數(shù)據(jù)算法的元數(shù)據(jù)直接從業(yè)務(wù)系
7、統(tǒng)中抽取查詢的數(shù)據(jù)進(jìn)行概括、聚合操作后,將最終結(jié)果提供給用戶。3、數(shù)據(jù)集市結(jié)構(gòu)數(shù)據(jù)集市結(jié)構(gòu)4、單一數(shù)據(jù)倉庫結(jié)構(gòu)單一數(shù)據(jù)倉庫結(jié)構(gòu)分布式數(shù)據(jù)倉庫結(jié)構(gòu)1.3基于數(shù)據(jù)倉庫的數(shù)據(jù)集成的體系架構(gòu)本文選擇單一的數(shù)據(jù)倉庫結(jié)構(gòu)作為數(shù)據(jù)集成模型,如下圖所示:信 息 集 成 服 務(wù) 平 臺(tái)Information integrator數(shù)據(jù)抽取、清洗、轉(zhuǎn)換、裝載(ETL Extraction-TransformationLoading)Warehousemanager數(shù)據(jù)集市、數(shù)據(jù)挖掘DataMiner前 端 展 現(xiàn)基于數(shù)據(jù)倉庫的數(shù)據(jù)集成架構(gòu)圖ETL Extraction-Transformation-Loading的
8、縮寫,中文名稱為數(shù)據(jù)提取、轉(zhuǎn)換和加載。ETL 工具有:OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator)、InformaticPowerCenter、AICloudETL、DataStage、Repository Explorer、Beeload、Kettle、DataSpider。開源的工具有 eclips 的 etl 插件:cloveretl。ETL (工作量 60%-80%)ETL負(fù)責(zé)將分布的、異構(gòu)數(shù)據(jù)源中的數(shù)據(jù)如關(guān)系數(shù)據(jù)、平面數(shù)據(jù)文件等抽取到臨時(shí)中間層后 進(jìn)行清洗、轉(zhuǎn)換、集成,最后加載到數(shù)據(jù)倉庫或,成為聯(lián)機(jī)分析處理、數(shù)據(jù)挖
9、掘的基礎(chǔ)。主 要涉及到關(guān)聯(lián)、轉(zhuǎn)換、增量、調(diào)度和監(jiān)控等幾個(gè)方面;數(shù)據(jù)倉庫系統(tǒng)中數(shù)據(jù)不要求與聯(lián)機(jī)事 務(wù)處理系統(tǒng)中數(shù)據(jù)實(shí)時(shí)同步,所以ETL可以定時(shí)進(jìn)行。但多個(gè)ETL的操作時(shí)間、順序和成敗對數(shù)據(jù)倉庫中信息的有效性至關(guān)重要。Database & filesDatabase& filesLegacy applicationsRuntimeMeta dataServicesMeta dataimport/export1Meta data repository可讓管理員基于事件和時(shí)間進(jìn)行調(diào)度、運(yùn)行、 業(yè)、管理錯(cuò)誤信息、從失敗中恢復(fù)和調(diào)節(jié)從源系統(tǒng)的輸出。Transport services利用網(wǎng)
10、絡(luò)協(xié)議或文件協(xié)議,在源和目標(biāo)系統(tǒng)之間移動(dòng)數(shù)據(jù),在ETL處理的各組件中移動(dòng)數(shù)據(jù)。Extract通過接口提取源數(shù)據(jù),例如ODBG專用數(shù)據(jù)庫接口和平面文件提取器,元數(shù)據(jù)來決定數(shù)據(jù)的提取及其提取方式。Transform開發(fā)者將提取的數(shù)據(jù),按照業(yè)務(wù)需要轉(zhuǎn)換為目標(biāo)數(shù)據(jù)結(jié)構(gòu),并實(shí)現(xiàn)匯總。Load加載經(jīng)轉(zhuǎn)換和匯總的數(shù)據(jù)到目標(biāo)數(shù)據(jù)倉庫中,可實(shí)現(xiàn) SQL或批量加載。Design manager提供一個(gè)圖形化的映射環(huán)境,讓開發(fā)者定義從源到目標(biāo)的映射關(guān)系、轉(zhuǎn)換、處理流程。設(shè)計(jì)過程的各對象的邏輯定義存儲(chǔ)在一個(gè)元數(shù)據(jù)資料庫中。Meta data management提供一個(gè)關(guān)于 ETL設(shè)計(jì)和運(yùn)行處理等相關(guān)定義、管理信息的
11、元數(shù)據(jù) 資料庫。ETL引擎在運(yùn)行時(shí)和其它應(yīng)用都可參考此資料庫中的元數(shù)據(jù)。Administration and operation監(jiān)測ETL作利用內(nèi)存并參照Design manager1.4基于數(shù)據(jù)倉庫的數(shù)據(jù)集成的關(guān)鍵技術(shù)設(shè)計(jì)在數(shù)據(jù)設(shè)計(jì)時(shí)可以根據(jù)數(shù)據(jù)倉庫的參照結(jié)構(gòu)構(gòu)建合適的數(shù)據(jù)倉庫。數(shù)據(jù)倉庫的參照結(jié)構(gòu)由不同的層次組成, 這些層次包括:數(shù)據(jù)倉庫基本功能層、 數(shù)據(jù)倉庫管理層和數(shù)據(jù)倉庫環(huán)境 支持層,如下表所示:數(shù)據(jù)倉庫基本功能層數(shù)據(jù)倉庫管理層數(shù)據(jù)倉庫環(huán)境支持層數(shù)據(jù)倉庫的基本功能層包括:數(shù)據(jù)的提取、數(shù)據(jù)篩選、清理后的數(shù)據(jù)加載、設(shè)立數(shù)據(jù)集市、完成數(shù)據(jù)倉庫的查詢、決策分析和知識(shí)挖掘等。數(shù)據(jù)倉庫的管理層分成數(shù)
12、據(jù)管理和元數(shù)據(jù)管理兩部分,主要負(fù)責(zé)對數(shù)據(jù)倉庫中的數(shù)據(jù)抽取、清理、加載、更新與刷新等操作進(jìn)行管理。數(shù)據(jù)倉庫環(huán)境支持層包括數(shù)據(jù)傳輸和數(shù)據(jù)倉庫基礎(chǔ)兩部分,這兩部分對于數(shù)據(jù)倉庫的創(chuàng)建和使用是必不可少的, 沒有這兩個(gè)數(shù)據(jù)倉庫的支持環(huán)境, 數(shù)據(jù)倉庫的創(chuàng)建和使用是無法實(shí) 現(xiàn)的。1.4.1數(shù)據(jù)倉庫基本功能層的設(shè)計(jì)數(shù)據(jù)倉庫基本功能包括:數(shù)據(jù)抽取、數(shù)據(jù)篩選和清理、清理后數(shù)據(jù)的加載、完成數(shù)據(jù)倉庫的查詢。1、數(shù)據(jù)抽取數(shù)據(jù)倉庫的提取是傳統(tǒng)的數(shù)據(jù)處理過程,其輸入是數(shù)據(jù)倉庫數(shù)據(jù)源的各種業(yè)務(wù)處理系統(tǒng)的數(shù)據(jù)庫,輸出部分是數(shù)據(jù)倉庫。(1) 數(shù)據(jù)抽取處理流程圖數(shù)據(jù)抽取流程圖數(shù)據(jù)倉庫的數(shù)據(jù)抽取是數(shù)據(jù)倉庫成功的關(guān)鍵。在操作數(shù)據(jù)上執(zhí)行的
13、數(shù)據(jù)抽取應(yīng)該依據(jù)元數(shù)據(jù)中定義的標(biāo)準(zhǔn)數(shù)據(jù)格式處理數(shù)據(jù)。在抽取過程中,從元數(shù)據(jù)庫中讀取數(shù)據(jù)的定義,將數(shù)據(jù)轉(zhuǎn)換或者修補(bǔ)以適合數(shù)據(jù)倉庫的標(biāo)準(zhǔn)。(2) 數(shù)據(jù)抽取策略抽取數(shù)據(jù)的方式主要有:全庫比較法、利用程序日志、利用數(shù)據(jù)庫日志、利用時(shí)間戳、 利用位索引。 全庫比較法。抽取數(shù)據(jù)確定的最簡單方法是全庫比較,即將數(shù)據(jù)源數(shù)據(jù)的當(dāng)前瞬時(shí)狀態(tài)與上一次數(shù)據(jù)抽取時(shí)的瞬時(shí)狀態(tài)進(jìn)行比較,將兩者的差異記錄在增量文件中,增量文件作為數(shù)據(jù)加載的來源。這種方法在處理過程中比較簡單,但是需要花費(fèi)大量的靈氣比較時(shí)間,給系統(tǒng)的CPU和I/O帶來了沉重的負(fù)擔(dān),一般用于小型的數(shù)據(jù)倉庫。 利用程序日志。該方法主要是在數(shù)據(jù)源的業(yè)務(wù)處理系統(tǒng)中利用
14、程序記錄將發(fā)生變化的數(shù)據(jù)記錄下來,形成增量文件,根據(jù)數(shù)據(jù)倉庫的需要傳送到數(shù)據(jù)倉庫中去。這種方法所需的系統(tǒng)資源少,但是會(huì)加重業(yè)務(wù)處理系統(tǒng)的工作量。而且,在業(yè)務(wù)系統(tǒng)發(fā)生變化時(shí),也需要對程序日志進(jìn)行修改,這就需要解決是由業(yè)務(wù)處理系統(tǒng)的維護(hù)人員進(jìn)行程序日志的修改,還是由數(shù)據(jù)倉庫的維護(hù)人員進(jìn)行修改的問題。前者會(huì)加重業(yè)務(wù)處理系統(tǒng)的負(fù)擔(dān),后者可能不受業(yè)務(wù)處理系統(tǒng)管理人員的歡迎。(3利用數(shù)據(jù)庫日志。利用數(shù)據(jù)源的數(shù)據(jù)庫日志確定抽取數(shù)據(jù)要比利用程序日志好,不需要編制任何業(yè)務(wù)處理系統(tǒng)的程序,中需要通過對數(shù)據(jù)庫運(yùn)行日志的檢查,就可以確定那些數(shù)據(jù)源發(fā)生變化,也就確定了進(jìn)行加載數(shù)據(jù)。 當(dāng)然,采用這種方法需要了解 DBMS
15、的內(nèi)部環(huán)境, 并且在日志結(jié)構(gòu)改變時(shí)也需要改變抽取過程。 利用時(shí)間戳。這種方法需要在記錄中增加時(shí)間戳,在記錄發(fā)生變化時(shí),就加上變化發(fā)生時(shí)的時(shí)間戳,這樣只要在確定在上一次抽取以后,那些記錄的時(shí)間戳發(fā)生了變化,就可以處理。當(dāng)然這種方法需要在系統(tǒng)中增加一個(gè)時(shí)間索引,可能會(huì)影響到業(yè)務(wù)處理系統(tǒng)的運(yùn)行效率。 利用位圖索引。即在數(shù)據(jù)源的記錄中增加一個(gè)位圖索引字段,其值是:沒變化、修改過、修改中。在數(shù)據(jù)源中增加一個(gè)新的記錄或者修改了一個(gè)記錄時(shí),值就設(shè)置為修改過,數(shù) 據(jù)提取過程中只抽取這些標(biāo)志為修改過的記錄,抽取完成后再將修改過的值改為沒有變化, 將修改中的值改為修改過。(3) 數(shù)據(jù)抽取事件的觸發(fā)與運(yùn)行地抽取事件
16、的觸發(fā)。在確定了被抽取的數(shù)據(jù)以后,還需要確定在何時(shí)進(jìn)行數(shù)據(jù)抽取,數(shù)據(jù)抽取時(shí)間的確定主要有: 基于時(shí)間的和基于事件的兩種?;跁r(shí)間的抽取主要是間隔幾個(gè)小時(shí)、幾天、幾周進(jìn)行的數(shù)據(jù)抽取?;谑录臄?shù)據(jù)抽取取決于某些事件是否發(fā)生,利用事件的發(fā)生來觸發(fā)數(shù)據(jù)的抽取。抽取過程的運(yùn)行地。 在數(shù)據(jù)抽取計(jì)劃中, 還需要確定數(shù)據(jù)抽取過程的運(yùn)行地是數(shù)據(jù)源還 是數(shù)據(jù)倉庫。如果是數(shù)據(jù)源的數(shù)據(jù)庫與數(shù)據(jù)倉庫的數(shù)據(jù)庫不一致,數(shù)據(jù)的抽取與轉(zhuǎn)移可能需要通過平面文件進(jìn)行。 此時(shí),數(shù)據(jù)抽取過程必須在數(shù)據(jù)源上進(jìn)行,這是一種堆式數(shù)據(jù)抽取方式。如果數(shù)據(jù)源與數(shù)據(jù)倉庫的數(shù)據(jù)庫是一致的,那么數(shù)據(jù)的抽取過程就可以在數(shù)據(jù)倉庫上進(jìn)行。(4) 基于上下文
17、無關(guān)文法的數(shù)據(jù)抽取規(guī)則-數(shù)據(jù)抽取法則參考設(shè)計(jì) 概述通過分析大量的企業(yè)信息系統(tǒng)產(chǎn)生的文本數(shù)據(jù)的異同點(diǎn),從文本數(shù)據(jù)攜帶的信息和數(shù)據(jù)結(jié)構(gòu)形式出發(fā),將文本數(shù)據(jù)文件結(jié)構(gòu)歸納為:文件名:在文件名中存在的一些重要數(shù)據(jù)應(yīng)該被提取出來。文件內(nèi)容:文本文件的內(nèi)容是最重要的部分,從結(jié)構(gòu)上又可將文件的內(nèi)容分為表頭、表體、表尾三大部分。分別表示實(shí)際數(shù)據(jù)的不同方面,綜合起來則可以表示完整的無缺失的數(shù)據(jù)。在對文本數(shù)據(jù)文件結(jié)構(gòu)分析的基礎(chǔ)上,需要將這些數(shù)據(jù)的抽取規(guī)則表示出來。文法是描述語言的語法結(jié)構(gòu)的形式規(guī)則,這些規(guī)則是準(zhǔn)確和易于理解的,而且有相當(dāng)強(qiáng)的描述能力, 足以描述各種不同的結(jié)構(gòu), 上下文無關(guān)文法所定義的語法范疇是完全獨(dú)
18、立于這種范疇可能出 現(xiàn)的環(huán)境的,用上下文無關(guān)文法來表示數(shù)據(jù)抽取規(guī)則比較合適。上下文無關(guān)文法上下文無關(guān)文法包括四個(gè)組成部分:一組終結(jié)符號(hào),一組非終結(jié)符號(hào),一個(gè)開始符號(hào)以及一組產(chǎn)生式。形式上講,一個(gè)上下文無關(guān)文法G是一個(gè)四元式(Vt, Vn, S, ?),其中:Vt是一個(gè)非空有限集,它的每個(gè)元素稱為終結(jié)符號(hào);Vn是一個(gè)非空有限集,它的每個(gè)元素稱為非終結(jié)符號(hào),Vt A Vn=?;s是一個(gè)非終結(jié)符號(hào),稱為開始符號(hào);. .*?是一個(gè)廣生式集合(非空有限集),每個(gè)廣生式的形式是 Pr a,其中,PC Vt, a (VtUVn)。 開始符號(hào)S至少必須在某個(gè)產(chǎn)生式的左部出現(xiàn)一次。本文用:=代替用 濃示終結(jié)符號(hào)
19、,用表示非終結(jié)符號(hào)。 件名結(jié)構(gòu)分析大量的企業(yè)信息系統(tǒng)都有自己的一套文本數(shù)據(jù)文件名的生成規(guī)則,即在”后面放置 有用的信息或在文件名的特定幾位上表示所需要的有用信息。若在有用信息與其它信息之間有某種特定的分隔符,則以這個(gè)特定的分隔符為標(biāo)記,提取出有用信息。若在有用信息與其它信息之間沒有特定的分隔符,而是在特定的位上放置有用信息,貝U指定信息提取的起始位置和長度,并取出有用信息。文件名數(shù)據(jù)抽取規(guī)則的文法表示為:文件名:=按分隔符抽取l按位置抽取按分隔符抽取:=分隔符號(hào) 從第幾個(gè)符號(hào)開始 至第幾個(gè)符號(hào)結(jié)束 按分隔符抽取分隔符號(hào) :=某個(gè)特定符號(hào)從第幾個(gè)符號(hào)開始 :=開始分隔符編號(hào)(數(shù)字值)至第幾個(gè)符號(hào)
20、結(jié)束 :=結(jié)束分隔符編號(hào)(數(shù)字值)按位置抽取:-數(shù)據(jù)開始位置 抽取數(shù)據(jù)長度 按位置抽取數(shù)據(jù)開始位置 :=數(shù)據(jù)在文件名中的開始位置值 (數(shù)字值)抽取數(shù)據(jù)長度 :=需提取的數(shù)據(jù)長度(字符個(gè)數(shù),數(shù)字值) 件內(nèi)容分析將文件內(nèi)容的結(jié)構(gòu)分為表頭、表體、表尾三部分分別進(jìn)行研究。其中,表頭和表尾在某些文本數(shù)據(jù)文件中可能存在,也可能不存在,但表體作為表達(dá)數(shù)據(jù)信息的主體部分應(yīng)該總是存在的。a. 表頭數(shù)據(jù)的結(jié)構(gòu)分析作為基本結(jié)構(gòu)的開始,表頭部分往往包含著以下信息:(1)需濾掉的說明信息行:指整個(gè)數(shù)據(jù)塊的說明部分,包括數(shù)據(jù)來源、對應(yīng)的報(bào)表名稱 等。(2)需保留的數(shù)據(jù)行:相對于之前需濾掉的多余信息,這部分信息是需要保存到
21、數(shù)據(jù)庫 中的。不論這部分?jǐn)?shù)據(jù)量的大小,它們都將被抽取出來,并與后面的表體數(shù)據(jù)和表尾數(shù)據(jù)組合成一個(gè) 完整的數(shù)據(jù)行。對這些需保留的數(shù)據(jù)的抽取方法主要有以下兩種:(1)從特定分隔字符后抽取指定長度的字符;(2 )從指定位置開始直接抽取指定長度的字符。綜合以上的分析,可以得到描述表頭結(jié)構(gòu)及抽取規(guī)則的文法如下:表頭數(shù)據(jù):=行數(shù)據(jù)信息表頭數(shù)據(jù)I行數(shù)據(jù)信息行數(shù)據(jù)信息:=開始標(biāo)志行l(wèi)需過濾數(shù)據(jù)行I需保留數(shù)據(jù)行開始標(biāo)志行:=包含特征字符串行I等于特征字符串行1匹配特征字符串行需過濾數(shù)據(jù)行:=包含特征字符串行I等于特征字符串行I匹配特征字符串 行:=特征字符串:=特征字符串:=特征字符串=按分隔符抽取包含比較方法
22、等于比較方法匹配比較方法I按位置抽取包含特征字符串行等于特征字符串行匹配特征字符串行需保留數(shù)據(jù)行:=分隔符號(hào) 從第幾個(gè)符號(hào)開始 至第幾個(gè)符號(hào)結(jié)束按分隔符抽取:按分隔符抽取分隔符號(hào) 從第幾個(gè)符號(hào)開始 至第幾個(gè)符號(hào)結(jié)束分隔符號(hào) ::=某個(gè)特定符號(hào)從第幾個(gè)符號(hào)開始 :=開始分隔符編號(hào)(數(shù)字值)至第幾個(gè)符號(hào)結(jié)束 :.-結(jié)束分隔符編號(hào)(數(shù)字值)按位置抽取:=數(shù)據(jù)開始位置 抽取數(shù)據(jù)長度 按位置抽取I數(shù)據(jù)開始位置 抽取數(shù)據(jù)長度數(shù)據(jù)開始位置 :=數(shù)據(jù)在文件中的開始位置值(數(shù)字值)抽取數(shù)據(jù)長度 :=需提取的數(shù)據(jù)長度(字符個(gè)數(shù),數(shù)字值)特征字符串 :=字符串包含比較方法 :=判斷目標(biāo)字符串是否包含特征字符串等于比
23、較方法 :=判斷目標(biāo)字符串是否等于特征字符串匹配比較方法 :=判斷目標(biāo)字符串是否匹配特征字符串b. 表體數(shù)據(jù)的結(jié)構(gòu)分析表體部分作為數(shù)據(jù)的主體部分,包含著絕大部分需提取的信息, 正確、高效地抽取出數(shù) 據(jù)是進(jìn)一步將數(shù)據(jù)加載到數(shù)據(jù)庫的關(guān)鍵。 表體數(shù)據(jù)包含了最終記錄中的主要字段值,它們主要通過兩種方式被抽取出來:第一種是通過特定的分隔符將各字段值分隔開,常用的有逗號(hào)、膈、“1”等符號(hào),各字段值的長度不是固定的,對這種類型的數(shù)據(jù)在抽取時(shí)要識(shí)別出分隔符,并以這些特定的符號(hào)為邊界抽取各個(gè)字段。第二種情況正好相反,各個(gè)字段值的長度是固定的,沒有特定的分隔符來分隔這些字段, 對這類數(shù)據(jù)的抽取應(yīng)當(dāng)采取指定各個(gè)字段
24、在數(shù)據(jù)行中的開始位置和長度的方法。綜合這兩種情況,可以得到描述表體數(shù)據(jù)的結(jié)構(gòu)和抽取規(guī)則的文法為:行數(shù)據(jù)信息:合數(shù)據(jù)行I需字段替換數(shù)據(jù)行需過濾數(shù)據(jù)行: 行包含特征字符串行等于特征字符串行匹配特征字符串行表體數(shù)據(jù):=行數(shù)據(jù)信息表體數(shù)據(jù)I行數(shù)據(jù)信息 需過濾數(shù)據(jù)行1標(biāo)準(zhǔn)數(shù)據(jù)行I需字段填充數(shù)據(jù)行I需組=包含特征字符串行I等于特征字符串行1匹配特征字符串= 特征字符串= 特征字符串= 特征字符串包含比較方法等于比較方法匹配比較方法特征字符串 :=針對具體應(yīng)用的字符串=判斷目標(biāo)字符串是否包含特征字符串 =判斷目標(biāo)字符串是否等于特征字符串 =判斷目標(biāo)字符串是否匹配特征字符串 =按分隔符抽取I按位置抽取, 1-
25、 Vf 1=1包含比較方法等于比較方法匹配比較方法標(biāo)準(zhǔn)數(shù)據(jù)行:按分隔符抽取:=分隔符號(hào) 從第幾個(gè)符號(hào)開始 至第幾個(gè)符號(hào)結(jié)束 按分隔符 抽取分隔符號(hào) 從第幾個(gè)符號(hào)開始 至第幾個(gè)符號(hào)結(jié)束分隔符號(hào):-某個(gè)特定符號(hào)從第幾個(gè)符號(hào)開始 :=開始分隔符編號(hào)(數(shù)字值)至第幾個(gè)符號(hào)結(jié)束 :=結(jié)束分隔符編號(hào)(數(shù)字值)按位置抽取:=數(shù)據(jù)開始位置 抽取數(shù)據(jù)長度 按位置抽取I數(shù)據(jù)開始位置 抽取數(shù)據(jù)長度數(shù)據(jù)開始位置 :=數(shù)據(jù)在文件中的開始位置值 (數(shù)字值)抽取數(shù)據(jù)長度 :=需提取的數(shù)據(jù)長度(字符個(gè)數(shù),數(shù)字值)需字段填充數(shù)據(jù)行:=需填充字段需字段填充數(shù)據(jù)行I完整字段需字段 填充數(shù)據(jù)行1需填充字段I完整字段需填充字段:=按分
26、隔符抽取I按位置抽取完整字段:=按分隔符抽取I按位置抽取需字段替換數(shù)據(jù)行:=需替換字段需字段替換數(shù)據(jù)行I完整字段需字段 替換數(shù)據(jù)行I需替換字段I完整字段需替換字段:=按分隔符抽取I按位置抽取完整字段:=按分隔符抽取I按位置抽取需組合數(shù)據(jù)行:=元素?cái)?shù)據(jù)行需組合數(shù)據(jù)行I元素?cái)?shù)據(jù)行元素?cái)?shù)據(jù)行:=按分隔符抽取I按位置抽取c. 表尾數(shù)據(jù)結(jié)構(gòu)分析表尾數(shù)據(jù)部分和表頭部分?jǐn)?shù)據(jù)類似,往往都包含著記錄行的一些關(guān)鍵字段,也有一些多余的無用信息需要被過濾掉,在此不贅述。以上是對數(shù)據(jù)結(jié)構(gòu)表示文法的分析。結(jié)合當(dāng)前流行的xML語言的特點(diǎn)也可以使用 xML來實(shí)現(xiàn)文本數(shù)據(jù)文件結(jié)構(gòu)的表示文法。2、數(shù)據(jù)倉庫的數(shù)據(jù)清理轉(zhuǎn)換方法在確定
27、了數(shù)據(jù)源與數(shù)據(jù)倉庫的數(shù)據(jù)格式以后,需要解決兩者的不一致處,即進(jìn)行數(shù)據(jù)的清理與轉(zhuǎn)換。這種數(shù)據(jù)的清理轉(zhuǎn)換不僅涉及到格式的改變,而且還需要準(zhǔn)備數(shù)據(jù)倉庫運(yùn)行數(shù)據(jù)的結(jié)構(gòu)和內(nèi)容的轉(zhuǎn)換。這些數(shù)據(jù)清理與轉(zhuǎn)換可以采用類型轉(zhuǎn)換、串操作、數(shù)據(jù)函數(shù)、參照完整性、關(guān)鍵字翻譯和聚集等方法進(jìn)行。 類型轉(zhuǎn)換。數(shù)據(jù)類型的轉(zhuǎn)換,主要是將同一含義不同格式的數(shù)據(jù)轉(zhuǎn)換成同樣格式的數(shù) 據(jù)類型。 串操作。在數(shù)據(jù)清理中,有時(shí)需要將兩個(gè)以上數(shù)據(jù)列的值裁剪,并成為一個(gè)列的值。 數(shù)據(jù)函數(shù)。在數(shù)據(jù)的清理過程中,有時(shí)需要對數(shù)據(jù)源中的數(shù)據(jù)通過某種計(jì)算,取其計(jì)算結(jié)果。(4參照完整性。在數(shù)據(jù)加載到數(shù)據(jù)倉庫中時(shí),需要確定這些所加載的數(shù)據(jù)是否與已經(jīng)存在數(shù)據(jù)倉庫
28、中、是否已經(jīng)抽取已經(jīng)是抽取數(shù)據(jù)的一部分。 關(guān)鍵字翻譯。各種數(shù)據(jù)源數(shù)據(jù)都具有其業(yè)務(wù)處理過程中的關(guān)鍵字,這些關(guān)鍵字在數(shù)據(jù)倉庫中需要轉(zhuǎn)換為數(shù)據(jù)倉庫中的代理關(guān)鍵字,以適應(yīng)時(shí)間維等多維數(shù)據(jù)處理的需要。(6聚集運(yùn)算。數(shù)據(jù)倉庫中大量的概括、 聚集數(shù)據(jù)可以在數(shù)據(jù)向數(shù)據(jù)倉庫加載過程中計(jì)算, 而不必等到加載完成以后再進(jìn)行,以降低數(shù)據(jù)I/O操作的開銷。3、元數(shù)據(jù)的建立與應(yīng)用清理和加載元數(shù)據(jù)作為數(shù)據(jù)倉庫中數(shù)據(jù)的數(shù)據(jù)主要作用于指導(dǎo)數(shù)據(jù)倉庫中數(shù)據(jù)的抽取、 過程,并對數(shù)據(jù)倉庫的應(yīng)用發(fā)揮指導(dǎo)、幫助作用。數(shù)據(jù)倉庫模型的建立貫穿了整個(gè)數(shù)據(jù)倉庫從規(guī)劃設(shè)計(jì)到實(shí)際應(yīng)用的整個(gè)過程(表現(xiàn)如上圖所示),需要在數(shù)據(jù)倉庫的開發(fā)應(yīng)用中不斷的更新,其主要過程有:(1) 在數(shù)據(jù)倉庫的模型建立過程中,可以使用某種建模工具創(chuàng)建數(shù)據(jù)倉庫的模型,此時(shí)需要從現(xiàn)有的業(yè)務(wù)處理系統(tǒng)中提取元數(shù)據(jù),并建立數(shù)據(jù)倉庫的邏輯模型與物理模型,包括數(shù)據(jù)倉庫的邏輯名稱、業(yè)務(wù)名稱、列名、物理列名、業(yè)務(wù)術(shù)語和描述、查詢提示和樣值等, 并將這些元數(shù)據(jù)保存在元靈氣目錄中。(2) 在數(shù)據(jù)倉庫中添加關(guān)于數(shù)據(jù)加載的元數(shù)據(jù),完成數(shù)據(jù)“來源定義”,主要是關(guān)于數(shù) 據(jù)倉庫源數(shù)據(jù)的一些描述信息,用作從源文件向數(shù)據(jù)倉庫轉(zhuǎn)換的準(zhǔn)備。(3) 利用數(shù)加載工具提取數(shù)據(jù)倉庫中各表的定義,并且完
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 天津市雙菱中學(xué)2024-2025學(xué)年高二上學(xué)期期中考試化學(xué)試題(含答案)
- 廣東省揭陽新華中學(xué)2024-2025學(xué)年高一下學(xué)期第一次月考化學(xué)試卷(含答案)
- 2024-2025學(xué)年河北省張家口市懷安縣八年級(jí)(上)期末物理試卷(含答案)
- 2019-2025年軍隊(duì)文職人員招聘之軍隊(duì)文職法學(xué)題庫綜合試卷A卷附答案
- 餐飲廚房考試試題及答案
- 配對合同范本(2篇)
- 2025年度施工員(市政工程)專業(yè)技能知識(shí)考試題庫及答案(一)
- 口腔牙周病知識(shí)培訓(xùn)課件
- 化學(xué)基本知識(shí)培訓(xùn)課件
- 私人酒窖租賃服務(wù)酒品保管免責(zé)
- 高效空調(diào)制冷機(jī)房智能控制系統(tǒng)技術(shù)規(guī)程
- QC成果提高工業(yè)廠房基礎(chǔ)預(yù)埋地腳螺栓的精確度
- 高中生物教材挖空填空練習(xí)
- 樹立正確的榮譽(yù)觀,正確看待評功授獎(jiǎng)
- 龍門吊安裝與及拆除安全專項(xiàng)施工方案
- 蘇州職業(yè)大學(xué)職業(yè)適應(yīng)性測試題庫2021
- (完整word版)中國戶口本英文翻譯模板
- TZLX 030-2023 水蜜桃綠色生產(chǎn)全程質(zhì)量控制技術(shù)規(guī)范
- 高中生物 人教版 選修二《生態(tài)系統(tǒng)及其穩(wěn)定性》 《生態(tài)系統(tǒng)及其穩(wěn)定性》單元教學(xué)設(shè)計(jì)
- 《幼兒園課程》01 幼兒園課程概述
- 打井合同(范本8則)
評論
0/150
提交評論