ETL大數據測試介紹
ETL(Extract,Transform and Load)翻譯為中文就是數據提取、轉換和加載。典型的大數據項目裏,一般都有數據獲取,數據清洗,數據發掘,數據可視化, 數據分析等步驟,而這個過程就是所謂的ETL。所以ta定義的是過程,並不是技術也不是工具。
數據倉庫測試 VS 數據庫測試
這裏為什麽會提到數據倉庫呢?原因是ta與ETL有著千絲萬縷的關系。比如,我們要蓋一棟樓,那這個建築圖就是數據倉庫,磚就是數據,而蓋樓的過程就是ETL
明白了這個,我們來看看數據倉庫測試和數據庫測試的不同。雖然他們看起來都是對數據的測試,但還是有不一樣的地方,大致如下(網上看到一段總結感覺非常不錯,就直接拿來了):
數據庫測試使用規模較小的數據通常是OLTP(聯機事務處理)的數據庫類型,而數據倉庫測試是大容量的數據,涉及的是OLAP(聯機分析處理)數據庫。
數據庫測試通常是從統一數據源中持續註入,而數據倉庫測試的數據來自不同類型的數據源且數據是不連續和無序的。
我們在進行數據庫測試時一般只執行CRUD(Create, read, update and delete),而在數據倉庫的測試時我們只讀(select)操作。
標準化的數據庫被用於DB測試中,而歷史DB則被使用在數據倉庫測試中。
常用測試方法
TALEND STUDIO工具:它具有可視圖形化操作界面,基本無需編碼,豐富的圖形化轉換功能
Hive test
自己寫sql:源sql MINUS 目標sql來做對比,類似
SELECT column_list_1 FROM table_1 MINUS SELECT columns_list_2 FROM table_2;
自動化腳本
關註點
源表和目標表數據量統計
數據合法性、有效性等(類型、空值、臟數據等)
加載規則測試(全量:先清空再插入(truncate and insert)、增量:先刪後插(delete and insert))
還有很多。。。。。
常見bug
數據記錄不一致或丟失
空值null問題
順序錯亂
過濾條件不正確
點擊鏈接加入QQ群 522720170:https://jq.qq.com/?_wv=1027&k=5C08ATe
ETL大數據測試介紹