2

我正在 QuestDB 中设计一个指标表。每天将有几百万行,它们在一天中均匀分布。这些行大约 200 个字节,所有数字和时间戳。数据读取通常会跨越数天,在边缘情况下长达一年。

我无法决定我应该将其按 DAY 或 MONTH(甚至 YEAR)划分。我知道我必须提前做出这个决定,因为没有办法从一个切换到另一个。

4

1 回答 1

2

写入从较小的分区中受益,从较大的分区中读取。

小和大是相对于机器的 RAM 而言的。您希望分区完全适合 RAM,因此根据经验,可以达到 10Gb 以进行有效写入。

如果您的记录是 200 字节,那么它将是高达 400Mb 的数据,每天 200 万行。这使您可以自由使用每月分区,如果您可以为 QuestDB 分配 32-64 Gb 的 RAM,则每月大约需要 12 Gb。

每月分区将在多天扫描查询中有效,例如每月或每年的跨度。每日分区将看到与“冷”运行时打开的多个文件相关的延迟。

于 2021-05-24T21:22:00.327 回答