一、Apache 协议下所有可用功能(不含 TSL)
核心基础设施(全部 Apache)
| 类别 | 功能 |
|---|---|
| Hypertable | 创建/删除/改名/改 schema/设置整数函数/维度配置 |
| Chunk | 自动创建/手动创建/查找/删除/批量删除/显示 |
| 维度管理 | 开放维度(range)、封闭维度(hash)、Hypercube 构建 |
| 自适应分块 | 动态 chunk 大小计算 |
| 约束继承 | PK/UK/FK/CHECK 从 hypertable 传播到 chunk |
| OSM 集成 | 外部表附加为 chunk / 分离 / 范围管理 |
| 表空间 | 每个 hypertable 独立 tablespace |
| 目录表 | 所有 catalog 表都存在(hypertable, dimension, chunk, continuous_agg, compression_settings 等) |
规划器 Hook(全部 Apache)
| Hook | 功能 |
|---|---|
| planner_hook | 预处理查询、warm 缓存、标记 RTE |
| set_rel_pathlist_hook | 分块扩展、chunk_append、sort transform、FK 传播 |
| get_relation_info_hook | 附加元数据、压缩 chunk 索引清理 |
| create_upper_paths_hook | DML 路由替换、partialize_agg、hashagg 优化 |
分块优化(全部 Apache)
| 优化 | 说明 |
|---|---|
| Chunk Append | 运行时分块排除,用 ChunkAppend 替代 Append |
| Constraint-Aware Append | 利用 CHECK 约束优化 |
| Sort Transform | 将 ORDER BY 变换推入 index scan |
| Hash Aggregation | 自定义 hashagg 路径 |
| NOW() Constification | 将 now() 转换为常量 |
| CAGG GROUP BY 重排序 | 连续聚合的 GROUP BY 匹配 ORDER BY |
后台工作者(全部 Apache)
| 功能 | 说明 |
|---|---|
| BGW 调度器 | 发现和管理后台作业 |
| 作业注册 | add_job() / delete_job() / run_job() / alter_job() |
| 统计视图 | timescaledb_information.jobs / job_stats / job_errors / job_history |
SQL 函数(全部 Apache)
| 函数 | 说明 |
|---|---|
| time_bucket() | 所有重载:timestamp/timestamptz/date/int,支持 origin/offset/timezone |
| time_bucket_ng() | 可变宽度桶(月、年) |
| histogram() | 自定义直方图聚合 |
| first() / last() | Bookend 聚合函数 |
| show_chunks() | 列出分块 |
| drop_chunks() | 批量删除分块 |
| drop_single_chunk() | 单块删除 |
| create_chunk() | 手动创建分块 |
| chunk_id_from_relid() | 分块 ID 查找 |
| chunk_status() | 分块状态检查 |
DDL 传播(全部 Apache)
| 操作 | 传播到 chunk |
|---|---|
| CREATE TABLE | ✅ |
| DROP TABLE | ✅ 级联到 chunk |
| TRUNCATE | ✅ |
| VACUUM / ANALYZE | ✅ |
| REINDEX | ✅ |
| GRANT / REVOKE | ✅ |
| ALTER TABLE RENAME | ✅ |
| ALTER TABLE SET SCHEMA | ✅ |
| ALTER TABLE CHANGE OWNER | ✅ |
| ALTER TABLE ADD/DROP CONSTRAINT | ✅ |
压缩相关(Apache 仅有目录结构,无实际功能)
- compression_settings 目录表存在
- get_segmentby_defaults() / get_orderby_defaults() 提示函数存在
- 但 compress_chunk()、decompress_chunk()、所有压缩算法均为 ERROR stub
连续聚合(Apache 仅有目录结构,无实际功能)
- continuous_agg 目录表存在
- ts_continuous_agg_find_by_relid() 查找函数存在
- 但 refresh_continuous_aggregate()、cagg_validate_query()、partialize_agg() 均为 ERROR stub
二、TSL 独占功能(Apache 下全部报错)
| 功能 | 说明 |
|---|---|
| 数据压缩 | compress/decompress chunk、gorilla/deltadelta/dictionary/array/bool 算法 |
| 连续聚合执行 | refresh、invalidation、materialization、repair |
| Gapfill | time_bucket_gapfill()、locf()、interpolate() |
| Chunk freeze/unfreeze | 不可变分块 |
| Reorder/Move/Merge chunks | 物理分块操作 |
| 策略系统 | retention/compression/reorder/refresh_cagg policy |
| Skip-scan | 跳过扫描路径 |
| 列扫描 | Columnar scan node |
| 透明解压缩 | DecompressChunk 执行计划 |
| 向量化聚合 | Vectorized aggregation |
| Hypercore 访问方法 | 列存引擎 |
| 导入/导出 | Import/export |
| DML 压缩分块处理 | Compressed chunk DML pathlist |
| 预处理器 TSL 钩子 | Watermark constify、CAGG sort pushdown |