ETL工具 etl-engine 能嵌入go語言進行開發的ETL產品
總體結構圖
第三方系統呼叫etl-engine
-
etl-crontab暴露Http/Https API介面
第三方系統可透過Http/Https方式呼叫上述介面執行etl-engine
-
etl-engine執行HttpInput節點實現阻塞模式
第三方系統可透過Http/Https方式向etl-engine提交資料
-
etl-engine執行MQ消費者節點實現阻塞模式
第三方系統可透過MQ生產者向etl-engine傳送訊息資料
etl-engine實現嵌入指令碼
指令碼編寫規則
-
根據對應標籤名稱去實現相應的介面,如上所述標籤名稱:
<BeforeOut/> <AfterOut/> <BeforeRun/>
-
指令碼內包名稱格式固定
package ext
-
根據實際需要引入常用工具包
import ( "errors" "fmt" "strconv" "time" "github.com/tidwall/gjson" "github.com/tidwall/sjson" "etl-engine/etl/tool/extlibs/common" )
-
實現對應的介面
func RunScript() (result bool, topErr error) { fmt.Println("common.GlobalVar.Vint:",common.GlobalVar.Vint) if ( common.GlobalVar.Vint < 8 ){ fmt.Println("返回false") return false,nil }else{ fmt.Println("返回true") return true,nil } }
公共變數
1. 公共變數的生命週期作用於每個etl-engine任務執行開始到執行結束之間。
2. 引入包 "etl-engine/etl/tool/extlibs/common"
3. 該包所提供的公共變數
- GlobalVar
Vint int64 Vbool bool Vstring string Vfloat float64 Vmap map[string]string Vinteface interface{} ViArray []int64 VsArray []string VbArray []bool VfArray []float64
4. 指令碼中呼叫公共變數
common.GlobalVar.Vint = common.GlobalVar.Vint + 1 fmt.Println("common.GlobalVar.Vint:",common.GlobalVar.Vint)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024931/viewspace-2929319/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 國產ETL工具 etl-engine
- 國產ETL etl-engine 視覺化 輕量級 跨平臺 支援動態解析GO語言指令碼視覺化Go指令碼
- 支援國產ETL etl-engine 用go寫的輕量級etl引擎 方便整合到各企業中Go
- 國產 ETL工具 ETL產品 資料交換系統
- etl 增量對比解決方案 etl-engine 如何實現增量對比
- ETL 是什麼 ETL 工具有哪些 ETL 工具對比 engine
- ETL介紹與ETL工具比較
- 流批一體資料交換引擎 etl-engine
- 使用ETL進行資料接入的方式
- SQL Server如何配置cdc進行ETLSQLServer
- 利用SSIS進行SharePoint 列表資料的ETL
- go語言開發有哪些工具Go
- ETL工具(kettl)使用系列(一)
- Go語言開發的PaaS工具有哪些?go學習Go
- 五款最棒的Go語言開發工具?Go
- 使用go語言開發hive匯出工具GoHive
- 主流的開源ETL工具清單及優劣說明!
- airflow 進行後端大資料中ETL處理(草稿)AI後端大資料
- 試用完幾十款ETL工具後的經驗總結,ETL工具用這三款就足夠了
- ETL+BI結合的資料整合工具
- ETL 幾種工具的比較(Kettle,Talend,Informatica )ORM
- NoSQL為什麼需要模式自由的ETL工具 ?SQL模式
- ETL需求要求
- ETL資料整合平臺,RestCloud視覺化ETLRESTCloud視覺化
- JetBrains GoLand 2022 GO語言整合開發工具環境AIGoLand
- GO語言整合開發工具環境:JetBrains GoLand 2022AIGoLand
- Go 語言開發工具 LiteIDE X35 釋出,支援 Go modulesGoIDE
- go語言安卓開發Go安卓
- 使用go語言開發自動化API測試工具GoAPI
- GoLand 2022(GO語言整合開發工具環境)mac版GoLandMac
- JetBrains GoLand 2022 for Mac(GO語言整合開發工具環境)AIGoLandMac
- 我給 ”Go 語言“ 開發了 6 個線上工具Go
- 典型的ETL使用場景
- ETL指令碼的實現指令碼
- 【ETL工具】DataX + DataXWeb 初使用過程記錄Web
- 一文了解主流大資料ETL工具大資料
- AI輔助Kano模型進行產品開發AI模型
- ETL是什麼?淺談ETL對資料倉儲的重要性