Hi Flink community, I'd like to revive the discussion around FLIP-202, which proposes introducing a native ClickHouse Connector for Apache Flink.
The original FLIP was authored by RocMarshal and later picked up by ConradJam in August 2023. As there have been no recent updates, I'd like to take this opportunity to bring it back to the community's attention and help move the discussion forward. --- ## Background & Motivation I currently have a real production need for a secure and stable ClickHouse connection with Flink, which motivated me to explore this area more deeply. While investigating, I found that: - The existing unofficial flink-clickhouse-connector relies on an unmaintained JDBC dependency, which poses reliability and security risks - ClickHouse now officially supports JDBC v2, which is actively maintained and significantly more robust than the previous driver - ClickHouse adoption has grown considerably since the original FLIP was proposed, making this connector increasingly relevant to the community Based on this, I have been working on a fork that migrates the implementation to use the official ClickHouse JDBC v2 driver (0.9.7) and adds compatibility with Flink 2.0.1: https://github.com/och5351/flink-connector-clickhouse/tree/feature/flink-201-clickhouse-097 The current implementation is not yet perfect, but it is functional and serves as a solid starting point. I plan to continue refining and improving it through community contributions as the discussion progresses. --- ## What I'd Like to Discuss Based on the previous discussion and my current work, I'd like to raise the following questions for the community: 1. **Reviving FLIP-202** Is the community open to restarting the FLIP-202 discussion with updated content that reflects: - The current Flink connector API - The official ClickHouse JDBC v2 driver (0.9.7) - Flink 2.x compatibility 2. **Integration into flink-connector-jdbc** Given the JDBC-based implementation, is there a possibility of integrating the ClickHouse connector into flink-connector-jdbc rather than maintaining a separate repository? 3. **Standalone external repository** If a separate repository is preferred, would the community support establishing flink-connector-clickhouse as an official standalone external connector? --- ## Why Now - ClickHouse has grown significantly in adoption since 2023 and is widely used in real-time analytics workloads - ClickHouse now officially supports JDBC v2, making this a great opportunity to build the connector on a well-maintained and future-proof foundation - Flink 2.x introduces new APIs that make this a good time to design the connector on a solid foundation - There is clear community interest based on the previous discussion thread (FLIP-202, FLINK-26999) --- I'd love to hear thoughts from the community, especially from those who were involved in the original discussion: cc: RocMarshal, ConradJam, Martijn Visser, Kanthi Subramanian, Robert Metzger Original FLIP-202: https://cwiki.apache.org/confluence/display/FLINK/FLIP-202 Jira Ticket (FLINK-26999): https://issues.apache.org/jira/browse/FLINK-26999 My current fork for reference: https://github.com/och5351/flink-connector-clickhouse/tree/feature/flink-201-clickhouse-097 Looking forward to the discussion! Best regards, Chanhae Oh
