Java SDK

clickzetta-java
clickzetta-java
是云器 Lakehouse 的完整 Java 客户端包,包含 JDBC、
ClickZettaClient
ClickZettaClient
、实时写入
RealtimeStream
RealtimeStream
和批量写入
BulkloadStreamV2
BulkloadStreamV2
。如果应用只使用标准 JDBC,请改用更轻量的
clickzetta-jdbc
clickzetta-jdbc

概述

如果只是执行 SQL 查询或少量 DML,使用

clickzetta-jdbc
clickzetta-jdbc
;如果应用还需要统一 Client API、持续写入事件或批量导入历史数据,使用
clickzetta-java
clickzetta-java
clickzetta-java
clickzetta-java
已包含 JDBC 模块,两个 artifact 不需要同时安装。

Maven artifact适用场景选择原因
clickzetta-jdbc
clickzetta-jdbc
JDBC 查询、DML、连接池、ORM、BI 工具只包含 JDBC 能力,依赖更少、包体更轻量
clickzetta-java
clickzetta-java
JDBC + Realtime、Bulkload 或
ClickZettaClient
ClickZettaClient
完整 SDK,一个依赖覆盖查询和数据写入能力
能力适用场景入口
JDBCSQL 查询、BI/应用集成、小批量 DML
DriverManager
DriverManager
;使用完整 SDK 时也可调用
ClickZettaClient.getJdbcConnection()
ClickZettaClient.getJdbcConnection()
RealtimeStream
RealtimeStream
毫秒到秒级写入、事件流、CDC upsert/delete
client.newRealtimeStreamBuilder()
client.newRealtimeStreamBuilder()
BulkloadStreamV2
BulkloadStreamV2
大批量文件或历史数据导入、分钟级批任务
client.newBulkloadStreamV2Builder()
client.newBulkloadStreamV2Builder()

本章内容

页面说明
Java SDK 简介Maven 依赖、版本选择、Java 兼容性和常见问题
初始化 Client
ClickZettaClient
ClickZettaClient
的连接参数和生命周期管理
使用 JDBC 查询JDBC URL、驱动类名、查询、DML 和作业 ID 获取
实时写入数据
RealtimeStream
RealtimeStream
追加写入、CDC 写入、flush 和限制
批量写入数据(Bulkload)Bulkload 批量写入、分区写入、提交和错误处理

选型建议

需求推荐方式原因
Java 服务执行查询并读取结果JDBC标准接口,兼容连接池、ORM 和常见 Java 框架
Java 服务偶尔写入少量数据JDBC DML实现简单,适合低频、小批量写入
日志、埋点、业务事件持续写入
RealtimeStream
RealtimeStream
写入后可秒级查询,适合高频小批量
MySQL/PostgreSQL CDC 写入主键表
RealtimeStream
RealtimeStream
CDC
支持
UPSERT
UPSERT
DELETE_IGNORE
DELETE_IGNORE
等变更操作
一次性导入本地文件或历史数据Bulkload先暂存到对象存储再导入表,吞吐量更高
对象存储已有数据导入
COPY INTO
COPY INTO
数据已在对象存储时,SQL 导入链路更简单

使用注意

  • 只使用 JDBC 时优先引入
    clickzetta-jdbc
    clickzetta-jdbc
    ;需要其他 Java SDK 能力时引入
    clickzetta-java
    clickzetta-java
  • clickzetta-java
    clickzetta-java
    已包含 JDBC 模块,不要再重复引入
    clickzetta-jdbc
    clickzetta-jdbc
  • 根据应用运行环境选择 Java SDK 版本线:Java 8 使用 3.x 最新稳定版,Java 17 使用 4.x 最新稳定版。
  • Java 9 及以上运行环境使用 3.x 版本时,可能需要添加 JVM 参数,详见 Java SDK 简介
  • 批量写入使用 Bulkload。
  • 实时写入的未提交数据可以被普通查询看到,但 Table Stream、物化视图和动态表只能读取已提交数据。

相关文档

联系我们
预约咨询
微信咨询
电话咨询
邮件咨询