典型的数据仓库数据库模式通常遵循带有非规范化日期和时间列的星型模式。这意味着事实表(使用 timescaledb 时应该是超表)没有包含时间戳的列,而是具有数据和时间表的外键。
有没有办法让 timescaledb 意识到这一点并正确分区事实表?或者时间戳列是超表的硬性要求?
谢谢
典型的数据仓库数据库模式通常遵循带有非规范化日期和时间列的星型模式。这意味着事实表(使用 timescaledb 时应该是超表)没有包含时间戳的列,而是具有数据和时间表的外键。
有没有办法让 timescaledb 意识到这一点并正确分区事实表?或者时间戳列是超表的硬性要求?
谢谢
Timescale 需要提供一个时间列来进行分区。它不需要是时间戳,但可以是例如整数值。查看文档
如果int
使用 代替时间,重要的是它以与时间相同的方式增加。请注意,在这种情况下,有必要提供chunk_time_interval
.
也可以提供time_partitioning_func
,它将引用转换为时间兼容的值。