我对 CickHouse 中常见类型的禁用 NULL 有点困惑。NULL 值限制背后的想法是什么?
在 Google BigQuery 中,我的工作流程是在同一个表中存储尽可能多的指标,尽管我每行只能存储一个字段。
但在 ClickHouse 案例中,所有值都将设置为默认值。
- 这在存储效率方面可以吗?
- 通过这些表进行聚合的常用方法是什么?我的意思是只聚合真实值(没有那些被设置为默认值的值)
- 也许我应该使用不同的表方案结构?
ps 数据是加密货币指标,例如(价格、交易量、社区规模、链上数据)。
pss 我的常见查询是按时间段聚合,即
SELECT time_bucket('10 seconds', time) AS period, max(value), avg(value), fisrt(value), last(value) GROUP BY id, period
一些关于字段(+、-、/、*)、移动平均线、标准偏差的数学运算。(但这部分可以在接下来的步骤中使用 pandas 完成)。
time_bucket是 timescale 在时间段内聚合的原语。