【发布时间】:2026-02-15 22:35:01
【问题描述】:
这是我在 ClickHouse 中当前的(简化的)模型:
凭据表
- 用户:字符串
- 域:字符串
- 密码:字符串
- 泄漏:UInt64
leak 字段是对泄漏 id 的引用。
泄漏表
- id: UInt64
- 名称:字符串
- 描述:字符串
- 日期:字符串
我正在为Credential 使用 MergeTree 引擎,为Leak 使用日志。
有时,会插入两个相同的凭据,例如:
|用户 |域名 |密码 | 0 |
|用户 |域名 |密码 | 1 |
我想把它变成:
|用户 |域名 |密码 | [0, 1] |
我已阅读有关 ReplacingMergeTree 的信息,但除了 version 参数之外,我没有找到其他方法来指定一些重写/删除规则。
我的问题是我有数十亿个条目,在插入之前处理数据听起来很疯狂。即使 ClickHouse 的响应时间非常短,检查我尝试插入的每个新凭据是否已经在其中似乎很荒谬,如果是,请更新其数据,对吗?
我正在尝试尽可能地减少磁盘存储,但看起来很难在保持这些令人难以置信的响应时间之间取得平衡。我在听你的想法。
【问题讨论】:
标签: duplicates clickhouse