文章目錄
- 可視化ETL工具——Kettle
-
- Kettle入門案例
-
- csv - excel
- Json - excel
- MySQL - excel
- 生成資料 - excel
- MySQL - 文本
- Json - MySQL
- Json - MySQL
- MySQL删除資料
- 內建大資料
-
- 內建Hive
-
- hive - excel
- excel - Hive
- 執行Hive SQL腳本
可視化ETL工具——Kettle
ETL(Extract-Transform-Load)用來描述将資料從來源端經過抽取(extract)、轉換(transform)、加載(load)到目的端的過程。ETL一次較常用在資料倉庫,但其對象并不限于資料倉庫。
Kettle介紹
對于企業或行業應用來說,經常會遇到各種資料的處理,轉換,遷移,掌握一種etl工具的使用,必不可少,這裡要學習的ETL工具是——Kettle,現在已經更名為PDI。
- Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運作,綠色無需安裝
- Kettle 中文名稱叫水壺,該項目的主程式員MATT 希望把各種資料放到一個壺裡,然後以一種指定的格式流出
- Kettle允許管理來自不同資料庫的資料,提供一個圖形化的使用者環境來描述想做什麼,無需關心怎麼做
Kettle入門案例
入門案例将從多個方面示範kettle最基礎的檔案轉換操作以及包含對資料庫表資料和Hadoop叢集檔案操作
csv - excel
需求:把資料從csv檔案抽取到excel檔案
Json - excel
需求:将json檔案的資料抽取到excel中
MySQL - excel
需求:将MySQL資料庫中的user表中的資料抽取到excel檔案中
生成資料 - excel
需求:在excel檔案中插入1000條記錄:id為1,name為zhangsan,age為18
MySQL - 文本
需求:從mysql資料庫的test庫中的t_user表抽取資料到文本檔案
Json - MySQL
- Json輸出就是把資料寫入指定的表
Json - MySQL
需求:從Json中讀取資料,并插入或更新到MySQL資料庫中的t_user_1表中
MySQL删除資料
需求:從MySQL資料庫的t_user_1表中删除指定id的資料
內建大資料
Kettle整合Hadoop讀取HDFS檔案的準備工作.
Kettle整合Hive讀取Hive中表資料準備工作.
HDFS - excel
需求:從Hadoop檔案系統中讀取1.txt檔案,把資料輸出到excel中
保證圖中右側1、3、5、7、9項為對勾
Json - HDFS
需求:讀取user.json把資料寫入hdfs檔案系統的/hadoop/test/2.txt中
內建Hive
準備大資料Hive環境,建立資料表加載資料
啟動hive服務
hive --service metastore -p 9083 &
hive --service hiveserver2 &
hive - excel
需求:将hive表中的資料讀取到excel中
excel - Hive
需求:讀取excel資料儲存到hive資料庫
執行Hive SQL腳本
需求:聚合查詢a表表中a字段大于1的資料,同時建立一個新表new_a儲存查詢資料