From 22db0208d9ca8720831d0f6b50c85233c73bcbd0 Mon Sep 17 00:00:00 2001 From: wgzhao Date: Mon, 6 Nov 2023 19:34:00 +0800 Subject: [PATCH] [improve][docs] improve docs (#941) --- docs/reader/accessreader.md | 4 +-- docs/reader/databendreader.md | 28 +++------------- docs/reader/mysqlreader.md | 47 ++++----------------------- docs/reader/oraclereader.md | 57 ++------------------------------- docs/reader/postgresqlreader.md | 30 +---------------- docs/reader/rdbmsreader.md | 51 ++++++++++++++++++----------- docs/reader/sqlitereader.md | 27 ++-------------- docs/reader/sqlserverreader.md | 35 +++----------------- docs/reader/sybasereader.md | 33 +------------------ docs/reader/tdenginereader.md | 12 +++---- docs/writer/accesswriter.md | 5 +-- docs/writer/clickhousewriter.md | 11 +------ docs/writer/databendwriter.md | 33 ++++++------------- docs/writer/greenplumwriter.md | 24 +------------- docs/writer/mysqlwriter.md | 35 ++++---------------- docs/writer/oraclewriter.md | 40 +++-------------------- docs/writer/rdbmswriter.md | 26 ++++++++++++--- docs/writer/sqlserverwriter.md | 27 ++++------------ docs/writer/sybasewriter.md | 23 +------------ docs/writer/tdenginewriter.md | 11 +------ 20 files changed, 113 insertions(+), 446 deletions(-) diff --git a/docs/reader/accessreader.md b/docs/reader/accessreader.md index b7022dc24..76a354a49 100644 --- a/docs/reader/accessreader.md +++ b/docs/reader/accessreader.md @@ -26,7 +26,5 @@ bin/addax.sh job/access2stream.json ## 参数说明 -因本插件基于[Addax RDBMS Reader][2] 实现,所以参数说明请参考 [Addax RDBMS Reader][2]。 +AccessReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 -[1]: https://en.wikipedia.org/wiki/Microsoft_Access -[2]: ../rdbmsreader \ No newline at end of file diff --git a/docs/reader/databendreader.md b/docs/reader/databendreader.md index 0cccbb5ce..e190b0d84 100644 --- a/docs/reader/databendreader.md +++ b/docs/reader/databendreader.md @@ -3,6 +3,7 @@ DatabendReader 插件实现了从 [Databend](https://databend.rs) 读取数据 注意,databender 有兼容 MySQL 客户端的协议实现,因此你可以直接使用 [mysqlreader](../mysqlreader) 来读取 Databend 数据。 + ## 示例 我们可以通过如下方式启动 Databend 数据库 @@ -49,29 +50,8 @@ bin/addax.sh job/databend2stream.json ## 参数说明 -| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | -| :-------------- | :------: | ------ |------------- |--------------| -| jdbcUrl | 是 | list | 无 | 对端数据库的JDBC连接信息 | -| username | 是 | string | 无 | 数据源的用户名 | -| password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | list | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述 [rdbmreader](../rdbmsreader) | -| where | 否 | string | 无 | 针对表的筛选条件 | -| querySql | 否 | list | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | - - -## 类型转换 - -目前MysqlReader支持大部分Mysql类型,但也存在部分个别类型没有支持的情况,请注意检查你的类型。 - -下面列出MysqlReader针对Mysql类型转换列表: +DatabendReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 -| Addax 内部类型| MySQL 数据类型 | -| -------- | ----- | -| Long |int, tinyint, smallint, mediumint, int, bigint| -| Double |float, double, decimal| -| String |varchar, char, tinytext, text, mediumtext, longtext, year | -| Date |date, datetime, timestamp, time | -| Boolean |bit, bool | -| Bytes |tinyblob, mediumblob, blob, longblob, varbinary | +## 限制 +暂无 \ No newline at end of file diff --git a/docs/reader/mysqlreader.md b/docs/reader/mysqlreader.md index 399cf4b66..5d042f4a6 100644 --- a/docs/reader/mysqlreader.md +++ b/docs/reader/mysqlreader.md @@ -1,6 +1,6 @@ # MySQL Reader -MysqlReader 插件实现了从Mysql读取数据 +MysqlReader 插件实现了从 MySQL 读取数据的能力 ## 示例 @@ -30,20 +30,7 @@ bin/addax.sh job/mysql2stream.json ## 参数说明 -| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | -| :-------------- | :------: | ------ |------------- |--------------| -| jdbcUrl | 是 | list | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接[附件控制信息][1] | -| driver | 否 | string | 无 | 自定义驱动类名,解决兼容性问题,详见下面描述 | -| username | 是 | string | 无 | 数据源的用户名 | -| password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | list | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述 [rdbmreader](../rdbmsreader) | -| splitPk | 否 | string | 无 | 使用splitPk代表的字段进行数据分片,详细描述见 [rdbmreader](../rdbmsreader)| -| autoPk | 否 | bool | false | 是否自动猜测分片主键,`3.2.6` 版本引入 | -| where | 否 | string | 无 | 针对表的筛选条件 | -| querySql | 否 | list | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | - -[1]: http://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html +MysqlReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 ### driver @@ -61,32 +48,10 @@ bin/addax.sh job/mysql2stream.json 在你的 json 文件类,配置 `"driver": "com.mysql.jdbc.Driver"` -## 类型转换 +## 类型转换注意事项 -目前MysqlReader支持大部分Mysql类型,但也存在部分个别类型没有支持的情况,请注意检查你的类型。 +* `tinyint(1)` 会视为整形 +* `year` 被视为整形 +* `bit` 如果是 `bit(1)` 被视为布尔类型,否则当作二进制类型 -下面列出MysqlReader针对Mysql类型转换列表: -| Addax 内部类型| MySQL 数据类型 | -| -------- | ----- | -| Long |int, tinyint, smallint, mediumint, int, bigint| -| Double |float, double, decimal| -| String |varchar, char, tinytext, text, mediumtext, longtext, year | -| Date |date, datetime, timestamp, time | -| Boolean |bit, bool | -| Bytes |tinyblob, mediumblob, blob, longblob, varbinary | - -请注意: - -* 除上述罗列字段类型外,其他类型均不支持 -* `tinyint(1)` Addax视作为整形 -* `year` Addax视作为字符串类型 -* `bit` Addax属于未定义行为 - -### 数据库编码问题 - -Mysql本身的编码设置非常灵活,包括指定编码到库、表、字段级别,甚至可以均不同编码。优先级从高到低为字段、表、库、实例。我们不推荐数据库用户设置如此混乱的编码,最好在库级别就统一到UTF-8。 - -MysqlReader底层使用JDBC进行数据抽取,JDBC天然适配各类编码,并在底层进行了编码转换。因此MysqlReader不需用户指定编码,可以自动获取编码并转码。 - -对于Mysql底层写入编码和其设定的编码不一致的混乱情况,MysqlReader对此无法识别,对此也无法提供解决方案,对于这类情况,`导出有可能为乱码`。 diff --git a/docs/reader/oraclereader.md b/docs/reader/oraclereader.md index b9a20b6cd..46d98e4be 100644 --- a/docs/reader/oraclereader.md +++ b/docs/reader/oraclereader.md @@ -1,6 +1,6 @@ # Oracle Reader -OracleReader 插件用于从Oracle读取数据 +OracleReader 插件用于从 Oracle 读取数据 ## 配置样例 @@ -14,38 +14,8 @@ OracleReader 插件用于从Oracle读取数据 ## 参数说明 -| 配置项 | 是否必须 | 默认值 | 描述 | -| :-------- | :------: | ------ | -------------------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接[附件控制信息][1] | -| username | 是 | 无 | 数据源的用户名 | -| password | 否 | 无 | 数据源指定用户名的密码 | -| table | 是 | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmsreader](../rdbmsreader) | -| splitPk | 否 | 无 | 使用splitPk代表的字段进行数据分片,Addax因此会启动并发任务进行数据同步,这样可以大大提供数据同步的效能 | -| autoPk | 否 | false | 是否自动猜测分片主键,`3.2.6` 版本引入 | -| where | 否 | 无 | 针对表的筛选条件 | -| querySql | 否 | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | -| fetchSize | 否 | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM | -| session | 否 | 无 | 针对本地连接,修改会话配置,详见下文 | +OracleReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 -[1]: http://www.oracle.com/technetwork/database/enterprise-edition/documentation/index.html - -### session - -控制写入数据的时间格式,时区等的配置,如果表中有时间字段,配置该值以明确告知写入 oracle 的时间格式。通常配置的参数为:`NLS_DATE_FORMAT`,`NLS_TIME_FORMAT`。其配置的值为 `json` 格式,例如: - -```json -{ - "session": [ - "alter session set NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'", - "alter session set NLS_TIMESTAMP_FORMAT='yyyy-mm-dd hh24:mi:ss'", - "alter session set NLS_TIMESTAMP_TZ_FORMAT='yyyy-mm-dd hh24:mi:ss'", - "alter session set TIME_ZONE='Asia/Chongqing'" - ] -} -``` - -注意 `"`是 `"` 的转义字符串 ## 对 GEOMETRY 类型的支持 @@ -63,25 +33,4 @@ OracleReader 插件用于从Oracle读取数据 --8<-- "assets/output/oracle_geom_reader.txt ``` -注意:该数据类型目前还处于实验支持阶段,作者对次数据类型的理解并不深刻,也未经过全面的测试,请勿直接在生产环境使用。 - -## 类型转换 - -| Addax 内部类型 | Oracle 数据类型 | -| -------------- |------------------------------------------------------------------------------------------------| -| Long | NUMBER, INTEGER, INT, SMALLINT | -| Double | NUMERIC, DECIMAL, FLOAT, DOUBLE PRECISION, REAL | -| String | LONG ,CHAR, NCHAR, VARCHAR, VARCHAR2, NVARCHAR2, CLOB, NCLOB, CHARACTER, STRUCT | -| String | CHARACTER VARYING, CHAR VARYING, NATIONAL CHARACTER, NATIONAL CHAR, NATIONAL CHARACTER VARYING | -| String | NATIONAL CHAR VARYING, NCHAR VARYING | -| Date | TIMESTAMP, DATE | -| Boolean | bit, bool | -| Bytes | BLOB, BFILE, RAW, LONG RAW | - -请注意: 除上述罗列字段类型外,其他类型均不支持 - -### 数据库编码问题 - -OracleReader底层使用JDBC进行数据抽取,JDBC天然适配各类编码,并在底层进行了编码转换。因此OracleReader不需用户指定编码,可以自动获取编码并转码。 - -对于Oracle底层写入编码和其设定的编码不一致的混乱情况,OracleReader对此无法识别,对此也无法提供解决方案,对于这类情况,**导出有可能为乱码**。 +注意:该数据类型目前还处于实验支持阶段,作者对此数据类型的理解并不深刻,也未经过全面的测试,请勿直接在生产环境使用。 diff --git a/docs/reader/postgresqlreader.md b/docs/reader/postgresqlreader.md index 8651df918..b22491e81 100644 --- a/docs/reader/postgresqlreader.md +++ b/docs/reader/postgresqlreader.md @@ -30,32 +30,4 @@ bin/addax.sh job/postgres2stream.json ## 参数说明 -| 配置项 | 是否必须 | 默认值 | 描述 | -| :-------- | :------: | ------ | -------------------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接 [附件控制信息][1] | -| username | 是 | 无 | 数据源的用户名 | -| password | 否 | 无 | 数据源指定用户名的密码 | -| table | 是 | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmsreader](../rdbmsreader/) | -| splitPk | 否 | 无 | 使用splitPk代表的字段进行数据分片,Addax因此会启动并发任务进行数据同步,这样可以大大提供数据同步的效能 | -| autoPk | 否 | false | 是否自动猜测分片主键,`3.2.6` 版本引入 | -| where | 否 | 无 | 针对表的筛选条件 | -| querySql | 否 | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | -| fetchSize | 否 | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM | - -[1]: http://jdbc.postgresql.org/documentation/93/connect.html - -## 类型转换 - -| Addax 内部类型 | PostgreSQL 数据类型 | -| -------------- | ---------------------------------------------------------------------- | -| Long | bigint, bigserial, integer, smallint, serial | -| Double | double precision, money, numeric, real | -| String | varchar, char, text, bit(>1), inet, cidr, macaddr, array,uuid,json,xml | -| Date | date, time, timestamp | -| Boolean | bool,bit(1) | -| Bytes | bytea | - -## 已知限制 - -除上述罗列字段类型外,其他类型均不支持; +PostgresqlReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 \ No newline at end of file diff --git a/docs/reader/rdbmsreader.md b/docs/reader/rdbmsreader.md index d06116ddf..6ff1a67ae 100644 --- a/docs/reader/rdbmsreader.md +++ b/docs/reader/rdbmsreader.md @@ -9,6 +9,8 @@ RDBMSReader 插件支持从传统 RDBMS 读取数据。这是一个通用关系 - [PostgreSQL Reader](postgresqlreader) - [ClickHouse Reader](clickhousereader) - [SQLServer Reader](sqlserverreader) +- [Access Reader](accessreader) +- [Databend Reader](databendreader) 注意, 如果已经提供了专门的数据库读取插件的,推荐使用专用插件,如果你需要读取的数据库没有专门插件,则考虑使用该通用插件。 在使用之前,还需要执行以下操作才可以正常运行,否则运行会出现异常。 @@ -45,19 +47,20 @@ RDBMSReader 插件支持从传统 RDBMS 读取数据。这是一个通用关系 ## 参数说明 -| 配置项 | 是否必须 | 数据类型 | 默认值 | 描述 | -| :-------- | :------: | -------- | ------ | -------------------------------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | array | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接附件控制信息 | -| driver | 否 | string | 无 | 自定义驱动类名,解决兼容性问题,详见下面描述 | -| username | 是 | string | 无 | 数据源的用户名 | -| password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | array | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | array | 无 | 所配置的表中需要同步的列名集合,详细描述见后 | -| splitPk | 否 | string | 无 | 使用splitPk代表的字段进行数据分片,Addax因此会启动并发任务进行数据同步,这样可以大大提供数据同步的效能,注意事项见后 | +| 配置项 | 是否必须 | 数据类型 | 默认值 | 描述 | +| :-------- | :------: | -------- | ------ | ------------------------------------------------------------------------------------------- | +| jdbcUrl | 是 | list | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接附件控制信息 | +| driver | 否 | string | 无 | 自定义驱动类名,解决兼容性问题,详见下面描述 | +| username | 是 | string | 无 | 数据源的用户名 | +| password | 否 | string | 无 | 数据源指定用户名的密码 | +| table | 是 | list | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | +| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述见后 | +| splitPk | 否 | string | 无 | 使用splitPk代表的字段进行数据分片,这样可以大大提供数据同步的效能,注意事项见后 | | autoPk | 否 | bool | false | 是否自动猜测分片主键,`3.2.6` 版本引入,详见后面描述 | -| where | 否 | string | 无 | 针对表的筛选条件 | -| querySql | 否 | string | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | -| fetchSize | 否 | int | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM | +| where | 否 | string | 无 | 针对表的筛选条件 | +| session | 是否 | list | 无 | 针对本地连接,修改会话配置,详见下文 | +| querySql | 否 | string | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,忽略 `table`,`column`配置项忽略 | +| fetchSize | 否 | int | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM | ### jdbcUrl @@ -126,6 +129,23 @@ Column必须显示填写,不允许为空! - PostgreSQL - SQL Server +### session + +控制写入数据的时间格式,时区等的配置,目前仅对 `MySQL`, `Oracle`, `SQLServer` 有效。下面是一个针对 Oracle 数据库配置 `session` 的例子。 + +```json +{ + "session": [ + "alter session set NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'", + "alter session set NLS_TIMESTAMP_FORMAT='yyyy-mm-dd hh24:mi:ss'", + "alter session set NLS_TIMESTAMP_TZ_FORMAT='yyyy-mm-dd hh24:mi:ss'", + "alter session set TIME_ZONE='Asia/Chongqing'" + ] +} +``` + +注意 `"`是 `"` 的转义字符串 + ## 类型转换 | Addax 内部类型 | RDBMS 数据类型 | @@ -136,10 +156,3 @@ Column必须显示填写,不允许为空! | Date | date, datetime, timestamp, time | | Boolean | bit, bool | | Bytes | tinyblob, mediumblob, blob, longblob, varbinary | - -## 当前支持的数据库 - -- [PrestoSQL](https://prestosql.io) -- [TDH Inceptor2](http://transwarp.io/transwarp/) -- [IBM DB2](https://www.ibm.com/analytics/db2) -- [Apache Hive](https://hive.apache.org) \ No newline at end of file diff --git a/docs/reader/sqlitereader.md b/docs/reader/sqlitereader.md index e33eb2337..0eceb1477 100644 --- a/docs/reader/sqlitereader.md +++ b/docs/reader/sqlitereader.md @@ -36,28 +36,5 @@ bin/addax.sh job/sqlite2stream.json ## 参数说明 -| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | -| :-------------- | :------: | ------ |------------- |--------------| -| jdbcUrl | 是 | list | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接[附件控制信息][1] | -| driver | 否 | string | 无 | 自定义驱动类名,解决兼容性问题,详见下面描述 | -| username | 是 | string | 无 | 数据源的用户名, 可随意配置,但不能缺失 | -| password | 否 | string | 无 | 数据源指定用户名的密码,可不配置 | -| table | 是 | list | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述 [rdbmreader](../rdbmsreader) | -| splitPk | 否 | string | 无 | 使用splitPk代表的字段进行数据分片,详细描述见 [rdbmreader](../rdbmsreader)| -| autoPk | 否 | bool | false | 是否自动猜测分片主键,`3.2.6` 版本引入 | -| where | 否 | string | 无 | 针对表的筛选条件 | -| querySql | 否 | list | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | - -[1]: http://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html - -## 类型转换 - -| Addax 内部类型| MySQL 数据类型 | -| -------- | ----- | -| Long |int, tinyint, smallint, mediumint, int, bigint| -| Double |float, double, decimal| -| String |varchar, char, tinytext, text, mediumtext, longtext, year | -| Date |date, datetime, timestamp, time | -| Boolean |bit, bool | -| Bytes |tinyblob, mediumblob, blob, longblob, varbinary | +SQLiteReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 + diff --git a/docs/reader/sqlserverreader.md b/docs/reader/sqlserverreader.md index cc718ca75..56dc2de02 100644 --- a/docs/reader/sqlserverreader.md +++ b/docs/reader/sqlserverreader.md @@ -1,10 +1,10 @@ # SQLServer Reader -SqlServerReader插件用于从从SqlServer读取数据。 +SqlServerReader 插件用于从从 SQLServer 读取数据。 ## 配置样例 -配置一个从SqlServer数据库同步抽取数据到本地的作业: +配置一个从 SQLServer 数据库同步抽取数据到本地的作业: === "job/sqlserver2stream.json" @@ -14,32 +14,5 @@ SqlServerReader插件用于从从SqlServer读取数据。 ## 参数说明 -| 配置项 | 是否必须 | 默认值 | 描述 | -| :-------------- | :------: | ------ |------------- | -| jdbcUrl | 是 | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接附件控制信息 | -| username | 是 | 无 | 数据源的用户名 | -| password | 否 | 无 | 数据源指定用户名的密码 | -| table | 是 | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmsreader](../rdbmsreader/) | -| splitPk | 否 | 无 | 使用splitPk代表的字段进行数据分片,详细描述见 [rdbmsreader](../rdbmsreader/)| -| autoPk | 否 | false | 是否自动猜测分片主键,`3.2.6` 版本引入 | -| where | 否 | 无 | 针对表的筛选条件 | -| querySql | 否 | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | -| fetchSize | 否 | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM | -| session | 否 | 无 | 针对本地连接,修改会话配置 | - -## 类型转换 - -| Addax 内部类型| SqlServer 数据类型 | -| -------- | ----- | -| Long |bigint, int, smallint, tinyint| -| Double |float, decimal, real, numeric| -| String |char,nchar,ntext,nvarchar,text,varchar,nvarchar(MAX),varchar(MAX)| -| Date |date, datetime, time | -| Boolean |bit| -| Bytes |binary,varbinary,varbinary(MAX),timestamp, image| - -请注意: - -- 除上述罗列字段类型外,其他类型均不支持 -- timestamp类型作为二进制类型 +SqlServerReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 + diff --git a/docs/reader/sybasereader.md b/docs/reader/sybasereader.md index 604d7f8ab..b0f8ba1fc 100644 --- a/docs/reader/sybasereader.md +++ b/docs/reader/sybasereader.md @@ -30,36 +30,5 @@ bin/addax.sh job/sybase2stream.json ## 参数说明 -| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | -|:----------|:----:|--------|-------|------------------------------------------------------------------| -| jdbcUrl | 是 | list | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范. | -| driver | 否 | string | 无 | 自定义驱动类名,解决兼容性问题,详见下面描述 | -| username | 是 | string | 无 | 数据源的用户名 | -| password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | list | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述 [rdbmreader](../rdbmsreader) | -| splitPk | 否 | string | 无 | 使用splitPk代表的字段进行数据分片,详细描述见 [rdbmreader](../rdbmsreader) | -| autoPk | 否 | bool | false | 是否自动猜测分片主键,`3.2.6` 版本引入 | -| where | 否 | string | 无 | 针对表的筛选条件 | -| querySql | 否 | list | 无 | 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table`,`column`这些配置项 | -| fetchSize | 否 | int | 2048 | Sybase 要求配置 fetchSize 来提升性能 | +SybaseReader 基于 [rdbmsreader](../rdbmsreader) 实现,因此可以参考 rdbmsreader 的所有配置项。 - -## 类型转换 - -目前 SybaseReader 支持大部分 Sybase 类型,但也存在部分个别类型没有支持的情况,请注意检查你的类型。 - -下面列出类型转换列表: - - -| Addax 内部类型 | SqlServer 数据类型 | -|------------|-------------------------------------------------------------------| -| Long | bigint, int, smallint, tinyint | -| Double | float, decimal, real, numeric | -| String | char,nchar,ntext,nvarchar,text,varchar,nvarchar(MAX),varchar(MAX) | -| Date | date, datetime, time | -| Boolean | bit | -| Bytes | binary,varbinary,varbinary(MAX),timestamp, image | - - -[1]: https://www.sap.com/products/technology-platform/sql-anywhere.html \ No newline at end of file diff --git a/docs/reader/tdenginereader.md b/docs/reader/tdenginereader.md index 6f36d1f00..43ec152d0 100644 --- a/docs/reader/tdenginereader.md +++ b/docs/reader/tdenginereader.md @@ -93,12 +93,12 @@ bin/addax.sh job/tdengine2stream.json ## 类型转换 -| Addax 内部类型| TDengine 数据类型 | -| -------- | ----- | -| Long | SMALLINT, TINYINT, INT, BIGINT, TIMESTAMP | -| Double | FLOAT, DOUBLE| -| String | BINARY, NCHAR | -| Boolean | BOOL | +| Addax 内部类型 | TDengine 数据类型 | +| -------------- | ----------------------------------------- | +| Long | SMALLINT, TINYINT, INT, BIGINT, TIMESTAMP | +| Double | FLOAT, DOUBLE | +| String | BINARY, NCHAR | +| Boolean | BOOL | ## 当前支持版本 diff --git a/docs/writer/accesswriter.md b/docs/writer/accesswriter.md index 6c6096cf8..bd64634b0 100644 --- a/docs/writer/accesswriter.md +++ b/docs/writer/accesswriter.md @@ -30,7 +30,4 @@ bin/addax.sh job/stream2access.json ## 参数说明 -因本插件基于[Addax RDBMS Writer][2] 实现,所以参数说明请参考 [Addax RDBMS Writer][2]。 - -[1]: https://en.wikipedia.org/wiki/Microsoft_Access -[2]: ../rdbmswriter \ No newline at end of file +AccessWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项。 \ No newline at end of file diff --git a/docs/writer/clickhousewriter.md b/docs/writer/clickhousewriter.md index dbdd0005d..83836e05a 100644 --- a/docs/writer/clickhousewriter.md +++ b/docs/writer/clickhousewriter.md @@ -42,13 +42,4 @@ bin/addax.sh job/clickhouse2clickhouse.json ## 参数说明 -| 配置项 | 是否必须 | 数据类型 | 默认值 | 描述 | -| :-------- | :------: | -------- | ------ | ----------------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | string | 无 | ClickHouse JDBC 连接信息 ,可按照官方规范填写连接附件控制信息。具体请参看[ClickHouse官方文档][1] | -| username | 是 | string | 无 | 数据源的用户名 | -| password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | `list[string]` | 无 | 所选取的需要同步的表 ,当配置为多张表时,用户自己需保证多张表是同一schema结构 | -| column | 是 | `list[map]` | 无 | 所配置的表中需要同步的列名集合, 使用JSON的数组描述字段信息。用户使用 `*` 代表默认使用所有列配置,例如 `"['*']"` | -| batchSize | 否 | int | 2048 | 每次批量写入数据的条数 | - -[1]: https://github.com/yandex/clickhouse-jdbc \ No newline at end of file +ClickHouseWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项。 \ No newline at end of file diff --git a/docs/writer/databendwriter.md b/docs/writer/databendwriter.md index 682ece57f..7649879c0 100644 --- a/docs/writer/databendwriter.md +++ b/docs/writer/databendwriter.md @@ -1,11 +1,8 @@ # DatabendWriter -Databend 插件用于向 [Databend](https://databend.rs/zh-CN/doc/) 数据库以流式方式写入数据。 其实现上是通过访问 Databend -http 连接(8000) -,然后通过 [stream load](https://databend.rs/zh-CN/doc/integrations/api/streaming-load) -加载数据到数据中,相比 `insert into` 方式效率要高不少,也是官方推荐的生产环境下的数据加载方式。 +Databend 插件用于向 [Databend](https://databend.rs/zh-CN/doc/) 数据库以 JDBC 方式写入数据。 -Databend 是一个兼容 MySQL 协议的数据库后端,因此 Databend 读取可以使用 [MySQLReader](../../reader/mysqlreader) 进行访问。 +Databend 是一个兼容 MySQL 协议的数据库后端,因此 Databend 写入可以使用 [MySQLWriter](../../writer/mysqlwriter) 进行访问。 ## 示例 @@ -39,18 +36,12 @@ bin/addax.sh job/stream2Databend.json ## 参数说明 -| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | -|:-----------------|:----:|--------|----------|------------------------------------------------------------------------------| -| jdbcUrl | 否 | string | 无 | 目的数据库的 JDBC 连接信息,用于执行`preSql`及`postSql` | -| username | 是 | string | 无 | JDBC 数据源用户名 | -| password | 否 | string | 无 | JDBC 数据源密码 | -| table | 是 | string | 无 | Databend 表的表名称 | -| column | 否 | list | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter][1] | -| preSql | 否 | list | 无 | 任务开始前执行的 SQL 语句,多条语句以分号分隔,语句中不能包含分号。 | -| postSql | 否 | list | 无 | 任务结束后执行的 SQL 语句,多条语句以分号分隔,语句中不能包含分号。 | -| batchSize | 否 | int | 1024 | 每个批次的记录数 | -| writeMode | 否 | string | `insert` | 写入模式,支持 insert 和 replace 两种模式,默认为 insert。若为 replace,务必填写 onConflictColumn 参数 | -| onConflictColumn | 否 | string | 无 | 冲突列,当 writeMode 为 replace 时,必须指定冲突列,否则会导致写入失败。 | +DatabendWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项,并增加了如下配置项: + +| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | +| :--------------- | :------: | ------ | -------- | ------------------------------------------------------------------------ | +| writeMode | 否 | string | `insert` | 写入模式,支持 insert 和 replace 两种模式,默认为 insert。 | +| onConflictColumn | 否 | string | 无 | 冲突列,当 writeMode 为 replace 时,必须指定冲突列,否则会导致写入失败。 | ### writeMode @@ -66,10 +57,4 @@ bin/addax.sh job/stream2Databend.json "id" ] } -``` - -## 类型转换 - -默认传入的数据均会被转为字符串,并以`\t`作为列分隔符,`\n`作为行分隔符,组成`csv`文件进行 StreamLoad 导入操作。 - -[1]: ../rdbmswriter +``` \ No newline at end of file diff --git a/docs/writer/greenplumwriter.md b/docs/writer/greenplumwriter.md index 95624d82e..539cebaec 100644 --- a/docs/writer/greenplumwriter.md +++ b/docs/writer/greenplumwriter.md @@ -38,26 +38,4 @@ bin/addax.sh job/pg2gp.json ## 参数说明 -| 配置项 | 是否必须 | 默认值 | 描述 | -| :-------- | :------: | ------ | ---------------------------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | 无 | 对端数据库的 JDBC 连接信息,jdbcUrl 按照 RDBMS 官方规范,并可以填写连接 [附件控制信息][1] | -| username | 是 | 无 | 数据源的用户名 | -| password | 否 | 无 | 数据源指定用户名的密码 | -| table | 是 | 无 | 所选取的需要同步的表名,使用 JSON 数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter](../rdbmswriter) | -| preSql | 否 | 无 | 执行数据同步任务之前率先执行的 sql 语句,目前只允许执行一条 SQL 语句,例如清除旧数据,涉及到的表可用 `@table`表示 | -| postSql | 否 | 无 | 执行数据同步任务之后执行的 sql 语句,目前只允许执行一条 SQL 语句,例如加上某一个时间戳 | -| batchSize | 否 | 1024 | 一次写入的记录数,这里表示 `COPY FROM` 指令后接收的记录数 | - -[1]: http://jdbc.postgresql.org/documentation/93/connect.html - -### 类型转换 - -| Addax 内部类型 | Greenplum 数据类型 | -| -------------- | --------------------------------------------------------- | -| Long | bigint, bigserial, integer, smallint, serial | -| Double | double precision, money, numeric, real | -| String | varchar, char, text, bit, inet,cidr,macaddr,uuid,xml,json | -| Date | date, time, timestamp | -| Boolean | bool | -| Bytes | bytea | +GreenplumWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项。 \ No newline at end of file diff --git a/docs/writer/mysqlwriter.md b/docs/writer/mysqlwriter.md index 1f2cd25b4..f021dc081 100644 --- a/docs/writer/mysqlwriter.md +++ b/docs/writer/mysqlwriter.md @@ -37,19 +37,12 @@ bin/addax.sh job/stream2mysql.json ## 参数说明 -| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | -| :-------- | :------: | ------ | ------ | ------------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | list | 无 | 对端数据库的 JDBC 连接信息,jdbcUrl 按照 RDBMS 官方规范,并可以填写连接[附件控制信息][2] | -| driver | 否 | string | 无 | 自定义驱动类名,解决兼容性问题,详见下面描述 | -| username | 是 | string | 无 | 数据源的用户名 | -| password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | list | 无 | 所选取的需要同步的表名,使用 JSON 数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter][3] | -| session | 否 | list | 空 | 获取 MySQL 连接时,执行 session 指定的 SQL 语句,修改当前 connection session 属性 | -| preSql | 否 | list | 无 | 数据写入前先执行的 sql 语句,例如清除旧数据,如果 Sql 中有你需要操作到的表名称,可用 `@table` 表示 | -| postSql | 否 | list | 无 | 数据写入完成后执行的 sql 语句,例如加上某一个时间戳 | -| writeMode | 是 | string | insert | 数据写入表的方式,详见下文 | -| batchSize | 否 | int | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数 | +MysqlWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项,并且增加了一些 MySQL 特有的配置项。 + +| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | +| :-------- | :------: | ------ | ------ | ---------------------------------------------- | +| writeMode | 是 | string | insert | 数据写入表的方式,详见下文 | +| batchSize | 否 | int | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数 | ### driver @@ -71,19 +64,3 @@ bin/addax.sh job/stream2mysql.json - `replace`表示采用`replace into`方式 - `update` 表示采用 `ON DUPLICATE KEY UPDATE` 语句 -## 类型转换 - -| Addax 内部类型 | Mysql 数据类型 | -| -------------- | ---------------------------------------------------- | -| Long | int, tinyint, smallint, mediumint, int, bigint, year | -| Double | float, double, decimal | -| String | varchar, char, tinytext, text, mediumtext, longtext | -| Date | date, datetime, timestamp, time | -| Boolean | bit, bool | -| Bytes | tinyblob, mediumblob, blob, longblob, varbinary | - -bit 类型目前是未定义类型转换 - -[1]: https://www.mysql.com -[2]: http://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html -[3]: ../rdbmswriter diff --git a/docs/writer/oraclewriter.md b/docs/writer/oraclewriter.md index 74a1efa6c..465336ca0 100644 --- a/docs/writer/oraclewriter.md +++ b/docs/writer/oraclewriter.md @@ -14,18 +14,11 @@ OracleWriter 插件实现了写入数据到 Oracle 目的表的功能。 ## 参数说明 -| 配置项 | 是否必须 | 默认值 | 描述 | -| :-------- | :------: | ------ | ---------------------------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接 [附件控制信息][1] | -| username | 是 | 无 | 数据源的用户名 | -| password | 否 | 无 | 数据源指定用户名的密码 | -| writeMode | 否 | insert | 写入方式,支持 insert, update,详见下文 | -| table | 是 | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter](../rdbmswriter) | | -| preSql | 否 | 无 | 执行数据同步任务之前率先执行的sql语句,目前只允许执行一条SQL语句,例如清除旧数据,涉及到的表可用 `@table`表示 | -| postSql | 否 | 无 | 执行数据同步任务之后执行的sql语句,目前只允许执行一条SQL语句,例如加上某一个时间戳 | -| batchSize | 否 | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM或者目标数据库事务提交失败导致挂起 | -| session | 否 | 无 | 设置oracle连接时的session信息, 详见下文 | +OracleWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项,并在此基础上增加了一些 OracleWriter 特有的配置项。 + +| 配置项 | 是否必须 | 默认值 | 描述 | +| :-------- | :------: | ------ | ---------------------------------------- | +| writeMode | 否 | insert | 写入方式,支持 insert, update,详见下文 | [1]: http://www.oracle.com/technetwork/database/enterprise-edition/documentation/index.html @@ -45,27 +38,4 @@ OracleWriter 插件实现了写入数据到 Oracle 目的表的功能。 注: `update` 模式在 `3.1.6` 版本首次增加,之前版本并不支持。 -### session - -描述:设置oracle连接时的session信息,格式示例如下: - -```json -{ - "session": [ - "alter session set nls_date_format = 'dd.mm.yyyy hh24:mi:ss';", - "alter session set NLS_LANG = 'AMERICAN';" - ] -} -``` -## 类型转换 - -| Addax 内部类型 | Oracle 数据类型 | -| -------------- | ----------------------------------------------------------------------------------------------- | -| Long | NUMBER,INTEGER,INT,SMALLINT | -| Double | NUMERIC,DECIMAL,FLOAT,DOUBLE PRECISION,REAL | -| String | LONG,CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2,CLOB,NCLOB,CHARACTER,CHARACTER VARYING,CHAR VARYING | -| String | NATIONAL CHARACTER,NATIONAL CHAR,NATIONAL CHARACTER VARYING,NATIONAL CHAR VARYING,NCHAR VARYING | -| Date | TIMESTAMP,DATE | -| Boolean | BIT, BOOL | -| Bytes | BLOB,BFILE,RAW,LONG RAW | diff --git a/docs/writer/rdbmswriter.md b/docs/writer/rdbmswriter.md index 57a3959bf..412f07e0c 100644 --- a/docs/writer/rdbmswriter.md +++ b/docs/writer/rdbmswriter.md @@ -9,6 +9,8 @@ RDBMSWriter 插件支持从传统 RDBMS 读取数据。这是一个通用关系 - [PostgreSQL Writer](postgresqlwriter) - [ClickHouse Writer](clickhousewriter) - [SQLServer Writer](sqlserverwriter) +- [Access Writer](accesswriter) +- [Databend Writer](databendwriter) 注意, 如果已经提供了专门的数据库写入插件的,推荐使用专用插件,如果你需要写入的数据库没有专门插件,则考虑使用该通用插件。 在使用之前,还需要执行以下操作才可以正常运行,否则运行会出现异常。 @@ -51,11 +53,12 @@ RDBMSWriter 插件支持从传统 RDBMS 读取数据。这是一个通用关系 | driver | 是 | string | 无 | 自定义驱动类名,解决兼容性问题,详见下面描述 | | username | 是 | string | 无 | 数据源的用户名 | | password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | array | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | array | 无 | 所配置的表中需要同步的列名集合,详细描述见后 | -| preSql | 否 | array | 无 | 执行数据同步任务之前率先执行的sql语句,目前只允许执行一条SQL语句,例如清除旧数据,涉及到的表可用 `@table`表示 | -| postSql | 否 | array | 无 | 执行数据同步任务之后执行的sql语句,目前只允许执行一条SQL语句,例如加上某一个时间戳 | +| table | 是 | list | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | +| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述见后 | +| preSql | 否 | list | 无 | 执行数据同步任务之前率先执行的sql语句,目前只允许执行一条SQL语句,例如清除旧数据,涉及到的表可用 `@table`表示 | +| postSql | 否 | list | 无 | 执行数据同步任务之后执行的sql语句,目前只允许执行一条SQL语句,例如加上某一个时间戳 | | batchSize | 否 | int | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM或者目标数据库事务提交失败导致挂起 | +| session | 是否 | list | 无 | 针对本地连接,修改会话配置,详见下文 | ### column @@ -102,3 +105,18 @@ Column必须显示填写,不允许为空! 大部分情况下,一个数据库的JDBC驱动是固定的,但有些因为版本的不同,所建议的驱动类名不同,比如 MySQL。 新的 MySQL JDBC 驱动类型推荐使用 `com.mysql.cj.jdbc.Driver` 而不是以前的 `com.mysql.jdbc.Drver`。 如果想要使用就的驱动名称,则可以配置 `driver` 配置项。 + + + +### session + +描述:设置数据库连接时的session信息,比如针对 Oracle 数据库,可以设置如下: + +```json +{ + "session": [ + "alter session set nls_date_format = 'dd.mm.yyyy hh24:mi:ss';", + "alter session set NLS_LANG = 'AMERICAN';" + ] +} +``` diff --git a/docs/writer/sqlserverwriter.md b/docs/writer/sqlserverwriter.md index e068203ff..1752afacf 100644 --- a/docs/writer/sqlserverwriter.md +++ b/docs/writer/sqlserverwriter.md @@ -12,19 +12,12 @@ SqlServerWriter 插件实现了写入数据到 [SQL Server](https://www.microsof ## 参数说明 -| 配置项 | 是否必须 | 默认值 | 描述 | -| :-------- | :------: | ------ | ------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接附件控制信息 | -| username | 是 | 无 | 数据源的用户名 | -| password | 否 | 无 | 数据源指定用户名的密码 | -| writeMode | 否 | insert | 写入方式,支持 insert, update,详见下文 | -| table | 是 | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter][1] | -| splitPk | 否 | 无 | 使用splitPk代表的字段进行数据分片,详细描述见 [rdbmsreader][2] | -| preSql | 否 | 无 | 数据写入前先执行的sql语句 | -| postSql | 否 | 无 | 数据写入完成后,再执行的SQL语句 | -| batchSize | 否 | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM | -| session | 否 | 无 | 针对本地连接,修改会话配置 | +SqlServerWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项,并在此基础上增加了一些 SqlServerWriter 特有的配置项。 + +| 配置项 | 是否必须 | 默认值 | 描述 | +| :-------- | :------: | ------ | ---------------------------------------- | +| writeMode | 否 | insert | 写入方式,支持 insert, update,详见下文 | + ### writeMode @@ -46,11 +39,3 @@ SqlServerWriter 插件实现了写入数据到 [SQL Server](https://www.microsof ``` 注: `update` 模式在 `4.0.8` 版本首次增加,之前版本并不支持。 - -## 类型转换 - -类似 SqlServerReader ,目前 SqlServerWriter 支持大部分 SqlServer 类型,但也存在部分个别类型没有支持的情况,请注意检查你的类型。 - - -[1]: ../rdbmswriter -[2]: ../../reader/rdbmsreader \ No newline at end of file diff --git a/docs/writer/sybasewriter.md b/docs/writer/sybasewriter.md index e856a8857..9212d5c02 100644 --- a/docs/writer/sybasewriter.md +++ b/docs/writer/sybasewriter.md @@ -31,25 +31,4 @@ create table addax_writer ## 参数说明 -| 配置项 | 是否必须 | 默认值 | 描述 | -| :-------- | :------: | ------ |--------------------------------------------------| -| jdbcUrl | 是 | 无 | 对端数据库的JDBC连接信息,jdbcUrl按照RDBMS官方规范,并可以填写连接附件控制信息 | -| username | 是 | 无 | 数据源的用户名 | -| password | 否 | 无 | 数据源指定用户名的密码 | -| writeMode | 否 | insert | 写入方式,支持 insert, update,详见下文 | -| table | 是 | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter][2] | -| splitPk | 否 | 无 | 使用splitPk代表的字段进行数据分片,详细描述见 [rdbmsreader][3] | -| preSql | 否 | 无 | 数据写入前先执行的sql语句 | -| postSql | 否 | 无 | 数据写入完成后,再执行的SQL语句 | -| batchSize | 否 | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM | -| session | 否 | 无 | 针对本地连接,修改会话配置 | - - -## 类型转换 - -类似 SqlServerReader ,目前 SqlServerWriter 支持大部分 SqlServer 类型,但也存在部分个别类型没有支持的情况,请注意检查你的类型。 - -[1]: https://www.sap.com/products/technology-platform/sql-anywhere.html -[2]: ../rdbmswriter -[3]: ../../reader/rdbmsreader \ No newline at end of file +SybaseWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项。 \ No newline at end of file diff --git a/docs/writer/tdenginewriter.md b/docs/writer/tdenginewriter.md index 4d2effb4b..ae8b59b4c 100644 --- a/docs/writer/tdenginewriter.md +++ b/docs/writer/tdenginewriter.md @@ -56,16 +56,7 @@ bin/addax.sh job/tdengine2stream.json ## 参数说明 -| 配置项 | 是否必须 | 类型 | 默认值 | 描述 | -| :-------- | :------: | ------ | ------ | ----------------------------------------------------------------------------------------------- | -| jdbcUrl | 是 | list | 无 | 对端数据库的JDBC连接信息,注意,这里的 `TAOS` 必须大写 | -| username | 是 | string | 无 | 数据源的用户名 | -| password | 否 | string | 无 | 数据源指定用户名的密码 | -| table | 是 | list | 无 | 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 | -| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter](../rdbmswriter) | -| preSql | 否 | list | 无 | 数据写入钱先执行的sql语句,例如清除旧数据,如果 Sql 中有你需要操作到的表名称,可用 `@table` 表示 | -| postSql | 否 | list | 无 | 数据写入完成后执行的sql语句,例如加上某一个时间戳 | -| batchSize | 否 | int | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数 | +TDengineWriter 基于 [rdbmswriter](../rdbmswriter) 实现,因此可以参考 rdbmswriter 的所有配置项,并且增加了一些 TDengine 特有的配置项。 ### 使用 JDBC-RESTful 接口