Timescale-手动压缩

Timescale-手动压缩


环境:

PostgreSQL数据库

V2.x版本

手动压缩

在大多数情况下,自动压缩策略就足够了。但是,如果您想要对压缩进行更多控制,您也可以手动压缩特定块。

注意:压缩会更改磁盘上的数据,因此在开始之前始终备份!

手动压缩块

在开始之前,您需要压缩块列表。在此示例中,我们使用一种称为超表的超表,并压缩这些大于三天的块

1.选择块进行压缩

①在 psql 提示下,选择表中超过三天的所有块

SELECT show_chunks('example', older_than => INTERVAL '3 days');

②这将返回一个块列表。记下大块名称:

show_chunks
_timescaledb_internal_hyper_1_2_chunk
_timescaledb_internal_hyper_1_3_chunk

当您对大块列表感到满意时,您可以使用大块名称手动压缩每个块名。

2.手动压缩块

①在psql提示下,压缩块:

SELECT compress_chunk( '<chunk_name>');

② 请通过此命令检查压缩结果

SELECT * FROM chunk_compression_stats('example');

结果显示给定超音速的块、其压缩状态和一些其他统计数据:

chunk_schemachunk_namecompression_statusbefore_compression_table_bytesbefore_compression_index_bytesbefore_compression_toast_bytesbefore_compression_total_bytesafter_compression_table_bytesafter_compression_index_bytesafter_compression_toast_bytesafter_compression_total_bytesnode_name
_timescaledb_internal_hyper_1_1_chunk压缩8192 字节16 kB8192 字节32千瓦8192 字节16 kB8192 字节32千瓦
_timescaledb_internal_hyper_1_20_chunk解压

③ 对于要压缩的所有块重复。

在单个模式中手动压缩快

您可以选择块并使用命令的输出来压缩每个命令,从而在单个命令中压缩它们,如:show_chunks

SELECT compress_chunk(i) from show_chunks('example', now() - interval '1 week', now() - interval '3 weeks') i;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值