freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

bi項(xiàng)目中etl設(shè)計(jì)與思考-閱讀頁

2024-07-18 19:01本頁面
  

【正文】 持,使得用戶可以以一種編程的方式定制數(shù)據(jù)的轉(zhuǎn)換和加工行為。下面是一個(gè)SQL查詢的例子。 39?! ∠啾仍贓TL引擎中進(jìn)行數(shù)據(jù)轉(zhuǎn)換和加工,直接在SQL語句中進(jìn)行轉(zhuǎn)換和加工更加簡(jiǎn)單清晰,性能更高。    數(shù)據(jù)裝載  將轉(zhuǎn)換和加工后的數(shù)據(jù)裝載到目的庫(kù)中通常是ETL過程的最后步驟。當(dāng)目的庫(kù)是關(guān)系數(shù)據(jù)庫(kù)時(shí),一般來說有兩種裝載方式:  (1)直接SQL語句進(jìn)行insert、update、delete操作?! 〈蠖鄶?shù)情況下會(huì)使用第一種方法,因?yàn)樗鼈冞M(jìn)行了日志記錄并且是可恢復(fù)的。使用哪種數(shù)據(jù)裝載方法取決于業(yè)務(wù)系統(tǒng)的需要。另外一種是第三方工具提供商,如Kettle?! ?1)Oracle Data Integrator(ODI)  ODI前身是Sunopsis Active Integration Platform,在2006年底被Oracle收購(gòu),重新命名為Oracle Data Integrator,主要定位于在ETL和數(shù)據(jù)集成的場(chǎng)景里使用。ODI能夠檢測(cè)事件,一個(gè)事件可以觸發(fā)ODI的一個(gè)接口流程,從而完成近乎實(shí)時(shí)的數(shù)據(jù)集成?!  ! ?,清洗和回收臟數(shù)據(jù)?! ?Service。在SQL Server 2005的前兩個(gè)版本SQL Server Server 2000中,DTS主要集中于提取和加載。在SQL Server 2005中,對(duì)DTS進(jìn)行了重新設(shè)計(jì)和改進(jìn)形成了SSIS??刂屏饕卜Q為工作流或者任務(wù)流,它更像工作流,在工作流中每個(gè)組件都是一個(gè)任務(wù)。在任務(wù)流中可能有分支。數(shù)據(jù)流是新的概念。數(shù)據(jù)流由一組預(yù)定義的轉(zhuǎn)換操作組成。數(shù)據(jù)流的終點(diǎn)通常是數(shù)據(jù)的目的地(目標(biāo)表)。   SSIS體系結(jié)構(gòu)圖    在數(shù)據(jù)集成中該如何選擇ETL工具呢?一般來說需要考慮以下幾個(gè)方面:  (1)對(duì)平臺(tái)的支持程度。  (3)抽取和裝載的性能是不是較高,且對(duì)業(yè)務(wù)系統(tǒng)的性能影響大不大,傾入性高不高?! ?5)是否具有管理和調(diào)度功能。數(shù)據(jù)倉(cāng)庫(kù)建模與ETL的實(shí)踐技巧開發(fā)者在線 更新時(shí)間:20080916作者: 來源:本文關(guān)鍵詞: IT技術(shù) ETL 數(shù)據(jù)倉(cāng)庫(kù)  一、數(shù)據(jù)倉(cāng)庫(kù)的架構(gòu)   數(shù)據(jù)倉(cāng)庫(kù)(Data Warehouse DW)是為了便于多維分析和多角度展現(xiàn)而將數(shù)據(jù)按特定的模式進(jìn)行存儲(chǔ)所建立起來的關(guān)系型數(shù)據(jù)庫(kù),它的數(shù)據(jù)基于OLTP源系統(tǒng)?! ?shù)據(jù)倉(cāng)庫(kù)的架構(gòu)模型包括了星型架構(gòu)(圖二:)與雪花型架構(gòu)(圖三:)兩種模式。而相比較而言,雪花型架構(gòu)的中間為事實(shí)表,兩邊的維度表可以再有其關(guān)聯(lián)子表,從而表達(dá)了清晰的維度層次關(guān)系。而雪花型結(jié)構(gòu)明確,便于與OLTP系統(tǒng)交互?! ∧敲?,下面我們就來看一看,構(gòu)建企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)的流程。例如:我們希望分析某年某月某一地區(qū)的啤酒銷售情況,這就是一個(gè)主題?! ∥覀兛梢孕蜗蟮膶⒁粋€(gè)主題想象為一顆星星:統(tǒng)計(jì)數(shù)值型數(shù)據(jù)(量度)存在于星星中間的事實(shí)表。我們將通過維度的組合,來考察量度。從而,不同的主題來源于數(shù)據(jù)倉(cāng)庫(kù)中的不同子集,我們可以稱之為數(shù)據(jù)集市?! ?二)、確定量度  在確定了主題以后,我們將考慮要分析的技術(shù)指標(biāo),諸如年銷售額之類。我們或者將該數(shù)據(jù)匯總,或者將該數(shù)據(jù)取次數(shù)、獨(dú)立次數(shù)或取最大最小值等,這樣的數(shù)據(jù)稱為量度?! ?三)、確定事實(shí)數(shù)據(jù)粒度  在確定了量度之后,我們要考慮到該量度的匯總情況和不同維度下量度的聚合情況?! ±纾杭僭O(shè)目前的數(shù)據(jù)最小記錄到秒,即數(shù)據(jù)庫(kù)中記錄了每一秒的交易額。反過來,如果我們不能確認(rèn)將來的分析需求在時(shí)間上是否需要精確到秒,那么,我們就需要遵循“最小粒度原則”,在數(shù)據(jù)倉(cāng)庫(kù)的事實(shí)表中保留每一秒的數(shù)據(jù),以便日后對(duì)“秒”進(jìn)行分析。關(guān)于建立多維分析模型(CUBE)的相關(guān)問題,我們將在下期欄目中予以闡述。例如我們希望按照時(shí)間,或者按照地區(qū),或者按照產(chǎn)品進(jìn)行分析,那么這里的時(shí)間、地區(qū)、產(chǎn)品就是相應(yīng)的維度?! ∵@里我們首先要確定維度的層次(Hierarchy)和級(jí)別(Level)(圖四:)。同理,當(dāng)我們建立產(chǎn)品維度時(shí),我們可以將“產(chǎn)品大類產(chǎn)品子類產(chǎn)品”劃為一個(gè)層次,其中包含“產(chǎn)品大類”、“產(chǎn)品子類”、“產(chǎn)品”三個(gè)級(jí)別。我們也可以使用三張表,分別保存產(chǎn)品大類、產(chǎn)品子類、產(chǎn)品三部分?jǐn)?shù)據(jù),比如產(chǎn)品維度。代理鍵是數(shù)值型的ID號(hào)碼(例如圖六中每張表的第一個(gè)字段),它唯一標(biāo)識(shí)了每一維度成員。同時(shí),代理鍵對(duì)緩慢變化維度有著重要的意義,在原數(shù)據(jù)主鍵相同的情況下,它起到了對(duì)新數(shù)據(jù)與歷史數(shù)據(jù)的標(biāo)識(shí)作用。  比如我們?cè)黾恿诵碌漠a(chǎn)品,或者產(chǎn)品的ID號(hào)碼修改了,或者產(chǎn)品增加了一個(gè)新的屬性,此時(shí),維度表就會(huì)被修改或者增加新的記錄行。對(duì)于緩慢變化維度,有三種情況:  緩慢變化維度第一種類型:  歷史數(shù)據(jù)需要修改。例如:產(chǎn)品的ID號(hào)碼為123,后來發(fā)現(xiàn)ID號(hào)碼錯(cuò)了,需要改寫成456,那么,我們就在ETL處理時(shí),直接修改維度表中原來的ID號(hào)碼為456。這時(shí),要將原數(shù)據(jù)更新,將新數(shù)據(jù)插入,我們使用UPDATE / INSERT。那么在統(tǒng)計(jì)2005年的數(shù)據(jù)時(shí)就應(yīng)該將該員工定位到A部門。另一種方法是將該維度打上時(shí)間戳,即將歷史數(shù)據(jù)生效的時(shí)間段作為它的一個(gè)屬性,在與原始表匹配生成事實(shí)表時(shí)將按照時(shí)間段進(jìn)行關(guān)聯(lián),這種方法的好處是該維度成員生效時(shí)間明確。例如:某一維度成員新加入了一列,該列在歷史數(shù)據(jù)中不能基于它瀏覽,而在目前數(shù)據(jù)和將來數(shù)據(jù)中可以按照它瀏覽,那么此時(shí)我們需要改變維度表屬性,即加入新的字段列?! ?五)、創(chuàng)建事實(shí)表  在確定好事實(shí)數(shù)據(jù)和維度后,我們將考慮加載事實(shí)表。  我們的做法是將原始表與維度表進(jìn)行關(guān)聯(lián),生成事實(shí)表(圖六:)?! ∪绻紤]到擴(kuò)展,可以將事實(shí)表加一唯一標(biāo)識(shí)列,以為了以后擴(kuò)展將該事實(shí)作為雪花型維度,不過不需要時(shí)一般建議不用這樣做。事實(shí)數(shù)據(jù)表與維度表一起放于數(shù)據(jù)倉(cāng)庫(kù)中,如果前端需要連接數(shù)據(jù)倉(cāng)庫(kù)進(jìn)行查詢,我們還需要建立一些相關(guān)的中間匯總表或物化視圖,以方便查詢。如果說數(shù)據(jù)倉(cāng)庫(kù)是一座大廈,那么ETL就是大廈的根基。所以ETL在整個(gè)數(shù)據(jù)倉(cāng)庫(kù)項(xiàng)目中起著十分關(guān)鍵的作用,必須擺到十分重要的位置。例如:下圖就向我們展示了ETL的數(shù)據(jù)轉(zhuǎn)換效果。類似地,我們也可以根據(jù)其他需求,完善數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)。ETL為我們搭建了OLTP系統(tǒng)和OLAP系統(tǒng)之間的橋梁。先將數(shù)據(jù)抽取到準(zhǔn)備區(qū)中,然后基于準(zhǔn)備區(qū)中的數(shù)據(jù)進(jìn)行處理,這樣處理的好處是防止了在原OLTP系統(tǒng)中頻繁訪問,進(jìn)行數(shù)據(jù)運(yùn)算或排序等操作。數(shù)據(jù)準(zhǔn)備區(qū)中將存在原始抽取表、轉(zhuǎn)換中間表和臨時(shí)表以及ETL日志表等。在ETL中,時(shí)間戳有其特殊的作用,在上面提到的緩慢變化維度中,我們可以使用時(shí)間戳標(biāo)識(shí)維度成員。例如:在進(jìn)行數(shù)據(jù)抽取時(shí),我們將按照時(shí)間戳對(duì)OLTP系統(tǒng)中的數(shù)據(jù)進(jìn)行抽取,比如在午夜0:00取前一天的數(shù)據(jù),我們將按照OLTP系統(tǒng)中的時(shí)間戳取GETDATE到GETDATE減一天,這樣得到前一天數(shù)據(jù)。這樣,當(dāng)數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),我們很容易發(fā)現(xiàn)問題所在,然后對(duì)出錯(cuò)的數(shù)據(jù)進(jìn)行修正或重新處理。在使用調(diào)度前要考慮到事實(shí)數(shù)據(jù)量,確定需要多長(zhǎng)時(shí)間更新一次。如果有緩慢變化維度情況,調(diào)度時(shí)需要考慮到維度表更新情況,在更新事實(shí)數(shù)據(jù)表之前要先更新維度表。在ETL的流程搭建好后,要定期對(duì)其運(yùn)行,所以調(diào)度是執(zhí)行ETL流程的關(guān)鍵步驟。  五、總結(jié)  構(gòu)建企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)需要簡(jiǎn)單的五步,掌握了這五步的方法,我們可以構(gòu)建一個(gè)強(qiáng)大的數(shù)據(jù)倉(cāng)庫(kù)。例如:如果數(shù)據(jù)源的臟數(shù)據(jù)很多,在搭建數(shù)據(jù)倉(cāng)庫(kù)之前我們首先要進(jìn)行數(shù)據(jù)清洗,以剔除掉不需要的信息和臟數(shù)據(jù)。在數(shù)據(jù)倉(cāng)庫(kù)的項(xiàng)目實(shí)施中,它關(guān)系到整個(gè)項(xiàng)目的數(shù)據(jù)質(zhì)量,所以馬虎不得,必須將其擺到重要位置,將數(shù)據(jù)倉(cāng)庫(kù)這一大廈的根基筑牢。 owb,odi都是ELT工具,不過支持E
點(diǎn)擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1