ETL笔记
?對于數據倉庫以及ETL的知識,我基本上是個門外漢。一切都得從頭開始,記個筆記,方便自已了解學習進度。
???
??? 首先,我們來了解最基本的定義:
??? 嗯,也有人將ETL簡單稱為數據抽取。至少在未學習之前,領導告訴我的是,你需要做一個數據抽取的工具。
??? 其實呢,抽取是ETL中的關鍵環節,顧名思義,也就將數據從不同的數據源中抓取(復制)出來。
??? 太簡單了!
??? 上面的解釋無首無尾,有點象能讓你吃飽的第七個燒餅,
??? 仔細一想,抽取是不可能單獨存在,我們需要將與之關聯的一些其它環節拿出來。
??? 于是,得到ETL的定義:
??? 將數據抽取(Extract)、轉換(Transform)、清洗(Cleansing)、裝載(Load)的過程。
??? 好的,既然到了這一個層次,我們完全會進一步展開聯想,引出上面這個抽象事件的前因后果,
??? 抽取的源在哪里?
??? 裝載的目的又是什么呢?
??? 抽取源:大多數情況下,可以認為是關系數據庫,專業一點,就是事務處理系統(OLTP)。當然,廣義一點,可能會是其它數據庫或者是文件系統。
??? 目的地:OK,我們希望是數據倉庫。數據倉庫是啥?在學習之前,它對我來說是個抽象的怪物,看過一些簡單的資料之后,才了解這個怪物一點都不怪。堆積用來分析的數據的倉庫。是了,是用來分析的,于是,它區別于OLTP中的數據存儲。
??? 然后,我們來看看為什么要ETL?
??? 在我看來,有兩個原因。
??? 一:性能? 將需要分析的數據從OLTP中抽離出來,使分析和事務處理不沖突。咦?這不是數據倉庫的效果嗎?是了,
數據倉庫,大多數情況下,也就是通過ETL工具來生成地。
??? 二:控制? 用戶可以完全控制從OLTP中抽離出來的數據,擁有了數據,也就擁有了一切。
??? 嗯,OLAP分析,數據挖掘等等等……。
??? 最后,總結一下,
??? 從資料上看,ETL是一門大學問,對于大學問,實在有些怕怕,所以,我覺得應該停下來想一想,下一步我該干點啥?
??? 嗯,時不我待,我沒有辦法一切從頭開始,
??? 是了,從應用出發,看看現在工作中,最急需的是什么?
??? 鴨子要變成一盤菜,并不是舉手將之置于油鍋之勞。
??? OK,要將生米變為熟飯,鴨子放上大盤,一堆廢話之后,我得先看看廚房里都有了一些啥?
?
轉載于:https://www.cnblogs.com/huangchuansen/archive/2013/05/21/ETL.html
總結
- 上一篇: 面向对象的JSON
- 下一篇: protobuf生成as文件