Skip to content

Commit

Permalink
[docs] Fix syntax error
Browse files Browse the repository at this point in the history
  • Loading branch information
wgzhao committed Aug 14, 2021
1 parent 68e1363 commit fa2a15a
Show file tree
Hide file tree
Showing 13 changed files with 186 additions and 125 deletions.
30 changes: 18 additions & 12 deletions docs/src/main/sphinx/reader/dbffilereader.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,28 +94,34 @@
默认情况下,用户可以全部按照String类型读取数据,配置如下:

```json
"column": ["*"]
{
"column": [
"*"
]
}
```

用户可以指定Column字段信息,配置如下:

```json
{
"type": "long",
"index": 0
},
{
"type": "string",
"value": "alibaba"
}
[
{
"type": "long",
"index": 0
},
{
"type": "string",
"value": "addax"
}
]
```

`index: 0` 表示从本地DBF文件第一列获取int字段
`value: alibaba` 表示从dbfFileReader内部生成alibaba的字符串字段作为当前字段 对于用户指定Column信息,type必须填写,index/value必须选择其一。
`"index": 0` 表示从本地DBF文件第一列获取int字段
`"value": "addax"` 表示从 dbfFileReader 内部生成 `addax` 的字符串字段作为当前字段 对于用户指定Column信息,type必须填写,index/value必须选择其一。

### 支持的数据类型

本地文件本身提供数据类型,该类型是Addax dbfFileReader定义:
本地文件本身提供数据类型,该类型是 Addax dbfFileReader定义:

| Addax 内部类型| 本地文件 数据类型 |
| -------- | ----- |
Expand Down
37 changes: 23 additions & 14 deletions docs/src/main/sphinx/reader/ftpreader.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,21 +133,28 @@ FtpReader实现了从远程FTP文件读取数据并转为Addax协议的功能,
默认情况下,用户可以全部按照String类型读取数据,配置如下:

```json
"column": ["*"]
{
"column": [
"*"
]
}
```

用户可以指定Column字段信息,配置如下:

```json
{
"type": "long",
"index": 0
//从远程FTP文件文本第一列获取int字段
},
{
"type": "string",
"value": "alibaba" //从FtpReader内部生成alibaba的字符串字段作为当前字段
}
[
{
"type": "long",
"index": 0,
"description": "从远程FTP文件文本第一列获取int字段"
},
{
"type": "string",
"value": "addax",
"description": "从FtpReader内部生成alibaba的字符串字段作为当前字段"
}
]
```

对于用户指定Column信息,type必须填写,index/value必须选择其一。
Expand All @@ -157,10 +164,12 @@ FtpReader实现了从远程FTP文件读取数据并转为Addax协议的功能,
常见配置:

```json
"csvReaderConfig":{
"safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false
{
"csvReaderConfig": {
"safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false
}
}
```

Expand Down
53 changes: 29 additions & 24 deletions docs/src/main/sphinx/reader/hbase11xreader.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,17 +282,18 @@ ROW COLUMN+CELL
name指定读取的hbase列,除了rowkey外,必须为 列族:列名 的格式,type指定源数据的类型,format指定日期类型的格式,value指定当前类型为常量,不从hbase读取数据,而是根据value值自动生成对应的列。配置格式如下:

```json
"column":
[
{
"name": "rowkey",
"type": "string"
},
{
"value": "test",
"type": "string"
}
]
{
"column": [
{
"name": "rowkey",
"type": "string"
},
{
"value": "test",
"type": "string"
}
]
}
```

normal 模式下,对于用户指定Column信息,type必须填写,name/value必须选择其一。
Expand All @@ -302,16 +303,18 @@ normal 模式下,对于用户指定Column信息,type必须填写,name/valu
name指定读取的hbase列,除了rowkey外,必须为 列族:列名 的格式,type指定源数据的类型,format指定日期类型的格式 。multiVersionFixedColumn模式下不支持常量列。配置格式如下:

```json
"column": [
{
"name": "rowkey",
"type": "string"
},
{
"name": "info: age",
"type": "string"
}
]
{
"column": [
{
"name": "rowkey",
"type": "string"
},
{
"name": "info: age",
"type": "string"
}
]
}
```

#### range
Expand All @@ -325,10 +328,12 @@ name指定读取的hbase列,除了rowkey外,必须为 列族:列名 的格
配置格式如下:

