|
| 1 | + |
| 2 | +## 1.格式: |
| 3 | +All: |
| 4 | +``` |
| 5 | +create table sideTable( |
| 6 | + id int, |
| 7 | + tablename1 VARCHAR, |
| 8 | + PRIMARY KEY(id), |
| 9 | + PERIOD FOR SYSTEM_TIME |
| 10 | + )WITH( |
| 11 | + type='kudu', |
| 12 | + kuduMasters ='ip1,ip2,ip3', |
| 13 | + tableName ='impala::default.testSide', |
| 14 | + cache ='ALL', |
| 15 | + primaryKey='id,xx', |
| 16 | + lowerBoundPrimaryKey='10,xx', |
| 17 | + upperBoundPrimaryKey='15,xx', |
| 18 | + workerCount='1', |
| 19 | + defaultOperationTimeoutMs='600000', |
| 20 | + defaultSocketReadTimeoutMs='6000000', |
| 21 | + batchSizeBytes='100000000', |
| 22 | + limitNum='1000', |
| 23 | + isFaultTolerant='false', |
| 24 | + partitionedJoin='false' |
| 25 | + ); |
| 26 | +``` |
| 27 | +LRU: |
| 28 | +``` |
| 29 | +create table sideTable( |
| 30 | + id int, |
| 31 | + tablename1 VARCHAR, |
| 32 | + PRIMARY KEY(id), |
| 33 | + PERIOD FOR SYSTEM_TIME |
| 34 | + )WITH( |
| 35 | + type='kudu', |
| 36 | + kuduMasters ='ip1,ip2,ip3', |
| 37 | + tableName ='impala::default.testSide', |
| 38 | + cache ='LRU', |
| 39 | + workerCount='1', |
| 40 | + defaultOperationTimeoutMs='600000', |
| 41 | + defaultSocketReadTimeoutMs='6000000', |
| 42 | + batchSizeBytes='100000000', |
| 43 | + limitNum='1000', |
| 44 | + isFaultTolerant='false', |
| 45 | + partitionedJoin='false' |
| 46 | + ); |
| 47 | + ``` |
| 48 | + |
| 49 | +## 2.支持版本 |
| 50 | +kudu 1.9.0+cdh6.2.0 |
| 51 | + |
| 52 | +## 3.表结构定义 |
| 53 | + |
| 54 | + |参数名称|含义| |
| 55 | + |----|---| |
| 56 | + | tableName | 注册到flink的表名称(可选填;不填默认和hbase对应的表名称相同)| |
| 57 | + | colName | 列名称| |
| 58 | + | colType | 列类型 [colType支持的类型](colType.md)| |
| 59 | + | PERIOD FOR SYSTEM_TIME | 关键字表明该定义的表为维表信息| |
| 60 | + | PRIMARY KEY(keyInfo) | 维表主键定义;多个列之间用逗号隔开| |
| 61 | + |
| 62 | +## 3.参数 |
| 63 | + |
| 64 | + |
| 65 | +|参数名称|含义|是否必填|默认值| |
| 66 | +|----|---|---|-----| |
| 67 | +|type | 表明维表的类型[hbase\|mysql|\kudu]|是|| |
| 68 | +| kuduMasters | kudu master节点的地址;格式ip[ip,ip2]|是|| |
| 69 | +| tableName | kudu 的表名称|是|| |
| 70 | +| workerCount | 工作线程数 |否| |
| 71 | +| defaultOperationTimeoutMs | 写入操作超时时间 |否| |
| 72 | +| defaultSocketReadTimeoutMs | socket读取超时时间 |否| |
| 73 | +| primaryKey | 需要过滤的主键 ALL模式独有 |否| |
| 74 | +| lowerBoundPrimaryKey | 需要过滤的主键的最小值 ALL模式独有 |否| |
| 75 | +| upperBoundPrimaryKey | 需要过滤的主键的最大值(不包含) ALL模式独有 |否| |
| 76 | +| workerCount | 工作线程数 |否| |
| 77 | +| defaultOperationTimeoutMs | 写入操作超时时间 |否| |
| 78 | +| defaultSocketReadTimeoutMs | socket读取超时时间 |否| |
| 79 | +| batchSizeBytes |返回数据的大小 | 否| |
| 80 | +| limitNum |返回数据的条数 | 否| |
| 81 | +| isFaultTolerant |查询是否容错 查询失败是否扫描第二个副本 默认false 容错 | 否| |
| 82 | +| cache | 维表缓存策略(NONE/LRU/ALL)|否|NONE| |
| 83 | +| partitionedJoin | 是否在維表join之前先根据 設定的key 做一次keyby操作(可以減少维表的数据缓存量)|否|false| |
| 84 | + |
| 85 | + |
| 86 | +-------------- |
| 87 | +> 缓存策略 |
| 88 | + * NONE: 不做内存缓存 |
| 89 | + * LRU: |
| 90 | + * cacheSize: 缓存的条目数量 |
| 91 | + * cacheTTLMs:缓存的过期时间(ms) |
| 92 | + |
| 93 | +## 4.样例 |
| 94 | +All: |
| 95 | +``` |
| 96 | +create table sideTable( |
| 97 | + id int, |
| 98 | + tablename1 VARCHAR, |
| 99 | + PRIMARY KEY(id), |
| 100 | + PERIOD FOR SYSTEM_TIME |
| 101 | + )WITH( |
| 102 | + type='kudu', |
| 103 | + kuduMasters ='ip1,ip2,ip3', |
| 104 | + tableName ='impala::default.testSide', |
| 105 | + cache ='ALL', |
| 106 | + primaryKey='id,xx', |
| 107 | + lowerBoundPrimaryKey='10,xx', |
| 108 | + upperBoundPrimaryKey='15,xx', |
| 109 | + partitionedJoin='false' |
| 110 | + ); |
| 111 | +``` |
| 112 | +LRU: |
| 113 | +``` |
| 114 | +create table sideTable( |
| 115 | + id int, |
| 116 | + tablename1 VARCHAR, |
| 117 | + PRIMARY KEY(id), |
| 118 | + PERIOD FOR SYSTEM_TIME |
| 119 | + )WITH( |
| 120 | + type='kudu', |
| 121 | + kuduMasters ='ip1,ip2,ip3', |
| 122 | + tableName ='impala::default.testSide', |
| 123 | + cache ='LRU', |
| 124 | + partitionedJoin='false' |
| 125 | + ); |
| 126 | + ``` |
| 127 | + |
0 commit comments