ChunJun项目GBase数据源连接器使用指南
一、概述
ChunJun作为一款优秀的数据集成工具,提供了丰富的连接器支持。本文将详细介绍ChunJun中GBase数据源连接器的使用方法,帮助开发者实现从GBase数据库高效读取数据的能力。
二、GBase连接器简介
GBase连接器支持从GBase 8a(8.6.2.43)版本数据库读取数据,提供两种工作模式:
- 离线批量读取:全量抽取数据库表中的数据
- 实时轮询读取:基于增量字段周期性轮询获取新增数据
三、连接器配置参数详解
3.1 基本连接参数
connection(必填)
- 类型:List
- 说明:包含数据库连接信息的复合参数
- 示例:
"connection": [{
"jdbcUrl": ["jdbc:gbase://0.0.0.1:9042/database?useSSL=false"],
"table": ["table"],
"schema":"public"
}]
jdbcUrl(必填)
- 类型:String
- 说明:GBase数据库的JDBC连接字符串
username/password(必填)
- 类型:String
- 说明:数据库认证凭据
3.2 数据读取控制参数
fetchSize
- 默认值:1024
- 说明:控制每次从数据库读取的记录数,防止大数据量时OOM
- 注意:需要数据库版本>5.0且连接参数添加useCursorFetch=true
where
- 说明:数据过滤条件
- 注意:不能使用LIMIT子句
splitPk
- 说明:当channel>1时必须指定的分片字段
- 最佳实践:建议使用整型主键字段
3.3 增量轮询参数
polling
- 默认值:false
- 说明:是否开启间隔轮询模式
pollingInterval
- 默认值:5000ms
- 说明:轮询间隔时间
increColumn
- 说明:用于增量轮询的字段(支持字段名或字段索引)
startLocation
- 说明:增量轮询起始位置
四、SQL模式配置
对于偏好使用SQL方式的开发者,GBase连接器也提供了SQL配置模式:
CREATE TABLE gbase_source (
-- 字段定义
) WITH (
'connector' = 'gbase-x',
'url' = 'jdbc:gbase://localhost:9042/test',
'table-name' = 'your_table',
'username' = 'your_username',
'password' = 'your_password',
'scan.fetch-size' = '1024'
);
五、数据类型支持情况
GBase连接器支持大部分常见数据类型:
| 支持类型 | 不支持类型 | |---------|-----------| | BOOLEAN, TINYINT, SMALLINT, INT | ARRAY, MAP | | BIGINT, FLOAT, DOUBLE | STRUCT, UNION | | DECIMAL, STRING, VARCHAR | | | CHAR, TIMESTAMP, DATE | | | BINARY | |
六、最佳实践建议
- 大数据量读取:合理设置fetchSize参数,建议值在1000-5000之间
- 增量同步:确保increColumn字段有索引以提高查询效率
- 并行读取:使用splitPk时选择分布均匀的字段
- 性能调优:根据网络状况调整queryTimeOut参数
七、常见问题处理
- 连接超时:适当增加queryTimeOut值
- 内存溢出:减小fetchSize值
- 增量数据重复:设置useMaxFunc=true
通过本文的介绍,开发者应该能够掌握ChunJun中GBase连接器的使用方法。实际应用中,建议根据具体业务场景和数据特点选择合适的配置参数,以达到最佳的数据同步效果。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考