+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>
>>>>> 
>>>>> 
>>>> 
>>>> 
>>> 
>> 

Reply via email to