[Feature][gbase8s] 增加支持gbase8s版本connector
envgap__DTStack__chunjun-1897
01 / FAILURE SIGNATURE
As reported upstream
No identifying execution failure has been captured.
Not a benchmark task.
- In a clean container the reported failure did not reproduce, or the known fix did not make the project run.
02 / ENVIRONMENT RECIPE
- Base commit
b43f897f8818498cfc4c8295ebdacff8dd6f9041- Manifest
chunjun-connectors/pom.xml- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
DTStack/chunjun #1897 · read the original issue
### Search before asking
- [X] I had searched in the [issues](https://github.com/DTStack/chunjun/issues) and found no similar feature requirement.
### Description
增加gbase8s 、 gbase-hk 两个connector
### Use case
**以下是gbase8s测试用例:**
```
-- mvn install:install-file -DgroupId=com.gbasedbt.jdbc.Driver -DartifactId=gbasedbt -Dversion=3.5.1_1_d0c87a -Dpackaging=jar -Dfile=./gbasedbtjdbc_3.5.1.jar
--------------------------------
-- 测试 stream -> gbase8s
--------------------------------
CREATE TABLE source_stream (
id bigint,
username varchar,
age int
)WITH(
'connector' = 'stream-x',
'number-of-rows' = '1'
);
CREATE TABLE sink_gbase8s (
id bigint,
username varchar,
age int
) WITH (
'connector' = 'gbase8s-x',
-- 打开兼容oracle模式,表名格式可以这样写: flinkx_test.flinkx_gbase_8s_test
-- 如果不打开兼容oracle模式, 表名格式必须这样的写:flinkx_test:flinkx_gbase_8s_test
'url' = 'jdbc:gbasedbt-sqli://x.x.x.x:9088/flinkx_test:GBASEDBTSERVER=gbase01;SQLMODE=Oracle;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;NEWCODESET=UTF8,utf8,57372;GL_USEGLU=1',
-- 'url' = 'jdbc:gbasedbt-sqli://x.x.x.x:9088/flinkx_test:GBASEDBTSERVER=gbase01;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;NEWCODESET=UTF8,utf8,57372;GL_USEGLU=1',
'schema' = 'gbasedbt',
'table-name' = 'flinkx_gbase_8s_test',
'username' = 'xxxx',
'password' = 'xxxx',
'sink.buffer-flush.max-rows' = '1024', -- 批量写数据条数,默认:1024
'sink.buffer-flush.interval' = '1000', -- 批量写时间间隔,默认:10000毫秒
'sink.all-replace' = 'false'
-- ,'sink.pre-sql' = 'DELETE FROM flinkx_test.flinkx_gbase_8s_test WHERE id=163;'
,'sink.pre-sql' = 'DELETE FROM gbasedbt.flinkx_gbase_8s_test WHERE id=3;'
-- ,'sink.post-sql' = 'update flinkx_test.flinkx_gbase_8s_test set username=''bbb-update'' where id=2'
);
INSERT INTO sink_gbase8s SELECT * FROM source_stream;
----------------------------
-- 测试 gbase8s -> stream
----------------------------
CREATE TABLE source_gbase8s
(
id bigint,
username varchar,
age int
) WITH (
'connector' = 'gbase8s-x',
'url' = 'jdbc:gbasedbt-sqli://x.x.x.x:9088/flinkx_test:GBASEDBTSERVER=gbase01;SQLMODE=Oracle;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;NEWCODESET=UTF8,utf8,57372;GL_USEGLU=1',
'schema' = 'flinkx_test',
'table-name' = 'flinkx_gbase_8s_test',
'username' = 'xxxx',
'password' = 'xxx',
'scan.fetch-size' = '1024',
'scan.query-timeout' = '600'
,'scan.custom-sql' = 'SELECT id, username, age FROM flinkx_test.flinkx_gbase_8s_test where id>2'
);
CREATE TABLE sink_stream (
id bigint,
username varchar,
age int
)WITH(
'connector' = 'stream-x',
'print' = 'true'
);
-- INSERT INTO sink_stream SELECT * FROM source_gbase8s;
```
**以下gbase hk driver 测试用例**
```
-- mvn install:install-file -DgroupId=com.gbase.hk.jdbc.Driver -DartifactId=gbase -Dversion=8.8.0.13 -Dpackaging=jar -Dfile=./gbase-connector-8.8.0.13.jar
--------------------------------
-- 测试 stream -> gbase-hk
--------------------------------
CREATE TABLE source_stream (
id bigint,
username varchar,
age int
)WITH(
'connector' = 'stream-x',
'number-of-rows' = '1'
);
CREATE TABLE sink_gbase (
id bigint,
username varchar,
age int
) WITH (
'connector' = 'gbasehk-x',
'url' = 'jdbc:gbase://x.x.x.x:5258/flinkx_test?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8',
'schema' = 'flinkx_test',
'table-name' = 'flinkx_gbase8s_beta_test',
'username' = 'xxx',
'password' = 'xxx',
'sink.buffer-flush.max-rows' = '1024', -- 批量写数据条数,默认:1024
'sink.buffer-flush.interval' = '1000', -- 批量写时间间隔,默认:10000毫秒
'sink.all-replace' = 'false'
,'sink.pre-sql' = 'DELETE FROM flinkx_test.flinkx_gbase8s_beta_test WHERE id=1;'
,'sink.post-sql' = 'update flinkx_test.flinkx_gbase8s_beta_test set username=''bbb-update'' where id=2'
);
-- INSERT INTO sink_gbase SELECT * FROM source_stream;
----------------------------
-- 测试 gbase -> stream
----------------------------
CREATE TABLE source_gbase
(
id bigint,
username varchar,
age int
) WITH (
'connector' = 'gbasehk-x',
'url' = 'jdbc:gbase://x.x.x.x:5258/flinkx_test?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8',
'schema' = 'flinkx_test',
'table-name' = 'flinkx_gbase8s_beta_test',
'username' = 'xx',
'password' = 'xx',
'scan.fetch-size' = '1024',
'scan.query-timeout' = '600'
,'scan.custom-sql' = 'SELECT id, username, age FROM flinkx_test.flinkx_gbase8s_beta_test where id>1'
);
CREATE TABLE sink_stream (
id bigint,
username varchar,
age int
)WITH(
'connector' = 'stream-x',
'print' = 'true'
);
INSERT INTO sink_stream SELECT * FROM source_gbase;
```
### Related issues
_No response_
### Are you willing to submit a PR?
- [X] Yes I am willing to submit a PR!
### Code of Conduct
- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
04 / LABELS
Labels from the report text only; not yet run
No supported category has been assigned.
Label rules and the text that matched
[]