Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
159 commits
Select commit Hold shift + click to select a range
6cfd7cc
Fix data loss bug
lijiangbo Mar 6, 2019
a91a68e
Fix get max value error
lijiangbo Mar 7, 2019
62b8480
Initialization variable when close format
lijiangbo Mar 11, 2019
837a3f1
Fix build sql error
lijiangbo Mar 11, 2019
c990acb
Fix get max value error
lijiangbo Mar 11, 2019
8f65d70
Fix type convert error
lijiangbo Mar 11, 2019
66f329b
Remove e.printStack()
lijiangbo Mar 11, 2019
a89827d
Remove e.printStack()
lijiangbo Mar 11, 2019
83cc1a2
add log
lijiangbo Mar 12, 2019
aa8749f
Optimized Code
lijiangbo Mar 12, 2019
cfeb2e3
Revert and return exception msg
lijiangbo Mar 12, 2019
f16c84f
Merge branch '1.5_v3.3.0' of http://git.dtstack.cn/dtstack/dt-center-…
lijiangbo Mar 12, 2019
e4aec2d
Revert "Optimized Code"
lijiangbo Mar 12, 2019
b46d8a8
Fix bug of writing data to MaxCompute
lijiangbo Mar 12, 2019
dbecd59
Merge remote-tracking branch 'origin/1.5_v3.3.1' into 1.5_v3.6.0
lijiangbo Mar 13, 2019
45bd401
Revert code
lijiangbo Mar 13, 2019
d696f40
add group
Mar 14, 2019
0f5518c
Get max value in one channel
lijiangbo Mar 14, 2019
d2b4542
Merge remote-tracking branch 'origin/1.5_v3.3.1' into 1.5_v3.6.0
lijiangbo Mar 14, 2019
5b80f5f
The ORC format supports binary type writes
lijiangbo Mar 15, 2019
9107399
fix
Mar 15, 2019
9a3f20b
Not convert type to string when write to ES
lijiangbo Mar 18, 2019
92a37be
Merge branch '1.5_v3.7.0' of http://git.dtstack.cn/dtstack/dt-center-…
Mar 18, 2019
2eedb65
comment
Mar 18, 2019
08901dc
Convert string type to the specified type
lijiangbo Mar 18, 2019
984bfd4
Convert type to the specified type
lijiangbo Mar 18, 2019
d8e878e
返回值区分null和空字符串
lijiangbo Mar 18, 2019
0cee211
Merge branch 'feature_1.5_v3.4.1_Bug_14722' into '1.5_v3.4.1'
zoudaokoulife Mar 18, 2019
261e44d
null值也写入es
lijiangbo Mar 18, 2019
97c2a87
Merge branch 'feature_1.5_v3.3.3_es_col_type' into '1.5_v3.3.3'
zoudaokoulife Mar 18, 2019
2b6a1f0
使用内置flink实现
Mar 18, 2019
5b31f77
metric
Mar 18, 2019
4c35e02
Merge remote-tracking branch 'origin/1.5_v3.4.0' into 1.5_v3.4.1
lijiangbo Mar 19, 2019
d53658b
Merge remote-tracking branch 'origin/1.5_v3.5.0' into 1.5_v3.6.0
lijiangbo Mar 19, 2019
e766f4c
检查connection是否关闭
lijiangbo Mar 19, 2019
9912f6c
异常关闭连接
lijiangbo Mar 19, 2019
93a11de
Revert "异常关闭连接"
lijiangbo Mar 19, 2019
b309788
Merge branch 'feature_1.5_3.3.3_hbase_conn' into '1.5_v3.3.3'
zoudaokoulife Mar 19, 2019
7a6c710
去掉重复开启的ByteLimiter
lijiangbo Mar 19, 2019
4535842
支持自定义sql查询
lijiangbo Mar 19, 2019
844a0df
add telnet retry
Mar 19, 2019
edd45de
add telnet retry
Mar 19, 2019
4f775b6
Merge branch '1.5_v3.3.3_add_telnet_retry' into '1.5_v3.3.3'
zoudaokoulife Mar 19, 2019
84ead16
es批量写入bug和hdfs orc读取问题
lijiangbo Mar 19, 2019
c0fc430
Merge branch 'feature_1.5_v3.3.3_bulk_request' into '1.5_v3.3.3'
zoudaokoulife Mar 19, 2019
d36d04b
hbaseConfig类序列化问题
lijiangbo Mar 19, 2019
96af44f
Merge branch 'feature_1.5_v3.3.3_hbaseConfig' into '1.5_v3.3.3'
Mar 19, 2019
3fdcede
减少odps的重试次数为3
lijiangbo Mar 20, 2019
d16547e
Merge remote-tracking branch 'origin/1.5_v3.3.3' into 1.5_v3.5.1
lijiangbo Mar 20, 2019
7359934
Merge branch 'feature_1.5_3.4.1_odps_retry_times' into '1.5_v3.4.1'
zoudaokoulife Mar 20, 2019
ef06121
Merge branch 'feature_1.5_v3.6.0_customSql' into '1.5_v3.6.0'
zoudaokoulife Mar 20, 2019
f3382c1
Merge branch 'feature_1.5_3.6.0_check_byte_limiter' into '1.5_v3.6.0'
zoudaokoulife Mar 20, 2019
1ec9bcc
Merge remote-tracking branch 'origin/1.5_v3.3.3' into 1.5_v3.6.0
lijiangbo Mar 20, 2019
5320806
Merge remote-tracking branch 'origin/1.5_v3.3.3' into 1.5_v3.4.1
lijiangbo Mar 20, 2019
1a72f6b
修复mongodb相关bug
lijiangbo Mar 20, 2019
149aa29
fetchSize默认值设为100
lijiangbo Mar 20, 2019
8430486
bufferSize参数提出
lijiangbo Mar 21, 2019
8e523c7
add gauge for count
Mar 21, 2019
24f6390
测试 promethues 数据的准确性
Mar 21, 2019
babc965
hdfs orc读取类型转换
lijiangbo Mar 22, 2019
d0b7b9a
close时更新errorInfo异常捕获
lijiangbo Mar 22, 2019
f0d2de1
Merge branch 'feature_1.5_v3.3.3_hdfsOrcType' into '1.5_v3.3.3'
lijiangbo Mar 22, 2019
8210ff3
Merge remote-tracking branch 'origin/1.5_v3.3.3' into 1.5_v3.4.3
lijiangbo Mar 22, 2019
69abb63
Merge remote-tracking branch 'origin/1.5_v3.4.3' into 1.5_v3.5.1
lijiangbo Mar 22, 2019
44aa8f0
自定义sql时descColumnTypeList不根据表名获取
lijiangbo Mar 22, 2019
965c0fe
Merge remote-tracking branch 'origin/1.5_v3.5.1' into 1.5_v3.6.0
lijiangbo Mar 22, 2019
9c76a56
修复string类型转为null的bug
lijiangbo Mar 22, 2019
5dfd73a
修复string类型转为null的bug
lijiangbo Mar 22, 2019
e2b72a0
修复string类型转为null的bug
lijiangbo Mar 22, 2019
6ab5ce1
Merge remote-tracking branch 'origin/1.5_v3.5.1' into 1.5_v3.6.0
lijiangbo Mar 22, 2019
fba536c
Merge branch 'feature_1.5_v3.6.0_customsql_fix' into '1.5_v3.6.0'
lijiangbo Mar 23, 2019
1b074ed
Merge branch 'feature_1.5_v3.3.3_close_error' into '1.5_v3.3.3'
zoudaokoulife Mar 23, 2019
e4a50f3
Merge branch 'feature_1.5_v3.6.0_odps_oom' into '1.5_v3.6.0'
zoudaokoulife Mar 23, 2019
b92d5be
Merge remote-tracking branch 'origin/1.5_v3.3.3' into 1.5_v3.4.3
lijiangbo Mar 23, 2019
13bff6c
Merge remote-tracking branch 'origin/1.5_v3.4.3' into 1.5_v3.5.1
lijiangbo Mar 23, 2019
e12bd02
Merge remote-tracking branch 'origin/1.5_v3.5.1' into 1.5_v3.6.0
lijiangbo Mar 23, 2019
21a3736
Merge branch '1.5_v3.6.0' of http://git.dtstack.cn/dtstack/dt-center-…
lijiangbo Mar 23, 2019
1d78f67
修复Date类型转Timestamp报错
lijiangbo Mar 25, 2019
aef7300
es reader 添加index 和 type 选项
zoudaokoulife Mar 27, 2019
af24289
处理es 读取数据重复问题和读取的时候数组越界问题
zoudaokoulife Mar 27, 2019
5e52dc4
Merge branch '1.5_v3.4.2_es_reader_no_index' into '1.5_v3.4.2'
lijiangbo Mar 28, 2019
567a36d
Merge branch 'feature_1.5_v3.4.3_date_2_timestamp' into '1.5_v3.4.3'
lijiangbo Mar 28, 2019
38ffdfc
Merge branch 'feature_1.5_v3.6.0_mongodb' into '1.5_v3.6.0'
zoudaokoulife Mar 28, 2019
b7dd82d
Revert "Merge branch '1.5_v3.4.2_es_reader_no_index' into '1.5_v3.4.2' "
zoudaokoulife Mar 28, 2019
93b62b4
添加一个空行
zoudaokoulife Mar 28, 2019
9a8c5de
Merge branch '1.5_v3.4.2_es_reader_no_index' into '1.5_v3.4.2.1'
lijiangbo Mar 28, 2019
c7b92e1
Merge branch '1.5_v3.4.2' into 1.5_v3.4.2_es_reader_no_index_2
zoudaokoulife Mar 28, 2019
7f0abdb
Merge branch '1.5_v3.4.2_es_reader_no_index_2' into '1.5_v3.4.2.1'
lijiangbo Mar 28, 2019
1bed994
es reader 添加index 和 type 选项
zoudaokoulife Mar 27, 2019
e8b12e4
处理es 读取数据重复问题和读取的时候数组越界问题
zoudaokoulife Mar 27, 2019
0c210ac
Merge branch '1.5_v3.4.2.1_es_reader_no_index' into '1.5_v3.4.2.1'
lijiangbo Mar 28, 2019
b38a86a
Merge branch '1.5_v3.4.2.1' into 1.5_v3.4.3
zoudaokoulife Mar 28, 2019
4b3eb18
period
Mar 28, 2019
53151d2
mill
Mar 28, 2019
efa8dd6
fix多通道不指定切分键数据重复问题
lijiangbo Mar 29, 2019
b9db2d5
修复Date类型转Timestamp报错
lijiangbo Mar 25, 2019
1e92a02
Merge remote-tracking branch 'origin/1.5_v3.4.2.1' into 1.5_v3.4.3
lijiangbo Mar 30, 2019
0287789
hdfs orc读取类型转换
lijiangbo Mar 22, 2019
effab08
修复string类型转为null的bug
lijiangbo Mar 22, 2019
7bd26d4
Merge remote-tracking branch 'origin/1.5_v3.4.2.1' into 1.5_v3.4.3
lijiangbo Mar 30, 2019
a83da00
Merge remote-tracking branch 'origin/1.5_v3.4.3' into 1.5_v3.5.1
lijiangbo Apr 1, 2019
fcda6b5
Merge remote-tracking branch 'origin/1.5_v3.5.1' into 1.5_v3.6.0
lijiangbo Apr 1, 2019
23f9fb4
Revert "Merge remote-tracking branch 'origin/1.5_v3.4.3' into 1.5_v3.…
lijiangbo Apr 1, 2019
8fe306c
Merge branch 'revert-a83da00d' into '1.5_v3.5.1'
lijiangbo Apr 1, 2019
238b105
修复Date类型转Timestamp报错
lijiangbo Mar 25, 2019
5f8ac1d
Merge 1.5_v3.4.3 into 1.5_v3.5.2
lijiangbo Apr 1, 2019
9f55a37
Merge remote-tracking branch 'origin/1.5_v3.5.2' into 1.5_v3.6.0
lijiangbo Apr 1, 2019
6e5c11a
使用HttpClient代替Url.open
lijiangbo Apr 1, 2019
36ec6e5
多通道不指定切分键时抛出异常
lijiangbo Apr 1, 2019
674d8c0
put data to dfs
Apr 1, 2019
9e0bfb9
Merge branch 'feature_1.5_v3.3.4_no_splitKey' into '1.5_v3.3.4'
zoudaokoulife Apr 1, 2019
ca7d067
fix close error
Apr 1, 2019
4124cc4
Merge branch '1.5_v3.3.4_close_connect_error' into '1.5_v3.3.4'
lijiangbo Apr 1, 2019
35401d2
Merge branch '1.5_v3.3.4' into 1.5_v3.4.3
Apr 1, 2019
b1a6d9d
Merge branch '1.5_v3.4.3' into 1.5_v3.5.3
Apr 1, 2019
2a12625
Merge branch '1.5_v3.5.3' into 1.5_v3.6.0
Apr 1, 2019
3ac00b4
merge v3.7.0
Apr 1, 2019
9b9f364
Merge remote-tracking branch 'origin/1.5_dev' into feature_1.5_v3.7.0…
lijiangbo Apr 1, 2019
58aa55b
test hdfs metric ok
Apr 1, 2019
bef0ff7
path
Apr 2, 2019
8a858d8
test interval
Apr 2, 2019
c5b5549
Merge branch '1.5_v3.7.0_notdependencycontext' into '1.5_dev'
lijiangbo Apr 2, 2019
7494335
添加git.branch
lijiangbo Apr 8, 2019
eaa0091
rename method name
lijiangbo Apr 9, 2019
88c14f0
解决carbon分区表缺少分区字段问题
Apr 9, 2019
2f9efac
Merge branch '1.5_dev_解决carbon分区表缺少分区字段问题' into '1.5_dev'
Apr 9, 2019
c96819c
Merge branch 'feature_1.5_useHttpClient' into '1.5_dev'
zoudaokoulife Apr 9, 2019
e46f1a2
Merge branch 'feature_1.5_gitbranch' into '1.5_dev'
zoudaokoulife Apr 9, 2019
6bb513c
es连接参数可配置
lijiangbo Apr 9, 2019
845b2d2
timeout单位改为秒
lijiangbo Apr 9, 2019
a5f8883
对批量写入es结果进行处理
lijiangbo Apr 10, 2019
eeb16a5
多通道时检查切分键
lijiangbo Apr 10, 2019
a39e1f0
Merge branch 'feature_1.5_bug10999' into '1.5_dev'
lijiangbo Apr 10, 2019
2f31308
Merge branch 'feature_1.5_esClientConf' into '1.5_dev'
zoudaokoulife Apr 11, 2019
fa5746a
writerConfig里jdbcUrl格式兼容
lijiangbo Apr 11, 2019
d547958
Merge branch 'feature_1.5_jdbcUrlFormat' into '1.5_dev'
lijiangbo Apr 11, 2019
a44ed25
过滤条件空串判断
lijiangbo Apr 11, 2019
dc4e56e
fix hdfs读取text格式文件多"\u0000"的bug
lijiangbo Apr 18, 2019
6e3a42b
Merge branch 'feature_1.5_dev_hdfs_text_bug' into '1.5_dev'
zoudaokoulife Apr 18, 2019
56578a8
编译打包前删除原有jar包
lijiangbo Apr 18, 2019
aadeae1
fix读取parquet表bug
lijiangbo Apr 19, 2019
5aab48a
Merge branch 'feature_v1.5_dev_delete_old_jar' into '1.5_dev'
zoudaokoulife Apr 26, 2019
feed7c6
fix禁用取max值功能
lijiangbo Apr 25, 2019
f5c5ead
fix npe
lijiangbo Apr 25, 2019
90f45f7
fix npe
lijiangbo Apr 25, 2019
fc1e096
fix
lijiangbo Apr 26, 2019
4b8636d
fix useMaxFunc为false时sql拼接问题
lijiangbo Apr 26, 2019
74f186b
useMaxFunc为false时不读取边界值
lijiangbo Apr 26, 2019
4a00a1d
fix column to string
lijiangbo Apr 28, 2019
5263a88
Merge branch 'feature_1.5_dev_col2String' into '1.5_dev'
lijiangbo Apr 28, 2019
0644757
fix column to string
lijiangbo Apr 28, 2019
ec0ad26
Merge branch 'feature_1.5_dev_col2String' into '1.5_dev'
lijiangbo Apr 28, 2019
ac2af6a
区分date和datetime
lijiangbo Apr 28, 2019
0c5871b
oracle增量字段区分date和timestamp类型
lijiangbo Apr 29, 2019
88b6dd1
修改oracle增量字段date类型的日期格式
lijiangbo May 5, 2019
2ab453d
获取coreJar名称
lijiangbo May 6, 2019
9ab08d4
更新文档
lijiangbo May 8, 2019
e0fb86b
更新文档
lijiangbo May 9, 2019
e1788e9
Merge branch 'update_doc' into '1.5_dev'
zoudaokoulife May 9, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
115 changes: 54 additions & 61 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,24 @@

