开发者社区> 问答> 正文

什么是 ClickHouse-JDBC?

什么是 ClickHouse-JDBC?

展开
收起
商陆呀 2022-05-09 22:03:46 418 0
1 条回答
写回答
取消 提交回答
  • 根据 XA 规范,完整的分布式事务机制需要实现大量的标准接口。在本设计中,实际上只需要实现少量关键接口,因此,采用了基于组合的适配器模式,向 Flink 提供基于标准 XA 接口的 XAResource 实现,同时对 ClickHouse Server 屏蔽了不需要支持的接口。

    对于 XADataSource 的实现,采用了基于继承的适配器模式,并针对 Exactly-Once 的特性,修改了部分默认配置,如发送失败的重试次数等参数。

    另外,在生产环境中,通常不会通过分布式表,而是通过 SLB 进行数据写入时的负载均衡。在 Exactly-Once 场景中,Flink 侧的 Task 需要保持针对某一 ClickHouse Server 节点的连接,因此不能使用 SLB 的方式进行负载均衡。针对这一问题,我们借鉴了 BalanceClickHouseDataSource 的思路,通过在 URL 中配置多个IP,并在 properties 配置中将 write_mode 设置为 Random ,可以使 XADataSource 在保障 Exactly-Once 的同时,具有负载均衡的能力。

    2022-05-10 19:37:12
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
PostgreSQL实战 立即下载
2023云栖大会:AnalyticDB MySQL新特性介绍 立即下载
AnalyticDB for MySQL 技术白皮书 立即下载