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

Reply via email to