背景:Split 是 Trino 处理数据的基本单位,每个 Driver 处理一个 Split。Hive 连接器支持hive.max-initial-split-size等 split 相关配置参数,可以把大文件按配置切成小文件(32MB左右),加快 scan 速度。Kudu 连接器默认单个 tablet 一个 split(scanner),但是 Kudu Java Client 中有暴露“切割 tablet” 的 API,KuduBackUp 中也已支持 splitSizeBytes,但是 Trino Kudu Connector 中支持的配置参数较少,因此需要自己手动加上。
需要改动的地方有两个:
- 首先在 github.com/trinodb/tri… 中添加
kudu.split-size-bytes - 在
io.trino.plugin.kudu.KuduClientSession中调用org.apache.kudu.client.KuduScanToken.KuduScanTokenBuilder#setSplitSizeBytes方法使参数生效 - 在
etc/catalog/kudu.properties中加上相关参数