* **FlinkX是在是袋鼠云内部广泛使用的基于flink的分布式离线数据同步框架,实现了多种异构数据源之间高效的数据迁移。**


不同的数据源头被抽象成不同的Reader插件,不同的数据目标被抽象成不同的Writer插件。理论上,FlinkX框架可以支持任意数据源类型的数据同步工作。作为一套生态系统,每接入一套新数据源该新加入的数据源即可实现和现有的数据源互通。

<div align=center>
<img src=docs/images/template.png width=400 />
<img src=docs/images/template.png width=400 />
</div>

## 2 工作原理

在底层实现上,FlinkX依赖Flink,数据同步任务会被翻译成StreamGraph在Flink上执行,工作原理如下图:

<div align=center>
<img src=docs/images/diagram.png width=600 />
<img src=docs/images/diagram.png width=600 />
</div>

## 3 快速起步

### 3.1 运行模式


* 单机模式:对应Flink集群的单机模式
* standalone模式:对应Flink集群的分布式模式
* yarn模式:对应Flink集群的yarn模式
Expand All @@ -34,7 +32,6 @@
* Flink集群: 1.4及以上(单机模式不需要安装Flink集群)
* 操作系统:理论上不限,但是目前只编写了shell启动脚本,用户可以可以参考shell脚本编写适合特定操作系统的启动脚本。


