Timescale Cloud:性能、规模、企业级

自托管产品

MST

创建一个策略,根据特定索引对超表分块中的行进行重新排序。该策略会重新排序所有分块中的行,但最近的两个分块除外,因为它们仍在接收写入。默认情况下,此策略每 24 小时运行一次。要更改调度,请调用 alter_job 并调整 schedule_interval

每个超表只能有一个重新排序策略。

有关单个分块的手动重新排序,请参阅 reorder_chunk

注意

当分块中的行已通过策略重新排序后,它们不会被同一策略的后续运行再次重新排序。如果您向已重新排序的较旧分块写入大量数据,请对其重新运行 reorder_chunk。如果您更改了许多较旧分块,最好删除并重新创建该策略。

名称类型描述
hypertableREGCLASS为其创建策略的超表
index_nameTEXT用于在磁盘上排序行的现有超表索引
名称类型描述
if_not_existsBOOLEAN设置为 true 可避免在 reorder_policy 已存在时报错。此时将发出通知。默认为 false
initial_startTIMESTAMPTZ控制策略首次运行的时间以及未来运行计划的计算方式。
  • 如果省略或设置为 NULL(默认)
    • 首次运行计划在 now() + schedule_interval 时进行(默认为 24 小时)。
    • 下次运行计划在上次运行结束后一个完整的 schedule_interval 后进行。
  • 如果设置
    • 首次运行在指定时间进行。
    • 下次运行计划为 initial_start + schedule_interval,无论上次运行何时结束。
timezoneTEXT有效时区。如果同时指定了 initial_start,则重新排序策略的后续运行将与其初始启动时间对齐。但是,夏令时 (DST) 变化可能会改变这种对齐。如果您希望解决此问题,请设置为有效时区。如果省略,将执行 UTC 分桶。默认为 NULL
类型描述
job_idINTEGER为实现此策略而创建的 TimescaleDB 后台任务 ID
SELECT add_reorder_policy('conditions', 'conditions_device_id_time_idx');

创建一个策略,根据现有 (device_id, time) 索引每 24 小时重新排序分块。这适用于所有分块,但最近的两个分块除外。

关键词

此页面有问题?报告问题 或 编辑此页面 在 GitHub 上。