Timeudb API 参考
Timeudb 提供了许多 SQL 函数和视图,方便管理数据库的时序数据。请参阅下面的 API 的接口。
create_hypertable() 创建超表
从 Unvdb 表创建 Timeudb 超表,该 Unvdb 表必须为空表
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
relation |
REGCLASS | 要转换为超表的名称。 |
time_column_name |
REGCLASS | 包含时间值的列的名称,或者要分区的主列的名称。 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
partitioning_column |
REGCLASS | 要作为哈希分区列的名称。 |
number_partitions |
INTEGER | 要用于的哈希分区数,必须 > 0。 |
chunk_time_interval |
INTERVAL | 每个区块的时间间隔,必须 > 0。 |
create_default_indexes |
BOOLEAN | 是否在时间/分区列上创建默认索引。 |
if_not_exists |
BOOLEAN | 如果表已转换为超表,则引发异常。 |
partitioning_func |
REGCLASS | 用于计算值分区的函数。 |
associated_schema_name |
REGCLASS | 内部超表的模式名称。 |
associated_table_prefix |
TEXT | 内部超表块名称的前缀。 |
migrate_data |
BOOLEAN | 设置为 TRUE 可将表中的任何现有数据迁移到新超表中的块。 |
time_partitioning_func |
REGCLASS | 将不兼容的主时间列值转换为兼容的主时间列值的函数。 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
hypertable_id |
INTEGER | Timeudb 中超表的 ID。 |
schema_name |
TEXT | 转换为超表的模式名称。 |
table_name |
TEXT | 转换为超表的表名。 |
created |
BOOLEAN | 如果创建了超表,则为 TRUE,如果未创建超表,则为 FALSE。 |
[使用示例]
创建示例表
CREATE TABLE conditions ( time TIMESTAMPTZ NOT NULL, location TEXT NOT NULL, temperature DOUBLE PRECISION NULL, humidity DOUBLE PRECISION NULL);
将表转换为超表,只进行时间分区
SELECT create_hypertable(’conditions’, ‘time’);
将表转换为超表,设置为 24 小时
SELECT create_hypertable(’conditions’, ‘time’, chunk_time_interval => 86400000000); SELECT create_hypertable(’conditions’, ‘time’, chunk_time_interval => INTERVAL ‘1 day’);
将表转换为超表。如果已经是超级表,不要发出警告
SELECT create_hypertable(’conditions’, ‘time’, if_not_exists => TRUE);
show_chunks() 显示分区块列表
获取与超表关联的分区块列表。
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
relation |
REGCLASS | 超表的名称。 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
older_than |
ANY | 早于此时间戳的任何块。 |
newer_than |
ANY | 比此时间戳更新的任何块。 |
created_before |
ANY | 应显示在此时间戳之前创建的任何块。 |
created_after |
ANY | 应显示在此时间戳之后创建的任何块。 |
[使用示例]
获取超表所有分区块
SELECT show_chunks(’conditions’);
获取超表指定时间的分区块
SELECT show_chunks(’conditions’, older_than => INTERVAL ‘3 months’); SELECT show_chunks(’conditions’, created_before => INTERVAL ‘3 months’); SELECT show_chunks(’conditions’, created_after => INTERVAL ‘1 month’); SELECT show_chunks(’conditions’, older_than => DATE ‘2017-01-01’);
drop_chunks() 删除分区块
删除指定的分区块。
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
relation |
REGCLASS | 超表的名称。 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
older_than |
ANY | 早于此时间戳的任何块。 |
newer_than |
ANY | 比此时间戳更新的任何块。 |
created_before |
ANY | 在此时间戳之前创建的任何块。 |
created_after |
ANY | 在此时间戳之后创建的任何块。 |
verbose |
BOOLEAN | 设置为 true 将显示有关重新排序命令进度的消息。 |
[使用示例]
删除超过 3 个月的所有块
SELECT drop_chunks(’conditions’, INTERVAL ‘3 months’);
指定时间段删除
SELECT drop_chunks(’conditions’, older_than => INTERVAL ‘3 months’); SELECT drop_chunks(’conditions’, created_before => INTERVAL ‘3 months’); SELECT drop_chunks(’conditions’, created_after => INTERVAL ‘1 month’); SELECT drop_chunks(’conditions’, older_than => DATE ‘2017-01-01’);
set_chunk_time_interval() 设置分区块时间间隔
设置新的间隔来创建新分区块,现有区块的时间间隔没有改变。
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称。 |
chunk_time_interval |
time | 新区块的时间间隔。 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
dimension_name |
REGCLASS | 要为其设置分区数的时间维度的名称。 |
[使用示例]
设置时间间隔为 24 小时
SELECT set_chunk_time_interval(’conditions’, INTERVAL ‘24 hours’); SELECT set_chunk_time_interval(’conditions’, 86400000000);
add_dimension() 创建超表
从 Timeudb 超表上增加其他分区
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 要转换为超表的名称。 |
column_name |
TEXT | 要分区的列的名称。 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
number_partitions |
INTEGER | 要用于的哈希分区数,必须 > 0。 |
chunk_time_interval |
INTERVAL | 每个区块的时间间隔,必须 > 0。 |
partitioning_func |
REGCLASS | 用于计算分区的函数功能。 |
if_not_exists |
BOOLEAN | 如果表已存在分区,则引发异常。 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
dimension_id |
INTEGER | 分区维度的内部 ID |
schema_name |
TEXT | 模式名称。 |
table_name |
TEXT | 超表的名称。 |
column_name |
TEXT | 分区维度的列名称 |
created |
BOOLEAN | 如果成功,则为 TRUE,如果失败,则为 FALSE。 |
[使用示例]
先创建超表,再增加分区维度
SELECT create_hypertable(’conditions’, ‘time’); SELECT add_dimension(’conditions’, ‘location’, number_partitions => 4); SELECT add_dimension(’conditions’, ‘location’, number_partitions => 2, if_not_exists => true);
hypertable_size() 超表大小
获取超表的大小
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
| hypertable_size | BIGINT | 超表的总空间,包括索引和 TOAST 数据 |
TOAST,全称是 The Oversized-Attribute Storage Technique, 超大属性存储技术
[使用示例]
获取超表的大小
SELECT hypertable_size(’conditions’); SELECT hypertable_name, hypertable_size(format(’%I.%I’, hypertable_schema, hypertable_name)::regclass) FROM timeudb_information.hypertables;
hypertable_index_size() 超表索引大小
获取超表索引的大小
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
index_name |
REGCLASS | 超表索引的名称 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
| hypertable_index_size | BIGINT | 超表索引的总空间 |
[使用示例]
查看超表索引名称,并查看超表索引的大小
\d conditions SELECT hypertable_index_size(’conditions_time_idx’);
hypertable_detailed_size() 超表详细大小
获取超表详细的大小
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
| table_bytes | BIGINT | 超表的主表大小 |
| index_bytes | BIGINT | 超表的索引大小 |
| toast_bytes | BIGINT | TOAST 数据大小 |
| total_bytes | BIGINT | 超表的总空间,包括索引和 TOAST 数据 |
TOAST,全称是 The Oversized-Attribute Storage Technique, 超大属性存储技术
[使用示例]
查看超表的详细大小
SELECT * FROM hypertable_detailed_size(’conditions’);
chunks_detailed_size() 超表分区块的详细大小
获取超表分区块的详细大小
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
| chunk_schema | TEXT | 分区块的模式名称 |
| chunk_name | TEXT | 分区块的名称 |
| table_bytes | BIGINT | 超表的主表大小 |
| index_bytes | BIGINT | 超表的索引大小 |
| toast_bytes | BIGINT | TOAST 数据大小 |
| total_bytes | BIGINT | 超表的总空间,包括索引和 TOAST 数据 |
TOAST,全称是 The Oversized-Attribute Storage Technique, 超大属性存储技术
[使用示例]
查看超表分区块的详细大小
SELECT * FROM chunks_detailed_size(’conditions’);
attach_tablespace() 挂载表空间
将超表挂载到表空间
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
tablespace |
TEXT | 要挂载的表空间名称 |
hypertable |
REGCLASS | 超表的名称 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
if_not_attached |
BOOLEAN | 如果表已挂载表空间,则引发异常。 |
[使用示例]
将超表挂载到表空间
SELECT attach_tablespace(’data1’, ‘conditions’); SELECT attach_tablespace(’data2’, ‘conditions’, if_not_attached => true);
detach_tablespace() 卸载表空间
卸载表空间
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
tablespace |
TEXT | 要卸载的表空间名称 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
if_attached |
BOOLEAN | 如果表没有挂载表空间,则引发异常 |
[使用示例]
卸载表空间
SELECT detach_tablespace(’data1’, ‘conditions’); SELECT detach_tablespace(’data2’, ‘conditions’, if_attached => true);
卸载表空间的所有超表
SELECT detach_tablespace(’data1’);
detach_tablespaces() 卸载所有表空间
卸载所有表空间
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[使用示例]
卸载所有表空间
SELECT detach_tablespaces(’conditions’);
show_tablespaces() 显示所有表空间
显示所有表空间
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[使用示例]
显示所有表空间
SELECT * FROM show_tablespaces(’conditions’);
add_retention_policy() 增加数据保留策略
增加超表的数据保留策略
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
relation |
REGCLASS | 超表的名称 |
drop_after |
INTERVAL or INTEGER | 早于此时间间隔的分区块将被删除 |
schedule_interval |
INTERVAL | 执行策略的时间的间隔 |
initial_start |
TIMESTAMPTZ | 首次运行策略的时间 |
timezone |
TEXT | 时区 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
if_not_exists |
BOOLEAN | 设置以避免错误 |
drop_created_before |
INTERVAL | 创建时间早于此的分区块将被删除 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
| job_id | INTEGER | 该策略的后台作业 ID |
[使用示例]
增加超表的数据保留策略
SELECT add_retention_policy(’conditions’, drop_after => INTERVAL ‘6 months’); SELECT add_retention_policy(’conditions’, drop_created_before => INTERVAL ‘6 months’);
remove_retention_policy() 删除数据保留策略
删除超表的数据保留策略
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
relation |
REGCLASS | 超表的名称 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
if_exists |
BOOLEAN | 设置以避免错误 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
| job_id | INTEGER | 该策略的后台作业 ID |
[使用示例]
删除超表的数据保留策略
SELECT remove_retention_policy(’conditions’);
ALTER TABLE(compression) 修改超表压缩属性
修改超表压缩属性
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
timeudb.compress |
BOOLEAN | 打开或关闭表压缩 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
timeudb.compress_orderby |
TEXT | 压缩的时间顺序,默认值为时间列的降序 |
timeudb.compress_segmentby |
TEXT | 压缩列的列表 |
timeudb.compress_chunk_time_interval |
TEXT | 压缩块时间间隔 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
table_name |
TEXT | 压缩的超表 |
column_name |
TEXT | 用于排序的列 |
interval |
TEXT | 压缩的时间间隔 |
[使用示例]
打开超表的压缩功能
ALTER TABLE conditions SET (timeudb.compress);
add_compression_policy() 增加压缩策略
增加超表的压缩策略
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
compress_after |
INTERVAL or INTEGER | 早于此时间间隔的分区块将被压缩 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
schedule_interval |
INTERVAL | 执行压缩的时间间隔 |
initial_start |
TIMESTAMPTZ | 首次运行策略的时间 |
timezone |
TEXT | 时区 |
if_not_exists |
BOOLEAN | 如果超表上已存在压缩策略,避免报错 |
compress_created_before |
INTERVAL | 创建时间早于此的分区块将被压缩 |
[使用示例]
增加超表的压缩策略
SELECT add_compression_policy(’conditions’, INTERVAL ‘8 weeks’);
remove_compression_policy() 删除压缩策略
删除超表的压缩策略
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
if_exists |
BOOLEAN | 如果超表不存在压缩策略,避免报错 |
[使用示例]
删除超表的压缩策略
SELECT remove_compression_policy(’conditions’);
compress_chunk() 压缩分区块
压缩指定的分区块
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
chunk_name |
REGCLASS | 分区块的名称 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
if_not_compressed |
BOOLEAN | 如果已压缩,避免报错 |
[使用示例]
压缩指定的分区块
SELECT compress_chunk(’_timeudb_internal._hyper_2_1_chunk’);
decompress_chunk() 解压分区块
解压指定的分区块
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
chunk_name |
REGCLASS | 分区块的名称 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
if_compressed |
BOOLEAN | 如果未压缩,避免报错 |
[使用示例]
解压指定的分区块
SELECT decompress_chunk(’_timeudb_internal._hyper_2_1_chunk’);
hypertable_compression_stats() 获取超表压缩状态
获取超表压缩状态
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
total_chunks |
BIGINT | 超表使用的分区块数 |
number_compressed_chunks |
INTEGER | 超表当前压缩使用的分区块数 |
before_compression_table_bytes |
BIGINT | 压缩前表的大小 |
before_compression_index_bytes |
BIGINT | 压缩前索引的大小 |
before_compression_toast_bytes |
BIGINT | 压缩前 TOAST 数据大小 |
before_compression_total_bytes |
BIGINT | 压缩前超表的总大小 |
after_compression_table_bytes |
BIGINT | 压缩后表的大小 |
after_compression_index_bytes |
BIGINT | 压缩后索引的大小 |
after_compression_toast_bytes |
BIGINT | 压缩后 TOAST 数据大小 |
after_compression_total_bytes |
BIGINT | 压缩后超表的总大小 |
[使用示例]
获取超表压缩状态
SELECT * FROM hypertable_compression_stats(’conditions’);
chunk_compression_stats() 获取分区块压缩状态
获取分区块压缩状态
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
chunk_schema |
TEXT | 分区块的模式名称 |
chunk_name |
TEXT | 分区块的名称 |
compression_status |
TEXT | 分区块的压缩状态 |
before_compression_table_bytes |
BIGINT | 压缩前表的大小 |
before_compression_index_bytes |
BIGINT | 压缩前索引的大小 |
before_compression_toast_bytes |
BIGINT | 压缩前 TOAST 数据大小 |
before_compression_total_bytes |
BIGINT | 压缩前分区块的总大小 |
after_compression_table_bytes |
BIGINT | 压缩后表的大小 |
after_compression_index_bytes |
BIGINT | 压缩后索引的大小 |
after_compression_toast_bytes |
BIGINT | 压缩后 TOAST 数据大小 |
after_compression_total_bytes |
BIGINT | 压缩后分区块的总大小 |
[使用示例]
获取分区块压缩状态
SELECT * FROM chunk_compression_stats(’conditions’);
add_job() 增加任务
增加任务
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
proc |
REGPROC | 任务运行的函数或过程的名称 |
schedule_interval |
INTERVAL | 任务运行间隔 |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
config |
JSONB | 任务的配置 |
initial_start |
TIMESTAMPTZ | 第一次运行时间 |
scheduled |
BOOLEAN | 是否自动运行 |
check_config |
REGPROC | 检查配置函数 |
fixed_schedule |
BOOLEAN | 是否固定计划 |
timezone |
TEXT | 时区 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
job_id |
INTEGER | 任务ID |
[使用示例]
增加任务
CREATE OR REPLACE PROCEDURE user_defined_action(job_id int, config jsonb)
LANGUAGE PLPGSQL AS
$$
BEGIN
RAISE NOTICE 'Executing action % with config %', job_id, config;
END
$$;
SELECT add_job('user_defined_action','1h');
alter_job() 修改任务
修改任务
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
job_id |
INTEGER | 修改的任务ID |
[可选参数]
| 名字 | 类型 | 描述 |
|---|---|---|
schedule_interval |
INTERVAL | 任务运行间隔 |
max_runtime |
INTERVAL | 任务最大运行时间 |
max_retries |
INTEGER | 失败时,最多尝试次数 |
retry_period |
INTERVAL | 失败时,尝试间隔 |
scheduled |
BOOLEAN |
是否自动运行 |
config |
JSONB | 任务的配置 |
next_start |
TIMESTAMPTZ | 下次开始时间 |
if_exists |
BOOLEAN |
当不存在任务时,避免报错 |
check_config |
REGPROC |
检查配置函数 |
fixed_schedule |
BOOLEAN |
是否固定计划 |
initial_start |
TIMESTAMPTZ |
第一次运行时间 |
timezone |
TEXT |
时区 |
[返回]
| 列 | 类型 | 描述 |
|---|---|---|
job_id |
INTEGER | 任务ID |
schedule_interval |
INTERVAL |
任务运行间隔 |
max_runtime |
INTERVAL | 任务最大运行时间 |
max_retries |
INTEGER | 失败时,最多尝试次数 |
retry_period |
INTERVAL | 失败时,尝试间隔 |
scheduled |
BOOLEAN |
是否自动运行 |
config |
JSONB | 任务的配置 |
next_start |
TIMESTAMPTZ | 下次开始时间 |
check_config |
TEXT |
检查配置函数 |
[使用示例]
修改任务
SELECT alter_job(1000, schedule_interval => INTERVAL ‘2 days’);
delete_job() 删除任务
删除任务
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
job_id |
INTEGER | 删除的任务ID |
[使用示例]
删除任务
SELECT delete_job(1000);
run_job() 运行任务
运行任务
[必需参数]
| 名字 | 类型 | 描述 |
|---|---|---|
job_id |
INTEGER | 直接运行的任务ID |
[使用示例]
运行任务
SET client_min_messages TO DEBUG1; CALL run_job(1000);
timeudb_information.hypertables 超表信息视图
获取超表信息视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
hypertable_schema |
TEXT | 超表的模式名称 |
hypertable_name |
TEXT | 超表的名称 |
owner |
TEXT | 超表的用户 |
num_dimensions |
SMALLINT | 超表的分区维度 |
num_chunks |
BIGINT | 分区数量 |
compression_enabled |
BOOLEAN | 是否为压缩表 |
is_distributed |
BOOLEAN | 是否为分布表 |
tablespaces |
TEXT | 挂载的表空间 |
[使用示例]
获取超表信息视图
SELECT * FROM timeudb_information.hypertables;
timeudb_information.dimensions 超表分区维度视图
获取超表分区维度视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
hypertable_schema |
TEXT | 超表的模式名称 |
hypertable_name |
TEXT | 超表的名称 |
dimension_number |
BIGINT | 分区维度编号 |
column_name |
TEXT | 分区列名 |
column_type |
REGTYPE | 分区列类型 |
dimension_type |
TEXT | 维度类型 |
time_interval |
INTERVAL | 时间间隔 |
integer_interval |
BIGINT | 整数间隔 |
integer_now_func |
TEXT | 分区函数 |
num_partitions |
SMALLINT | 分区数量 |
[使用示例]
获取超表分区维度视图
SELECT * FROM timeudb_information.dimensions;
timeudb_information.chunks 分区块信息视图
获取分区块信息视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
hypertable_schema |
TEXT | 超表的模式名称 |
hypertable_name |
TEXT | 超表的名称 |
chunk_schema |
TEXT | 分区块的模式名称 |
chunk_name |
TEXT | 分区块的名称 |
primary_dimension |
TEXT | 主分区列的名称 |
primary_dimension_type |
REGTYPE | 主分区列的类型 |
range_start |
TIMESTAMP WITH TIME ZONE | 分区起始时间 |
range_end |
TIMESTAMP WITH TIME ZONE | 分区结束时间 |
range_start_integer |
BIGINT | 分区起始整数 |
range_end_integer |
BIGINT | 分区结束整数 |
is_compressed |
BOOLEAN | 是否压缩 |
chunk_tablespace |
TEXT | 使用的表空间 |
chunk_creation_time |
TIMESTAMP WITH TIME ZONE | 分区创建时间 |
[使用示例]
获取分区块信息视图
SELECT * FROM timeudb_information.chunks;
timeudb_information.compression_settings 压缩信息视图
获取压缩信息视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
hypertable_schema |
TEXT | 超表的模式名称 |
hypertable_name |
TEXT | 超表的名称 |
attname |
TEXT | 压缩设置中使用的列的名称 |
segmentby_column_index |
SMALLINT | 压缩段的列位置 |
orderby_column_index |
SMALLINT | 压缩的列位置 |
orderby_asc |
BOOLEAN | 是否升序排序 |
orderby_nullsfirst |
BOOLEAN | 是否 null 优先排列 |
[使用示例]
获取压缩信息视图
SELECT * FROM timeudb_information.compression_settings;
timeudb_information.hypertable_compression_settings 超表压缩设置视图
获取超表压缩设置视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
hypertable |
REGCLASS | 超表的名称 |
segmentby |
TEXT | 分段压缩数据的列名称 |
orderby |
TEXT | 排序信息 |
compress_interval_length |
TEXT | 压缩的间隔 |
[使用示例]
获取超表压缩设置视图
SELECT * FROM timeudb_information.hypertable_compression_settings;
timeudb_information.jobs 任务视图
获取任务视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
job_id |
INTEGER | 任务ID |
application_name |
TEXT | 策略名称 |
schedule_interval |
INTERVAL | 任务运行间隔 |
max_runtime |
INTERVAL | 任务最大运行时间 |
max_retries |
INTEGER | 失败时,最多尝试次数 |
retry_period |
INTERVAL | 失败时,尝试间隔 |
proc_schema |
TEXT | 执行任务函数的模式 |
proc_name |
TEXT | 执行任务函数的名称 |
owner |
TEXT | 任务所有者 |
scheduled |
BOOLEAN | 是否自动运行 |
fixed_schedule |
BOOLEAN | 是否为固定计划任务 |
config |
JSONB | 传递给执行任务的参数 |
next_start |
TIMESTAMP WITH TIME ZONE | 下次开始时间 |
initial_start |
TIMESTAMP WITH TIME ZONE | 首次执行时间 |
hypertable_schema |
TEXT | 超表的模式名称 |
hypertable_name |
TEXT | 超表的名称 |
check_schema |
TEXT | 验证函数的模式 |
check_name |
TEXT | 验证函数的名称 |
[使用示例]
获取任务视图
SELECT * FROM timeudb_information.jobs;
timeudb_information.job_stats 任务状态视图
获取任务状态视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
hypertable_schema |
TEXT | 超表的模式名称 |
hypertable_name |
TEXT | 超表的名称 |
job_id |
INTEGER | 任务ID |
last_run_started_at |
TIMESTAMP WITH TIME ZONE | 上一次任务的开始时间 |
last_successful_finish |
TIMESTAMP WITH TIME ZONE | 最后一次成功任务的结束时间 |
last_run_status |
TEXT | 最后一次任务的状态 |
job_status |
TEXT | 任务的当前状态 |
last_run_duration |
INTERVAL | 最后一次任务的持续时间 |
next_start |
TIMESTAMP WITH TIME ZONE | 下一次任务的开始时间 |
total_runs |
BIGINT | 任务的总运行次数 |
total_successes |
BIGINT | 任务的成功次数 |
total_failures |
BIGINT | 任务的失败次数 |
[使用示例]
获取任务状态视图
SELECT * FROM timeudb_information.job_stats;
timeudb_information.job_errors 任务错误视图
获取任务错误视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
job_id |
INTEGER | 任务ID |
proc_schema |
TEXT | 执行任务函数的模式 |
proc_name |
TEXT | 执行任务函数的名称 |
pid |
INTEGER | 任务的后台进程ID |
start_time |
TIMESTAMP WITH TIME ZONE | 任务开始时间 |
finish_time |
TIMESTAMP WITH TIME ZONE | 任务结束时间 |
sqlerrcode |
TEXT | SQL错误码 |
err_message |
TEXT | 详细的错误信息 |
[使用示例]
获取任务错误视图
SELECT * FROM timeudb_information.job_errors;
timeudb_experimental.policies 策略信息视图
获取策略信息视图
[视图信息]
| 列 | 类型 | 描述 |
|---|---|---|
relation_name |
TEXT | 超表的模式名称 |
relation_schema |
TEXT | 超表的名称 |
schedule_interval |
TEXT | 策略运行时间间隔 |
proc_schema |
TEXT | 策略的模式名称 |
proc_name |
TEXT | 策略的表名称 |
config |
TEXT | 策略配置信息 |
hypertable_schema |
TEXT | 策略视图的模式名称 |
hypertable_name |
TEXT | 策略视图的表名称 |
[使用示例]
获取策略信息视图
SELECT * FROM timeudb_experimental.policies;