全部产品

DataSource

更新时间:2020-08-05 17:00:40

描述

数据源信息。

示例

  1. {
  2. "tableName": "news",
  3. "type": "rds",
  4. "fields": [
  5. {
  6. "id": "id"
  7. },
  8. {
  9. "caption": "caption"
  10. },
  11. {
  12. "content": "content"
  13. },
  14. {
  15. "categoryId": "category_id"
  16. }
  17. ],
  18. "plugins": {
  19. "caption": {
  20. "name": "HTMLTagRemover",
  21. "parameters": {}
  22. },
  23. "content": {
  24. "name": "HTMLTagRemover",
  25. "parameters": {}
  26. }
  27. },
  28. "keyField": "id",
  29. "parameters": {
  30. "filter": "",
  31. "instanceId": "rm-bp16cb05045mx6mgv",
  32. "dbName": "newsSystem",
  33. "dbTableName": "news",
  34. "dbUser": "opensearch",
  35. "dbPassword": "opensearchRw",
  36. "autoSync": true
  37. }
  38. }

结构

字段 类型 描述
tableName String 表名
type String 数据源类型
- rds
- odps
- opensearch
- polardb
fields[] Object 表字段映射信息
{key:value},key:数据源表字段,value:应用表字段。
plugins Object 字段数据处理插件
plugins.* Object 插件详情,具体说明查看下文Plugin
*:字段名
keyField String 主键
parameters Object 数据源信息
不同数据源的配置信息各不相同,具体说明查看相关下文:
- rds
- odps
- opensearch
- polardb

Plugin

示例

  1. {
  2. "name": "HTMLTagRemover",
  3. "parameters": {}
  4. }

结构

字段 类型 描述
name String 插件名称
- JsonKeyValueExtractor
- MultiValueSpliter
- KeyValueExtractor
- StringCatenateExtractor
- HTMLTagRemover
parameters Object 插件参数
不同插件的参数各不相同,具体说明查看相关下文:
- JsonKeyValueExtractor
- MultiValueSpliter
- KeyValueExtractor
- StringCatenateExtractor
- HTMLTagRemover


JsonKeyValueExtractor

从Json格式的来源字段中提取指定的键值,提取出来的键值作为目标表字段的内容,只能抽取某个key中的值。
示例

  1. {
  2. "key": "my_field"
  3. }

结构

字段 类型 描述
key String 键名

MultiValueSpliter

将来源字段按照分隔符分割成多个值,分割后的内容作为目标表字段的内容,目标表字段必须是配置为ARRAY类型的字段 (若分隔符为不可见字符,需要使用unicode字符来标识,如\u001D)。
示例

  1. {
  2. "seperator": "|"
  3. }

结构

字段 类型 描述
seperator String 分隔符

KeyValueExtractor

从KV格式的来源字段中提取指定的键值,提取出来的键值作为目标表字段的内容,只能抽取某个key中的值。分隔符可以不填。
示例

  1. {
  2. "key": "my_field",
  3. "fieldSep": ";",
  4. "kvSep": ":"
  5. }

结构

字段 类型 描述
key String
fieldSep String 键分隔符
kvSep String 键值分隔符


StringCatenateExtractor

将多个指定字段按照指定的顺序拼接成一个字符串,该插件不支持int字段类型,建议用literal字段类型;字段列表以逗号分隔(字段需来自于目标字段)。
示例

  1. {
  2. "connector": "-",
  3. "sources": "id,title"
  4. }

结构

字段 类型 描述
connector String 连接符
sources String 指定的多个字段

HTMLTagRemover

剔除来源字段中的HTML标签,剔除标签后的内容复制到当前字段,源字段配置为当前字段则做内容替换。
注:此插件不需要额外参数。

rds

示例

  1. {
  2. "instanceId": "rds-instance-id",
  3. "dbName": "my_db",
  4. "dbTableName": "my_table",
  5. "dbUser": "my",
  6. "dbPassword": "my_passwd",
  7. "filter":"",
  8. "autoSync": true
  9. }

结构

字段 类型 描述
instanceId String 实例ID
dbName String 数据库名
dbTableName String 数据库表名
dbUser String 数据库账号
dbPassword String 数据库账号密码
filter String 过滤条件
目前支持的条件有<, >, =, !=, >=, <=,多个条件用’,’分隔
autoSync Boolean 是否数据自动同步
- true 是
- false 否


odps

示例

  1. {
  2. "projectName": "my_project",
  3. "tableName": "my_table",
  4. "partition": "",
  5. "done": "no",
  6. "donePrefix": "",
  7. "timestamp":""
  8. }

结构

字段 类型 描述
projectName String 项目名称
tableName String 表名
partition String 分区信息
参考:ODPS数据源配置
done String 是否使用done文件
- no
- yes
donePrefix String done文件前缀
注:当done=”yes”时必填
timestamp String 全量数据的时间戳


opensearch

示例

  1. {
  2. "appId": "12345678",
  3. "tableName": "my_table",
  4. "appType": "standard",
  5. "filter": ""
  6. }

结构

字段 类型 描述
appId String 应用ID
tableName String 应用表名
appType String 应用类型
- standard 标准版
- advance 老高级版(新应用不支持此类型)
- enhanced 新高级版
filter String 过滤条件
目前支持的条件有<, >, =, !=, >=, <=,多个条件用’,’分隔


polardb

示例

  1. {
  2. "clusterId": "my_cluster_id",
  3. "dbName": "my_db",
  4. "dbTableName": "my_table",
  5. "aliyunUserId":"123455789",
  6. "dbUser":"my_user",
  7. "dbPassword":"my_passwd",
  8. "autoSync":true,
  9. "filter": "id>100"
  10. }

结构

字段 类型 描述
clusterId String 集群ID
dbName String 数据库名
dbTableName String 数据表名
aliyunUserId String 阿里云用户ID
dbUser String 数据库账号
dbPassword String 数据库账号密码
autoSync Boolean 是否数据自动同步
- true 是
- false 否
filter String 过滤条件
目前支持的条件有<, >, =, !=, >=, <=,多个条件用’,’分隔