```json
"range": {
{
"range": {
"startRowkey": "aaa",
"endRowkey": "ccc",
"isBinaryRowkey":false
"isBinaryRowkey": false
}
}
```

Expand All @@ -340,7 +345,7 @@ name指定读取的hbase列,除了rowkey外,必须为 列族:列名 的格
| -------------- | ------------------- |
| Long | int, short ,long |
| Double | float, double |
| String | string,binarystring |
| String | string, binarystring |
| Date | date |
| Boolean | boolean |

Expand Down
57 changes: 36 additions & 21 deletions docs/src/main/sphinx/reader/hdfsreader.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,21 +159,28 @@ Hadoop hdfs文件系统namenode节点地址,如果 hdfs 配置了 HA 模式,
默认情况下,用户可以全部按照String类型读取数据,配置如下:

```json
"column": ["*"]
{
"column": [
"*"
]
}
```

用户可以指定Column字段信息,配置如下:

```json
{
"type": "long",
"index": 0
//从本地文件文本第一列获取int字段
},
{
"type": "string",
"value": "alibaba" //HdfsReader内部生成alibaba的字符串字段作为当前字段
}
[
{
"type": "long",
"index": 0,
"description": "从本地文件文本第一列获取int字段"
},
{
"type": "string",
"value": "addax",
"description": "HdfsReader内部生成alibaba的字符串字段作为当前字段"
}
]
```

对于用户指定Column信息,type必须填写,index/value必须选择其一。
Expand Down Expand Up @@ -234,10 +241,12 @@ format,addax目前只支持最主流的两种:hadoop-snappy(hadoop上的sn
常见配置:

```json
"csvReaderConfig": {
"safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false
{
"csvReaderConfig": {
"safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false
}
}
```

Expand Down Expand Up @@ -285,16 +294,20 @@ string类型。HdfsReader提供了类型转换的建议表如下:

特别提醒:

* Hive支持的数据类型 TIMESTAMP 可以精确到纳秒级别,所以 textfile、orcfile 中 TIMESTAMP 存放的数据类似于 `2015-08-21 22:40:47.397898389`,如果转换的类型配置为Addax的Date,转换之后会导致纳秒部分丢失,所以如果需要保留纳秒部分的数据,请配置转换类型为Addax的String类型。
* Hive支持的数据类型 TIMESTAMP 可以精确到纳秒级别,所以 textfile、orcfile 中 TIMESTAMP 存放的数据类似于 `2015-08-21 22:40:47.397898389`
,如果转换的类型配置为Addax的Date,转换之后会导致纳秒部分丢失,所以如果需要保留纳秒部分的数据,请配置转换类型为Addax的String类型。

### 3.4 按分区读取

Hive在建表的时候,可以指定分区partition,例如创建分区partition(day="20150820",hour="09"),对应的hdfs文件系统中,相应的表的目录下则会多出/20150820和/09两个目录,且/20150820是/09的父目录。了解了分区都会列成相应的目录结构,在按照某个分区读取某个表所有数据时,则只需配置好json中path的值即可。
Hive在建表的时候,可以指定分区partition,例如创建分区partition(day="20150820",hour="09")
,对应的hdfs文件系统中,相应的表的目录下则会多出/20150820和/09两个目录,且/20150820是/09的父目录。了解了分区都会列成相应的目录结构,在按照某个分区读取某个表所有数据时,则只需配置好json中path的值即可。

比如需要读取表名叫mytable01下分区day为20150820这一天的所有数据,则配置如下:

```json
"path": "/user/hive/warehouse/mytable01/20150820/*"
{
"path": "/user/hive/warehouse/mytable01/20150820/*"
}
```

## 5 约束限制
Expand All @@ -308,10 +321,12 @@ Hive在建表的时候,可以指定分区partition,例如创建分区partiti
需要在json的reader里增加如下配置

```json
"csvReaderConfig": {
"safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false
{
"csvReaderConfig": {
"safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false
}
}
```

Expand Down
5 changes: 3 additions & 2 deletions docs/src/main/sphinx/reader/mysqlreader.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ CREATE TABLE addax_reader
c_longblob longblob,
c_mediumblob mediumblob
);
```

然后插入下面一条记录

Expand Down Expand Up @@ -136,8 +137,8 @@ bin/addax.sh job/mysql2stream.json
| username || string || 数据源的用户名 |
| password || string || 数据源指定用户名的密码 |
| table || list || 所选取的需要同步的表名,使用JSON数据格式,当配置为多张表时,用户自己需保证多张表是同一表结构 |
| column | 是 | list | 无 | 所配置的表中需要同步的列名集合,详细描述[rdbmreader](rdbmsreader)
| splitPk | 否 | string | 无 | 使用splitPk代表的字段进行数据分片,详细描述见[rdbmreader](rdbmsreader)|
| column || list || 所配置的表中需要同步的列名集合,详细描述 [rdbmreader](rdbmsreader) |
| splitPk || string || 使用splitPk代表的字段进行数据分片,详细描述见 [rdbmreader](rdbmsreader)|
| autoPk || bool | false | 是否自动猜测分片主键,`3.2.6` 版本引入 |
| where || string || 针对表的筛选条件 |
| querySql || list || 使用自定义的SQL而不是指定表来获取数据,当配置了这一项之后,Addax系统就会忽略 `table``column`这些配置项 |
Expand Down
14 changes: 8 additions & 6 deletions docs/src/main/sphinx/reader/oraclereader.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,12 +82,14 @@ OracleReader插件实现了从Oracle读取数据。在底层实现上,OracleRe
控制写入数据的时间格式,时区等的配置,如果表中有时间字段,配置该值以明确告知写入 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'"
]
{
"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'"
]
}
```