### 3.3 打包

进入项目根目录,使用maven打包:
Expand All @@ -50,39 +47,46 @@ mvn clean package -Dmaven.test.skip
#### 3.4.1 命令行参数选项

* **model**
* 描述:执行模式,也就是flink集群的工作模式
* local: 本地模式
* standalone: 独立部署模式的flink集群
* yarn: yarn模式的flink集群
* 必选:否
* 默认值:local

* 描述:执行模式,也就是flink集群的工作模式
* local: 本地模式
* standalone: 独立部署模式的flink集群
* yarn: yarn模式的flink集群,需要提前在yarn上启动一个flink session,使用默认名称"Flink session cluster"
* 必选:否
* 默认值:local

* **job**
* 描述:数据同步任务描述文件的存放路径;该描述文件中使用json字符串存放任务信息。
* 必选:是
* 默认值:无


* 描述:数据同步任务描述文件的存放路径;该描述文件中使用json字符串存放任务信息。
* 必选:是
* 默认值:无

* **plugin**
* 描述:插件根目录地址,也就是打包后产生的plugins目录。
* 必选:是
* 默认值:无


* 描述:插件根目录地址,也就是打包后产生的plugins目录。
* 必选:是
* 默认值:无

* **flinkconf**
* 描述:flink配置文件所在的目录(单机模式下不需要),如/hadoop/flink-1.4.0/conf
* 必选:否
* 默认值:无


