Skip to content

[INLONG-5133][Sort] Support InfluxDB extract node#5774

Closed
liangyepianzhou wants to merge 10 commits intoapache:masterfrom
liangyepianzhou:xiangying/sort/IIP-5133
Closed

[INLONG-5133][Sort] Support InfluxDB extract node#5774
liangyepianzhou wants to merge 10 commits intoapache:masterfrom
liangyepianzhou:xiangying/sort/IIP-5133

Conversation

@liangyepianzhou
Copy link
Contributor

@liangyepianzhou liangyepianzhou commented Sep 3, 2022

Prepare a Pull Request

Motivation

Add Apache InfluxDB Extract for Sort

Modifications

The details can be found at #5133.

Verifying this change

(Please pick either of the following options)

  • This change is a trivial rework/code cleanup without any test coverage.

  • This change is already covered by existing tests, such as:
    (please describe tests)

  • This change added tests and can be verified as follows:

    (example:)

    • Added integration tests for end-to-end deployment with large payloads (10MB)
    • Extended integration test for recovery after broker failure

Documentation

  • Does this pull request introduces a new feature? (yes / no)
  • If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@liangyepianzhou liangyepianzhou changed the title [INLONG_5133][Sort] Add Apache InfluxDB Extract and Load Node for Sort [INLONG-5133][Sort] Add Apache InfluxDB Extract and Load Node for Sort Sep 3, 2022
@liangyepianzhou
Copy link
Contributor Author

@jun0315 I have finished writing the main framework of influx source, and now there are three points that need to be improved. I've listed it below, please take a look at this question when you have time.

  1. Parameters
    • The parameters written in the building function in the InfluxDBSource may not be complete. So if you need to add parameters here, you also need to add them in the getScanRuntimeProvider and InfluxDBTableSourceFactory.
    • Divide required and optional parameters into the methods requiredOptions and optionalOptions
  2. Serialization
    • InfluxDB Table Source needs to pass in a deserializer DebeziumDeserializationSchema<RowData> deserializer when calling the function; This can get help at flink-connector-influxdb2
  3. Connecter CanonicalName: There is a configuration item in InfluxDBSource that I don't know how to deal with
    props.setProperty("connector.class", InfluxDbConnector.class.getCanonicalName());

In order to better understand the workflow of the Flink influx DB source, I wrote a simple process described below:
Workflow of Flink source connecter (simplified version):
InfluxDBTableSourceFactory creates an InfluxDBTableSource, and the getScanRuntimeProvider method of InfluxDBTableSource creates a DebeziumSourceFunction responsible for fetching captured change data from the database into Flink.
And InfluxDBSource is similar to a creator used to create a DebeziumSourceFunction.
And more details can be found here.

@liangyepianzhou
Copy link
Contributor Author

@dockerzhang Please help check this PR when you have time, THX.
In addition, I noticed that except for MySQL and JDBC, other CDCs only implement source and not sink. Influx DB also only needs to implement source, right?

@EMsnap
Copy link
Member

EMsnap commented Sep 5, 2022

@dockerzhang Please help check this PR when you have time, THX. In addition, I noticed that except for MySQL and JDBC, other CDCs only implement source and not sink. Influx DB also only needs to implement source, right?

I guess this issue means you need to implement both sink and source

@EMsnap
Copy link
Member

EMsnap commented Sep 5, 2022

@dockerzhang Please help check this PR when you have time, THX. In addition, I noticed that except for MySQL and JDBC, other CDCs only implement source and not sink. Influx DB also only needs to implement source, right?

I guess this issue means you need to implement both sink and source

also the sink of these connector is implement by jdbc driver, can check the jdbc connector for details

@liangyepianzhou liangyepianzhou changed the title [INLONG-5133][Sort] Add Apache InfluxDB Extract and Load Node for Sort [INLONG-5133][Sort] Support Apache InfluxDB source Sep 13, 2022
Copy link
Contributor

@yunqingmoswu yunqingmoswu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add some unit test for node protocol and connector.

@healchow healchow changed the title [INLONG-5133][Sort] Support Apache InfluxDB source [INLONG-5133][Sort] Support InfluxDB extract node Sep 29, 2022
@github-actions
Copy link

github-actions bot commented Jan 7, 2023

This PR is stale because it has been open for 60 days with no activity.

@github-actions github-actions bot added the stage/stale Issues or PRs that had no activity for a long time label Jan 7, 2023
@github-actions github-actions bot removed the stage/stale Issues or PRs that had no activity for a long time label Feb 3, 2023
@github-actions
Copy link

github-actions bot commented Apr 5, 2023

This PR is stale because it has been open for 60 days with no activity.

@github-actions github-actions bot added the stage/stale Issues or PRs that had no activity for a long time label Apr 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component/sort stage/stale Issues or PRs that had no activity for a long time

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] Add InfluxDB Extract and Load Node for Sort

5 participants