注意 `"``"` 的转义字符串
Expand Down
16 changes: 11 additions & 5 deletions docs/src/main/sphinx/reader/tdenginereader.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,13 +173,19 @@ java.library.path:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
所以上述配置中的` connection` 应该修改为如下:

```json
"connection": [
{
"querySql":["select * from test.meters where ts <'2017-07-14 10:40:02' and loc='beijing' limit 100"],
"jdbcUrl": ["jdbc:TAOS-RS://127.0.0.1:6041/test"],
"driver": "com.taosdata.jdbc.rs.RestfulDriver"
"connection": [
{
"querySql": [
"select * from test.meters where ts <'2017-07-14 10:40:02' and loc='beijing' limit 100"
],
"jdbcUrl": [
"jdbc:TAOS-RS://127.0.0.1:6041/test"
],
"driver": "com.taosdata.jdbc.rs.RestfulDriver"
}
]
}
]
```

## 类型转换
Expand Down
2 changes: 1 addition & 1 deletion docs/src/main/sphinx/writer.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Doris Writer <writer/doriswriter>
ElasticSearch Writer <writer/elasticsearchwriter>
FTP Writer <writer/ftpwriter>
Greenplum Reader <reader/greenlumreader>
Greenplum Writer <writer/greenplumwriter>
HBase 1.x Writer <writer/hbase11xwriter>
HBase 1.x Writer with Phoenix <writer/hbase11xsqlwriter>
HBase 2.0 Writer with Phoenix <writer/hbase20xsqlwriter>
Expand Down
4 changes: 2 additions & 2 deletions docs/src/main/sphinx/writer/doriswriter.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
DorisWriter 插件实现了以流式方式加载数据到 [Doris](http://doris.incubator.apache.org/master/zh-CN/) ,其实现上是通过访问 Doris http 连接(8030),然后通过 [stream load](http://doris.incubator.apache.org/master/zh-CN/administrator-guide/load-data/stream-load-manual.html)
加载数据到数据中,相比 `insert into` 方式效率要高不少,也是官方推荐的生产环境下的数据加载方式。

Doris 是一个兼容 MySQL 协议的数据库后端,因此读取 Doris 可以使用 [MySQLReader](../reader/mysqlreader.html) 进行访问。
Doris 是一个兼容 MySQL 协议的数据库后端,因此读取 Doris 可以使用 [MySQLReader](../reader/mysqlreader) 进行访问。

## 示例

Expand Down Expand Up @@ -168,7 +168,7 @@ bin/addax.sh job/stream2doris.json
| username || string || HTTP 签名验证帐号 |
| password || string || HTTP 签名验证密码 |
| table || string || 所选取的需要同步的表名|
| column | 否 | list | 无 | 所配置的表中需要同步的列名集合,详细描述见[rdbmswriter](rdbmswriter)
| column | 否 | list | 无 | 所配置的表中需要同步的列名集合,详细描述见 [rdbmswriter](rdbmswriter)
| batchSize || int | 1024 | 定义了插件和数据库服务器端每次批量数据获取条数,调高该值可能导致 Addax 出现OOM或者目标数据库事务提交失败导致挂起 |

### column
Expand Down
Loading

0 comments on commit fa2a15a

Please sign in to comment.