* 描述:flink配置文件所在的目录(单机模式下不需要),如/hadoop/flink-1.4.0/conf
* 必选:否
* 默认值:无

* **yarnconf**
* 描述:Hadoop配置文件(包括hdfs和yarn)所在的目录(单机模式下不需要),如/hadoop/etc/hadoop
* 必选:否
* 默认值:无

* 描述:Hadoop配置文件(包括hdfs和yarn)所在的目录(单机模式下不需要),如/hadoop/etc/hadoop
* 必选:否
* 默认值:无

#### 3.4.2 启动数据同步任务

* **以本地模式启动数据同步任务**

```
bin/flinkx -mode local -job /Users/softfly/company/flink-data-transfer/jobs/task_to_run.json -plugin /Users/softfly/company/flink-data-transfer/plugins
```

* **以standalone模式启动数据同步任务**

```
Expand All @@ -101,12 +105,13 @@ bin/flinkx -mode yarn -job /Users/softfly/company/flinkx/jobs/mysql_to_mysql.jso

```
{
"job": {
"setting": {...},
"content": [...]
}
"job": {
"setting": {...},
"content": [...]
}
}
```

数据同步任务包括一个job元素,而这个元素包括setting和content两部分。

* setting: 用于配置限速、错误控制和脏数据管理
Expand All @@ -115,12 +120,13 @@ bin/flinkx -mode yarn -job /Users/softfly/company/flinkx/jobs/mysql_to_mysql.jso
### 4.1 setting

```
"setting": {
"speed": {...},
"errorLimit": {...},
"dirty": {...}
}
"setting": {
"speed": {...},
"errorLimit": {...},
"dirty": {...}
}
```

setting包括speed、errorLimit和dirty三部分,分别描述限速、错误控制和脏数据管理的配置信息

#### 4.1.1 speed
Expand All @@ -133,7 +139,7 @@ setting包括speed、errorLimit和dirty三部分,分别描述限速、错误
```

