資料倉儲 - Teradata學習體會

weixin_34146805發表於2017-07-30
5266042-3a8a8be63de67b76.jpg

引言

隨著計算機系統在處理能力、儲存能力等方面,特別是計算機軟體技術的不斷提高,使得資訊處理技術得到飛速發展。

資料處理主要分為兩大類:聯機事物處理OLTP、聯機分析處理OLAP。OLTP也就是傳統的關係型資料庫應用,主要功能是基本的、日常的事務處理操作,對響應時間要求非常高,是一種面向應用的生產系統。OLAP是基於資料倉儲的面向主題的資訊分析處理過程。

什麼是資料倉儲

資料倉儲儲存的一般是歷史資料,針對資料倉儲系統的查詢大都非常複雜,特別消耗系統資源,對系統的可擴充套件能力和並行處理能力要求很高。資料倉儲主要面向業務人員和管理人員,用來幫助企業管理人員作出更符合業務發展規律的決策,所以也稱資料倉儲為決策支援系統。資料倉儲的資料來自多個資料庫,並且按照預先定義好的模型對抽取的資料進行轉換過濾,再將結果存放到資料倉儲中。

Teradata 資料庫

為了解決傳統資料庫在大量資料的查詢分析等方面的侷限性,Teradata公司推出了Teradata關聯式資料庫管理系統。Teradata採用標準的SQL查詢語言,適用於處理複雜查詢資料倉儲應用。

架構

Teradata的主要元件是解析引擎、BYNET和訪問模組處理器(AMP)

5266042-ea5f11bcecc5720d.jpg

  • 解析引擎負責從客戶端接收查詢命令並制定執行計劃。
  • BYNET相當於網路層,它從解析引擎接收執行計劃併傳送給相應的AMP,AMP的選擇採用雜湊演算法實現。
  • 資料表中的記錄均勻分佈在個AMP之間,每個AMP與儲存資料的一組磁碟相關聯。從BYNET接收資料和執行計劃後,進行型別轉換、聚合、過濾和排序等操作並將資料儲存到與其關聯的磁碟中。

操作

使用Teradata提供的免費Teradata資料庫開發人員版本可以進行開發測試,通過Teradata SQL Assistant或BTEQ等資料庫管理工具可以對資料倉儲進行操作,預設使用者為DBC,SQL語法和其它資料庫區別不大,但其獨特的內部結構適合需要處理複雜資料查詢的應用。

SQL 語法

Teradata使用了標準的SQL語法並在此基礎上進行了擴充套件,以增強資料庫管理系統的功能。所有的系統物件如Table、View、Macro等儲存在資料字典中,資料字典的所有者為DBC使用者,在客戶端可以呼叫資料字典中的物件訪問資料庫。剛開始使用Teradata時可以使用其幫助系統提供的命令HELP、SHOW、EXPLAIN檢視資料庫中各種物件的結構以及SQL請求的執行過程,對理解Teradata工作原理以及各種SQL語句的使用有很大幫助。

體會

在如今快速發展的大資料革命時代,資料積累量越來越多,其中蘊含著大量重要的資訊,通過對這些資料進行分析和綜合處理,可以發掘出對企業發展、政府管理部門至關重要的業務資訊,幫助管理人員作出合理的決策。

當然,傳統的關係型資料庫也是可以完成基本的事務處理和資料分析操作的,但是當資料量非常龐大時,資料庫就顯得無能為力了。比如,一個早期的電商平臺,只需一個網站、幾臺伺服器、一個MySQL就可以運營了,當客戶增多、資料量增大時,只需採用多臺伺服器、多個資料庫的方式就可以勉強應付,但是隨著資料量的不斷增長,資料之間的關係也越來越複雜,管理人員此時關心的不是“昨天營業額是多少”這類問題,而是“哪些使用者是高價值使用者”、“某商品的銷售量與哪些因素有關”等,這時就需要建立資料倉儲了,Teradata資料倉儲是專門針對決策支援系統的特點而開發的關聯式資料庫管理系統,相對於其它商業資料庫,Teradata更適合需要處理大資料量及資料分析的應用,可以極大提高應用的效能。

資料庫可以儲存和處理資料,而資料倉儲的職責則是發掘資料的價值,最大程度地利用資料。

本文為作者kMacro原創,轉載請註明來源:http://www.jianshu.com/p/e800fd4c5c08

相關文章