Skip to content

Commit 28e1bab

Browse files
committed
[DS-15953][feat] add dolphindb datasource
1 parent 2ae4402 commit 28e1bab

File tree

29 files changed

+858
-5
lines changed

29 files changed

+858
-5
lines changed

config/plugins_config

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ dolphinscheduler-datasource-starrocks
6262
dolphinscheduler-datasource-trino
6363
dolphinscheduler-datasource-vertica
6464
dolphinscheduler-datasource-zeppelin
65+
dolphinscheduler-datasource-dolphindb
6566
--end--
6667

6768
--storage-plugins--

docs/configs/docsdev.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,10 @@ export default {
225225
title: 'Remote Shell',
226226
link: '/en-us/docs/dev/user_doc/guide/task/remoteshell.html',
227227
},
228+
{
229+
title: 'DolphinDB',
230+
link: '/en-us/docs/dev/user_doc/guide/datasource/dolphindb.html',
231+
},
228232
],
229233
},
230234
{
@@ -940,6 +944,10 @@ export default {
940944
title: 'Remote Shell',
941945
link: '/zh-cn/docs/dev/user_doc/guide/task/remoteshell.html',
942946
},
947+
{
948+
title: 'DolphinDB',
949+
link: '/zh-cn/docs/dev/user_doc/guide/datasource/dolphindb.html',
950+
},
943951
],
944952
},
945953
{
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# DolphinDB
2+
3+
![dolphindb](../../../../img/new_ui/dev/datasource/dolphindb-en.png)
4+
5+
## Datasource Parameters
6+
7+
| **Parameter** | **Description** |
8+
|----------------------------|--------------------------------------------------------------|
9+
| Datasource | Select DOLPHINDB. |
10+
| Datasource Name | Enter the name of the DataSource. |
11+
| Description | Enter a description of the DataSource. |
12+
| IP/Host Name | Enter the DolphinDB service IP. |
13+
| Port | Enter the DolphinDB service port. |
14+
| Username | Set the username for DolphinDB connection. |
15+
| Password | Set the password for DolphinDB connection. |
16+
| Jdbc connection parameters | Parameter settings for DolphinDB connection, in JSON format. |
17+
18+
## Native Supported
19+
20+
Yes, could use this datasource by default.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# DOLPHINDB 数据源
2+
3+
![dolphindb](../../../../img/new_ui/dev/datasource/dolphindb-zh.png)
4+
5+
| **参数名称** | **参数描述** |
6+
|-----------|----------------------------------|
7+
| 数据源 | 选择 DOLPHINDB |
8+
| 数据源名称 | 输入数据源的名称 |
9+
| 描述 | 输入数据源的描述 |
10+
| IP 主机名 | 输入连接 DOLPHINDB 的 IP |
11+
| 端口 | 输入连接 DOLPHINDB 的端口 |
12+
| 用户名 | 设置连接 DOLPHINDB 的用户名 |
13+
| 密码 | 设置连接 DOLPHINDB 的密码 |
14+
| JDBC 连接参数 | 用于 DOLPHINDB 连接的参数设置,以 JSON 形式填写 |
15+
16+
## 是否原生支持
17+
18+
是,数据源不需要任务附加操作即可使用。
91 KB
Loading
92.6 KB
Loading

dolphinscheduler-bom/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
<cron-utils.version>9.1.6</cron-utils.version>
5858
<h2.version>2.2.220</h2.version>
5959
<mysql-connector.version>8.0.33</mysql-connector.version>
60+
<dolphindb-jdbc.version>3.00.0.1</dolphindb-jdbc.version>
6061
<vertica-jdbc.version>12.0.4-0</vertica-jdbc.version>
6162
<oracle-jdbc.version>21.5.0.0</oracle-jdbc.version>
6263
<dameng-jdbc.version>8.1.2.79</dameng-jdbc.version>
@@ -408,6 +409,12 @@
408409
<version>${dameng-jdbc.version}</version>
409410
</dependency>
410411

412+
<dependency>
413+
<groupId>com.dolphindb</groupId>
414+
<artifactId>jdbc</artifactId>
415+
<version>${dolphindb-jdbc.version}</version>
416+
</dependency>
417+
411418
<dependency>
412419
<groupId>com.vertica.jdbc</groupId>
413420
<artifactId>vertica-jdbc</artifactId>

dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/constants/DataSourceConstants.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ public class DataSourceConstants {
4343
public static final String NET_SNOWFLAKE_JDBC_DRIVER = "net.snowflake.client.jdbc.SnowflakeDriver";
4444
public static final String COM_VERTICA_JDBC_DRIVER = "com.vertica.jdbc.Driver";
4545
public static final String COM_HANA_DB_JDBC_DRIVER = "com.sap.db.jdbc.Driver";
46+
public static final String COM_DOLPHINDB_JDBC_DRIVER = "com.dolphindb.jdbc.Driver";
4647

4748
/**
4849
* validation Query
@@ -66,6 +67,7 @@ public class DataSourceConstants {
6667
public static final String VERTICA_VALIDATION_QUERY = "select 1";
6768

6869
public static final String HANA_VALIDATION_QUERY = "select 1 from DUMMY";
70+
public static final String DOLPHINDB_VALIDATION_QUERY = "select 1";
6971

7072
/**
7173
* jdbc url
@@ -91,6 +93,7 @@ public class DataSourceConstants {
9193
public static final String JDBC_SNOWFLAKE = "jdbc:snowflake://";
9294
public static final String JDBC_VERTICA = "jdbc:vertica://";
9395
public static final String JDBC_HANA = "jdbc:sap://";
96+
public static final String JDBC_DOLPHINDB = "jdbc:dolphindb://";
9497

9598
/**
9699
* database type

dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-all/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,5 +163,10 @@
163163
<artifactId>dolphinscheduler-datasource-aliyunserverlessspark</artifactId>
164164
<version>${project.version}</version>
165165
</dependency>
166+
<dependency>
167+
<groupId>org.apache.dolphinscheduler</groupId>
168+
<artifactId>dolphinscheduler-datasource-dolphindb</artifactId>
169+
<version>${project.version}</version>
170+
</dependency>
166171
</dependencies>
167172
</project>
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
~ Licensed to the Apache Software Foundation (ASF) under one or more
4+
~ contributor license agreements. See the NOTICE file distributed with
5+
~ this work for additional information regarding copyright ownership.
6+
~ The ASF licenses this file to You under the Apache License, Version 2.0
7+
~ (the "License"); you may not use this file except in compliance with
8+
~ the License. You may obtain a copy of the License at
9+
~
10+
~ http://www.apache.org/licenses/LICENSE-2.0
11+
~
12+
~ Unless required by applicable law or agreed to in writing, software
13+
~ distributed under the License is distributed on an "AS IS" BASIS,
14+
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
~ See the License for the specific language governing permissions and
16+
~ limitations under the License.
17+
-->
18+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
19+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
20+
<modelVersion>4.0.0</modelVersion>
21+
<parent>
22+
<groupId>org.apache.dolphinscheduler</groupId>
23+
<artifactId>dolphinscheduler-datasource-plugin</artifactId>
24+
<version>dev-SNAPSHOT</version>
25+
</parent>
26+
27+
<artifactId>dolphinscheduler-datasource-dolphindb</artifactId>
28+
<packaging>jar</packaging>
29+
<name>${project.artifactId}</name>
30+
31+
<dependencies>
32+
<dependency>
33+
<groupId>org.apache.dolphinscheduler</groupId>
34+
<artifactId>dolphinscheduler-spi</artifactId>
35+
<scope>provided</scope>
36+
</dependency>
37+
38+
<dependency>
39+
<groupId>org.apache.dolphinscheduler</groupId>
40+
<artifactId>dolphinscheduler-datasource-api</artifactId>
41+
<version>${project.version}</version>
42+
</dependency>
43+
44+
<dependency>
45+
<groupId>org.apache.dolphinscheduler</groupId>
46+
<artifactId>dolphinscheduler-common</artifactId>
47+
<version>${project.version}</version>
48+
<scope>provided</scope>
49+
</dependency>
50+
51+
<dependency>
52+
<groupId>com.dolphindb</groupId>
53+
<artifactId>jdbc</artifactId>
54+
</dependency>
55+
56+
</dependencies>
57+
58+
</project>

0 commit comments

Comments
 (0)