[#6233] feat(flink): flink jdbc catalog
What changes were proposed in this pull request?
Provide flink jdbc catalog
Why are the changes needed?
close #6233
Does this PR introduce any user-facing change?
None
How was this patch tested?
org.apache.gravitino.flink.connector.integration.test.jdbc.FlinkJdbcMysqlCatalogIT org.apache.gravitino.flink.connector.jdbc.TestJdbcPropertiesConverter
Thanks for the PR, could you add a related document? And besides Mysql, does Flink JDBC connector support other RDMS?
Thanks for the PR, could you add a related document? And besides Mysql, does Flink JDBC connector support other RDMS?
The FlinkJdbcCatalog supports only MySQL and PostgreSQL databases.
@hdygxsj could you summarize the process logic about the jdbc URL properties when loading catalog and tables? I'm confused by the logic.
@hdygxsj could you summarize the process logic the jdbc URL properties when loading catalog and tables? I'm confused by the logic.
When creating a FlinkJdbcCatalog, you need to specify the baseUrl, which includes the protocol, IP address, and port. When the FlinkJdbcCatalog creates a table, it passes the databaseUrl to the table's options. The databaseUrl includes the protocol, IP address, port, and the database where the table is located.
The following is the source code of FlinkJdbcCatalog.getTable, which demonstrates the relationship between URLs when loading a table and creating a catalog.
@hdygxsj LGTM except minor comments, there are some other works like adding document and add integration test for PG, would you like to create issue to track it or add it in this PR? both ok for me.
@hdygxsj merged to main, thanks for your work