测试Clickhouse时,出现 WARN:com.github.clickhousepower.jdbc.ClickhouseSQLException:DB:Exception: Unexpected packet Data received from client.Stack trace。 最后数据存储结束时的提示语句也始终没有打印,并且核对数据时有丢失数据的情况
根据文章 分析是线程数太多,建议大批量,小批次写入,但是调整写入分区 依然不能解决问题。
重新审视建表SQL时,发现分区字段指定的是 生成数据的时间(年月日 时分秒),这个字段的维度过窄,导致生成的分区文件过多,最终导致数据丢失,写入失败
解决:
建表时合理选择分区字段,或者在字段上添加方法,增大分区维度,避免生成大量分区文件
我个人使用的 partition by toYYYYMMDD(add_Date),将分区维度变成 天,问题解决!