mun1r0b0t commented on PR #11623:
URL: https://github.com/apache/iceberg/pull/11623#issuecomment-2498995895

   I am certainly open to simplifying this. However, as user and developer of 
other connectors, I strongly feel that the connector should support consuming 
from multiple topics and writing to multiple destination tables without the use 
of other services.
   
   Kafka Connect API supports consuming from multiple topics (using a list of 
topic names or a regex), but this is just not possible to do with the current 
Iceberg connector. So, it is essentially preventing me from using Kafka Connect 
to its full potential and forcing me to create multiple connectors where one 
connector would work. Other Kafka connectors that I've worked with all support 
topic to destination mapping out of the box and do not require any additional 
services. This is the first connector I've come across that does not work with 
multiple topics.
   
   The complexity is largely due to the existing setup of using a field from 
the data rather than some configuration for routing. With the current routing 
approach, we have to add the destination table name as part of the data and 
write data with entirely different schemas and use cases all to one topic. I 
did not want to break existing behavior and hence had to work it in the PR, but 
in my humble opinion, the existing approach is contradictory to how Kafka 
should be used.
   
   I'd much rather keep only the topic based routing and do away with the field 
based routing, if it comes down to supporting only one of these options. It 
aligns much better with how Kafka and Kafka Connect is used and how other 
connectors behave.
   
   How do you feel about making a breaking change like this with the 
configuration - keep the `iceberg.table.table_name.topics` and 
`iceberg.table.table_name.topic-regex`, remove the current routing set up and 
rely on other services for more complex routing patterns. I would also prefer 
to keep the option to plug in a custom routing solution for those who want to 
do their own routing without additional services, but I can drop that as well.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to