connector 属于Castled 一个比较核心的东西,包含了核心部分的datawarehouse数据poll 处理,同时也包含了对于不同外部服务集成的处理

当然才代码中我们也可以看到一部分基于stream 的处理(文件,jdbc,s3.。。。),auth部分基于了oauth目前更多是关注认证,但是没有授权的处理

以下主要说明下关于jdbc 的处理以及数据poll的处理,关于外部集成部分后边单独介绍(属于一个重点)

代码结构


├── LICENSE.md
├── javadoc
│   └── README.md
├── pom.xml
└── src
├── main
│   └── java
│       └── io
│           └── castled
│               ├── OptionsReferences.java
│               ├── apps
│               ├── cache
│               ├── commons // 异常以及模型,同时包含了stream 的处理(主要处理csv以及json格式的)
│               ├── constants
│               ├── dtos
│               ├── exceptions
│               ├── filestorage // 基于对象存储的处理(目前主要是aws 以及gcs)
│               ├── jdbc  // jdbc 访问处理,包含链接管理以及ssh tunnel 的集成
│               ├── models
│               ├── oauth
│               ├── optionsfetchers
│               ├── services
│               ├── utils
│               └── warehouses // 包含了关于基于pg datawarehouse 的处理,核心
└── test
└── java
└── io
└── castled
├── AppTest.java
└── warehouses


代码说明

  • 核心组件
    包含了connector 以及poller

connector 组件关系

Castled 源码解析 - connector 模块connector以及poller说明_java



poller

Castled 源码解析 - connector 模块connector以及poller说明_java_02



poller 依赖的RecordInputStream

RecordInputStream类继承关系

Castled 源码解析 - connector 模块connector以及poller说明_数据_03



说明

以上主要简单介绍关于connector以及poller说明,后边会详细说明下内部实现细节

参考资料

​https://github.com/castledio/castled​

​https://oss-docs.castled.io/getting-started/Pipelines/overview​