* channel: 任务并发数
* bytes: 每秒字节数,默认为0(不限速)
* bytes: 每秒字节数,默认为 Long.MAX_VALUE

#### 4.1.2 errorLimit

Expand All @@ -150,7 +156,7 @@ setting包括speed、errorLimit和dirty三部分,分别描述限速、错误
#### 4.1.3 dirty

```
"dirty": {
"dirty": {
"path": "/tmp",
"hadoopConfig": {
"fs.default.name": "hdfs://ns1",
Expand All @@ -176,18 +182,17 @@ setting包括speed、errorLimit和dirty三部分,分别描述限速、错误
"reader": {
"name": "...",
"parameter": {
...
...
}
},
"writer": {
"name": "...",
"parameter": {
...
...
}
}
}
]

```

* reader: 用于读取数据的插件的信息
Expand All @@ -203,46 +208,34 @@ reader和writer包括name和parameter,分别表示插件名称和插件参数

### 5.1 读取插件

* [MySQL读取插件](docs/mysqlreader.md)
* [MySQL分库分表读取插件](docs/mysqldreader.md)
* [Oracle读取插件](docs/oraclereader.md)
* [SQLServer读取插件](docs/sqlserverreader.md)
* [关系数据库读取插件](docs/rdbreader.md)
* [分库分表读取插件](docs/rdbdreader.md)
* [HDFS读取插件](docs/hdfsreader.md)
* [HBase读取插件](docs/hbasereader.md)
* [Elasticsearch读取插件](docs/esreader.md)
* [Ftp读取插件](docs/ftpreader.md)
* [Odps读取插件](docs/odpsreader.md)
* [PostgreSQL读取插件](docs/postgresqlreader.md)
* [MongoDB读取插件](docs/mongodbreader.md)
* [DB2读取插件](docs/db2reader.md)
* [Stream读取插件](docs/streamreader.md)
* [Carbondata读取插件](docs/carbondatareader.md)

