可以做早安圖片的網站一鍵優(yōu)化大師下載
1、本節(jié)通過一個小例子來講解下處理器PutDatabaseRecord,該處理器的作用是將數據寫入數據庫。
如下流程通過處理器GenerateFlowFile 生成數據,然后通過處理器JoltTransformJSON轉換結構,最后通過處理器PutDatabaseRecord將數據寫入數據庫。如下圖所示
?2、處理器GenerateFlowFile 生成自定義數據,如下圖所示
?3、處理器JoltTransformJSON轉換結構,將結構轉換成適合表字段的結構,此時有兩種方式駝峰和下劃線兩種方式。下圖采用駝峰方式
?4、處理器PutDatabaseRecord將數據寫入數據庫,此處理器需要配置兩個控制器,Record Reader和Database Connection Pooling Service 兩個控制器。
?Record Reader
指定用于解析傳入數據并確定數據模式的控制器服務。
Database Type
數據庫的類型/版本,用于生成特定于數據庫的代碼。在許多情況下,通用類型應該足夠,但某些數據庫(例如Oracle)需要自定義的SQL子句。這里我們選擇mysql
Statement Type
支持常見的sql語句類型,如增刪改查,我們這里選擇insert
Data Record Path
指定數據記錄的路徑,該路徑確定了要發(fā)送到目標數據庫的記錄。
Database Connection Pooling Service
配置數據庫連接池信息,如下圖所
Catalog Name
SQL語句應該更新的目錄名稱
Schema Name
database 名稱
Table Name
表名
Translate Field Names
如果設置為 true,處理器將嘗試將字段名翻譯為指定表格的相應列名。如果設置為 false,字段名必須與列名完全匹配,否則列將不會被更新。
Unmatched Field Behavior
未匹配的字段行為,自己根據要求進行選擇。未匹配的字段行為,自己根據要求進行選擇策略。
Unmatched Field Behavior
?如果傳入記錄沒有數據庫表的所有列的字段映射,該屬性指定如何處理這種情況。
其他屬性如果感興趣的可以自行嘗試配置。
5、大功告成,查看表my_user,數據已經寫入,這里為了演示方便,所以user_id 沒有設置唯一健。