维表需要的基本属性,每个插件还需要提供连接所需的基本信息。
参数名称 |
含义 |
是否必填 |
默认值 |
type |
维表类型, 例如:mysql |
是 |
|
tableName |
表名称 |
是 |
|
cache |
维表缓存策略(NONE/LRU/ALL) |
否 |
LRU |
partitionedJoin |
是否在維表join之前先根据设定的key 做一次keyby操作(可以減少维表的数据缓存量) |
否 |
false |
parallelism |
处理后的数据流并行度 |
否 |
|
- NONE:不做内存缓存。每条流数据触发一次维表查询操作。
- ALL: 任务启动时,一次性加载所有数据到内存,并进行缓存。适用于维表数据量较小的情况。
- LRU: 任务执行时,根据维表关联条件使用异步算子加载维表数据,并进行缓存。
参数名称 |
含义 |
默认值 |
cacheTTLMs |
缓存周期刷新时间 |
60,单位s |
参数名称 |
含义 |
默认值 |
cacheTTLMs |
LRU缓存写入后超时时间 |
60,单位s |
cacheSize |
LRU缓存大小 |
10000 |
cacheMode |
异步请求处理有序还是无序,可选:ordered,unordered |
ordered |
asyncCapacity |
异步线程容量 |
100 |
asyncTimeout |
异步处理超时时间 |
10000,单位毫秒 |
asyncPoolSize |
异步查询DB最大线程池,上限20。适用于MYSQL,ORACLE,SQLSERVER,POSTGRESQL,DB2,POLARDB,CLICKHOUSE,IMPALA维表插件 |
min(20,Runtime.getRuntime().availableProcessors() * 2) |