This is an automated email from the ASF dual-hosted git repository.
wenjun pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-seatunnel.git
The following commit(s) were added to refs/heads/dev by this push:
new d2455864 [Feature][Flink-SQL-connector] add flink sql connector
elasticsearch 6&7 and docs (#1923)
d2455864 is described below
commit d2455864ce9017ff6383362aede0ec95d14f43c6
Author: legendtkl <[email protected]>
AuthorDate: Thu May 19 20:06:13 2022 +0800
[Feature][Flink-SQL-connector] add flink sql connector elasticsearch 6&7
and docs (#1923)
---
docs/en/connector/flink-sql/ElasticSearch.md | 48 ++++++++++++++++++++++
.../seatunnel-connectors-flink-sql-dist/pom.xml | 12 ++++++
.../pom.xml | 17 ++++----
.../pom.xml | 17 ++++----
.../seatunnel-connectors-flink-sql/pom.xml | 2 +
5 files changed, 80 insertions(+), 16 deletions(-)
diff --git a/docs/en/connector/flink-sql/ElasticSearch.md
b/docs/en/connector/flink-sql/ElasticSearch.md
new file mode 100644
index 00000000..14b643c2
--- /dev/null
+++ b/docs/en/connector/flink-sql/ElasticSearch.md
@@ -0,0 +1,48 @@
+# Flink SQL ElasticSearch Connector
+
+## Description
+With elasticsearch connector, you can use the Flink SQL to write data into
ElasticSearch.
+
+
+## Usage
+Let us have a brief example to show how to use the connector.
+
+### 1. kafka prepare
+Please refer to the [Eleastic Doc](https://www.elastic.co/guide/index.html) to
prepare elastic environment.
+
+### 2. prepare seatunnel configuration
+ElasticSearch provide different connectors for different version:
+* version 6.x: flink-sql-connector-elasticsearch6
+* version 7.x: flink-sql-connector-elasticsearch7
+
+Here is a simple example of seatunnel configuration.
+```sql
+SET table.dml-sync = true;
+
+CREATE TABLE events (
+ id INT,
+ name STRING
+) WITH (
+ 'connector' = 'datagen'
+);
+
+CREATE TABLE es_sink (
+ id INT,
+ name STRING
+) WITH (
+ 'connector' = 'elasticsearch-7', -- or 'elasticsearch-6'
+ 'hosts' = 'http://localhost:9200',
+ 'index' = 'users'
+);
+
+INSERT INTO es_sink SELECT * FROM events;
+```
+
+### 3. start Flink SQL job
+Execute the following command in seatunnel home path to start the Flink SQL
job.
+```bash
+$ bin/start-seatunnel-sql.sh -c config/elasticsearch.sql.conf
+```
+
+### 4. verify result
+Verify result from elasticsearch.
diff --git a/seatunnel-connectors/seatunnel-connectors-flink-sql-dist/pom.xml
b/seatunnel-connectors/seatunnel-connectors-flink-sql-dist/pom.xml
index 1310c5c5..4c74d4c4 100644
--- a/seatunnel-connectors/seatunnel-connectors-flink-sql-dist/pom.xml
+++ b/seatunnel-connectors/seatunnel-connectors-flink-sql-dist/pom.xml
@@ -37,6 +37,18 @@
<artifactId>flink-sql-connector-kafka</artifactId>
<version>${project.version}</version>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.seatunnel</groupId>
+ <artifactId>flink-sql-connector-elasticsearch-6</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.seatunnel</groupId>
+ <artifactId>flink-sql-connector-elasticsearch-7</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
<build>
diff --git a/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
b/seatunnel-connectors/seatunnel-connectors-flink-sql/flink-sql-connector-elasticsearch-6/pom.xml
similarity index 76%
copy from seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
copy to
seatunnel-connectors/seatunnel-connectors-flink-sql/flink-sql-connector-elasticsearch-6/pom.xml
index a23fccad..44174398 100644
--- a/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
+++
b/seatunnel-connectors/seatunnel-connectors-flink-sql/flink-sql-connector-elasticsearch-6/pom.xml
@@ -17,19 +17,20 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
- <artifactId>seatunnel-connectors</artifactId>
+ <artifactId>seatunnel-connectors-flink-sql</artifactId>
<groupId>org.apache.seatunnel</groupId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
- <artifactId>seatunnel-connectors-flink-sql</artifactId>
- <packaging>pom</packaging>
-
- <modules>
- <module>flink-sql-connector-jdbc</module>
- <module>flink-sql-connector-kafka</module>
- </modules>
+ <artifactId>flink-sql-connector-elasticsearch-6</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.flink</groupId>
+
<artifactId>flink-connector-elasticsearch6_${scala.binary.version}</artifactId>
+ <version>${flink.version}</version>
+ </dependency>
+ </dependencies>
</project>
\ No newline at end of file
diff --git a/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
b/seatunnel-connectors/seatunnel-connectors-flink-sql/flink-sql-connector-elasticsearch-7/pom.xml
similarity index 76%
copy from seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
copy to
seatunnel-connectors/seatunnel-connectors-flink-sql/flink-sql-connector-elasticsearch-7/pom.xml
index a23fccad..c472227c 100644
--- a/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
+++
b/seatunnel-connectors/seatunnel-connectors-flink-sql/flink-sql-connector-elasticsearch-7/pom.xml
@@ -17,19 +17,20 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
- <artifactId>seatunnel-connectors</artifactId>
+ <artifactId>seatunnel-connectors-flink-sql</artifactId>
<groupId>org.apache.seatunnel</groupId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
- <artifactId>seatunnel-connectors-flink-sql</artifactId>
- <packaging>pom</packaging>
-
- <modules>
- <module>flink-sql-connector-jdbc</module>
- <module>flink-sql-connector-kafka</module>
- </modules>
+ <artifactId>flink-sql-connector-elasticsearch-7</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.flink</groupId>
+
<artifactId>flink-connector-elasticsearch7_${scala.binary.version}</artifactId>
+ <version>${flink.version}</version>
+ </dependency>
+ </dependencies>
</project>
\ No newline at end of file
diff --git a/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
b/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
index a23fccad..1b4e9bea 100644
--- a/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
+++ b/seatunnel-connectors/seatunnel-connectors-flink-sql/pom.xml
@@ -29,6 +29,8 @@
<modules>
<module>flink-sql-connector-jdbc</module>
<module>flink-sql-connector-kafka</module>
+ <module>flink-sql-connector-elasticsearch-6</module>
+ <module>flink-sql-connector-elasticsearch-7</module>
</modules>