Castled 源码解析 - connector 模块WarehousePollContext 说明

2022/2/1 1:10:42

本文主要是介绍Castled 源码解析 - connector 模块WarehousePollContext 说明,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

connector模块中的WarehousePollContext是比较重要的

代码说明

  • 关于pipeline 格式的定义
    了解pipeline格式定义,对于分析后边的代码是很有意义的,可以知道依赖的模块
 
public class PipelineConfigDTO {
 
    @NotNull
    private String name; // 名称
 
    @NotNull
    private JobSchedule schedule; // 调度信息,主要是关于任务调度的
 
    @NotNull
    private Long appId; // 关联的appid,外部服务在Castled 中称之为app
 
    @NotNull
    private Long warehouseId; // 配置的warehouse 定义
 
    @NotNull
    private String sourceQuery; // 数据查询sql
 
    @NotNull
    private QueryMode queryMode; // 处理模式,全量以及增量
 
    private AppSyncConfig appSyncConfig; // 关于app 的一些配置,从定义上来说属于重复定义,因为appid 可以代表
 
    private CastledDataMapping mapping; //  datawarehouse 与app 的数据schema 映射处理(基于了cfl处理)同时注意Castled 是需要主键的,这个在好多reverse ETL 都有说明
 
}
  • WarehousePollContext定义
    WarehousePollContext 在poller 中是比较重要的,poller大部分都是需要依赖此对象的数据进行处理的,依赖上边定义的pipeline参数
 
public class WarehousePollContext {
 
    private WarehouseConfig warehouseConfig;
    private List<String> primaryKeys;
    private String query;
 
    private QueryMode queryMode;
 
    //uuid and not the incrementing id;
    private String pipelineUUID;
 
    private Long pipelineId;
    private Long pipelineRunId;
 
    private String dataEncryptionKey;
 
    private RecordSchema warehouseSchema;
}

说明

pipeline 以及context 是将app 以及poller 关联的对象,是比较重要的,后续web app 会用到这些

参考资料

https://github.com/castledio/castled
https://oss-docs.castled.io/



这篇关于Castled 源码解析 - connector 模块WarehousePollContext 说明的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程