### 5.2 写入插件

* [MySQL写入插件](docs/mysqlwriter.md)
* [Oracle写入插件](docs/oraclewriter.md)
* [SQLServer写入插件](docs/sqlserverwriter.md)
* [关系数据库写入插件](docs/rdbwriter.md)
* [HDFS写入插件](docs/hdfswriter.md)
* [HBase写入插件](docs/hbasewriter.md)
* [Elasticsearch写入插件](docs/eswriter.md)
* [Ftp写入插件](docs/ftpwriter.md)
* [Odps写入插件](docs/odpswriter.md)
* [PostgreSQL写入插件](docs/postgresqlwriter.md)
* [MongoDB写入插件](docs/mongodbwriter.md)
* [Redis写入插件](docs/rediswriter.md)
* [DB2写入插件](docs/db2writer.md)
* [Stream写入插件](docs/streamwriter.md)
* [Carbondata写入插件](docs/carbondatawriter.md)

## 6.版本说明
1.flinkx的分支版本跟flink的版本对应,比如:flinkx v1.4.0 对应 flink1.4.0,现在支持flink1.4和1.5

1.flinkx的分支版本跟flink的版本对应,比如:flinkx v1.4.0 对应 flink1.4.0,现在支持flink1.4和1.5

## 7.招聘信息
1.大数据平台开发工程师,想了解岗位详细信息可以添加本人微信号ysqwhiletrue,注明招聘,如有意者发送简历至sishu@dtstack.com。









1.大数据平台开发工程师,想了解岗位详细信息可以添加本人微信号ysqwhiletrue,注明招聘,如有意者发送简历至sishu@dtstack.com。
152 changes: 0 additions & 152 deletions docs/db2reader.md

This file was deleted.

Loading