postgresql时序数据库插件timescaledb语法

文章目录

前提是已经安装好timescaledb插件。

查看超表的chunks数据

有人说,我看表里的数据该是多少条还是多少条,没有分块啊?

是这样,超表只是一层外壳,实际上底层是做了chunks的。

语句:

sql 复制代码
SELECT hypertable_name, chunk_name, range_start, range_end
FROM timescaledb_information.chunks
WHERE hypertable_name = 'system_log_timescale';

结果如图:

当然,直接去timescaledb_information的chunks里查看也是可以的。

timescaledb机制?

从sql上来说,用法基本相同。它之所以快,是从底层做了很多结构性的优化,例如chunks等,所以才会如此快。

额外的结构

一张图就能说明白,原本只有一个schema就是public,使用timescaledb后,自动创建了很多schema这些schema都是用来支持timescaledb的,如图:

测试案例-建表语句

这里建了两个表,一个普通表,一个timescaledb表。

sql 复制代码
-- 1. 创建普通日志表
CREATE TABLE IF NOT EXISTS system_log_normal (
                                                 id          SERIAL PRIMARY KEY,
                                                 time        TIMESTAMPTZ NOT NULL,
                                                 level       TEXT NOT NULL,
                                                 service     TEXT NOT NULL,
                                                 message     TEXT
);

-- 2. 创建TimescaleDB超表
CREATE TABLE IF NOT EXISTS system_log_timescale (
                                                    time        TIMESTAMPTZ NOT NULL,
                                                    level       TEXT NOT NULL,
                                                    service     TEXT NOT NULL,
                                                    message     TEXT
);

-- 3. 将system_log_timescale转换为超表(需要已安装TimescaleDB扩展)
SELECT create_hypertable('system_log_timescale', 'time',
                         chunk_time_interval => INTERVAL '1 day',
                         if_not_exists => TRUE);

-- 4. 创建索引(可选,提升查询性能)
CREATE INDEX IF NOT EXISTS idx_normal_time ON system_log_normal(time);
CREATE INDEX IF NOT EXISTS idx_normal_level ON system_log_normal(level);
CREATE INDEX IF NOT EXISTS idx_timescale_time ON system_log_timescale(time);
CREATE INDEX IF NOT EXISTS idx_timescale_level ON system_log_timescale(level);

定时任务相关 todo

相关推荐
阳光九叶草LXGZXJ2 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
字节渡客3 小时前
Redis键明明过期了,业务还在读到旧数据
数据库·redis·spring
OnlineProxy5 小时前
亚马逊多账号运营:如何在规避“关联封号”风险的同时实现电商规模化扩张
服务器·数据库·redis
辻弋2017 小时前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑
可乐鸡翅yeah_7 小时前
业务中 M3U8 水印相关坑,硬水印和动态水印区别
前端·网络·数据库·ffmpeg·m3u8在线
石头麻辣鱼8 小时前
Bamboo 调度系统 OceanBase 适配实战:存储过程迁移踩过的三个大坑
数据库
龙亘川8 小时前
数智驱动民政升级 精准守护民生保障
大数据·数据库·人工智能
念何架构之路8 小时前
zap扩展生态与总结
java·前端·数据库
晚安日记wanna9 小时前
MySQL 回表为什么这么慢?5 种优化手段逐个拆解
数据库·mysql·性能优化
第七页独白9 小时前
汽车零件厂如何通过 QMS 真正落地 IATF 16949——QMS软件系统:品质检验-内审稽核-8d客诉管理:全星质量管理软件系统
java·前端·数据库