+1 from my side, it will make jdbc connector unified with other ones. Best, Dan Zou
> 在 2020年4月30日,23:16,Jark Wu <imj...@gmail.com> 写道: > > Big +1 from my side. > The new structure and class names look nicer now. > > Regarding to the compability problem, I have looked into the public APIs in > flink-jdbc, there are 3 kinds of APIs now: > 1) new introduced JdbcSink for DataStream users in 1.11 > 2) JDBCAppendTableSink, JDBCUpsertTableSink, JDBCTableSource are introduced > since 1.9 > 3) very ancient JDBCOutputFormat and JDBCInputFormat > > For (1), as it's an un-released API, so I think it's safe to move to new > package. cc @Khachatryan Roman <khachatryan.ro...@gmail.com> who > contributed this. > For (2), because TableSource and TableSink are not designed to be accessed > by users since 1.11, so I think it's fine to move them. > For (3), I'm not sure how many users are still using these out-of-date > classes. > But I think it's fine to keep them for one more version, and drop them in > the next version. > > > Best, > Jark > > On Thu, 30 Apr 2020 at 22:57, Flavio Pompermaier <pomperma...@okkam.it> > wrote: > >> Very big +1 from me >> >> Best, >> Flavio >> >> On Thu, Apr 30, 2020 at 4:47 PM David Anderson <da...@alpinegizmo.com> >> wrote: >> >>> I'm very happy to see the jdbc connector being normalized in this way. +1 >>> from me. >>> >>> David >>> >>> On Thu, Apr 30, 2020 at 2:14 PM Timo Walther <twal...@apache.org> wrote: >>> >>>> Hi Leonard, >>>> >>>> this sounds like a nice refactoring for consistency. +1 from my side. >>>> >>>> However, I'm not sure how much backwards compatibility is required. >>>> Maybe others can comment on this. >>>> >>>> Thanks, >>>> Timo >>>> >>>> On 30.04.20 14:09, Leonard Xu wrote: >>>>> Hi, dear community >>>>> >>>>> Recently, I’m thinking to refactor the flink-jdbc connector structure >>>> before release 1.11. >>>>> After the refactor, in the future, we can easily introduce unified >>>> pluggable JDBC dialect for Table and DataStream, and we can have a >> better >>>> module organization and implementations. >>>>> >>>>> So, I propose following changes: >>>>> 1) Use `Jdbc` instead of `JDBC` in the new public API and interface >>>> name. The Datastream API `JdbcSink` which imported in this version has >>>> followed this standard. >>>>> >>>>> 2) Move all interface and classes from `org.apache.flink.java.io >>> .jdbc`(old >>>> package) to `org.apache.flink.connector.jdbc`(new package) to follow >> the >>>> base connector path in FLIP-27. >>>>> I think we can move JDBC TableSource, TableSink and factory from old >>>> package to new package because TableEnvironment#registerTableSource、 >>>> TableEnvironment#registerTableSink will be removed in 1.11 ans these >>>> classes are not exposed to users[1]. >>>>> We can move Datastream API JdbcSink from old package to new package >>>> because it’s introduced in this version. >>>>> We will still keep `JDBCInputFormat` and `JDBCOoutoutFormat` in old >>>> package and deprecate them. >>>>> Other classes/interfaces are internal used and we can move to new >>>> package without breaking compatibility. >>>>> 3) Rename `flink-jdbc` to `flink-connector-jdbc`. well, this is a >>>> compatibility broken change but in order to comply with other >> connectors >>>> and it’s real a connector rather than a flink-jdc-driver[2] we’d better >>>> decide do it ASAP. >>>>> >>>>> >>>>> What do you think? Any feedback is appreciate. >>>>> >>>>> >>>>> Best, >>>>> Leonard Xu >>>>> >>>>> [1] >>>> >>> >> http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-Remove-registration-of-TableSource-TableSink-in-Table-Env-and-ConnectTableDescriptor-td37270.html >>>> < >>>> >>> >> http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-Remove-registration-of-TableSource-TableSink-in-Table-Env-and-ConnectTableDescriptor-td37270.html >>>>> >>>>> [2]https://github.com/ververica/flink-jdbc-driver < >>>> https://github.com/ververica/flink-jdbc-driver> >>>>> >>>>> >>>> >>>> >>> >>