将表空间附加到超表并使用它来存储数据块。 表空间是文件系统上的一个目录,允许控制单个表和索引在文件系统上的存储位置。一个常见的用例是为特定的存储磁盘创建表空间,允许表存储在那里。要了解更多信息,请参阅有关表空间的 PostgreSQL 文档

TimescaleDB 可以为每个超表管理一组表空间,自动将数据块分散到附加到超表的一组表空间中。如果超表是哈希分区的,TimescaleDB 会尝试将属于同一分区的数据块放在同一表空间中。更改附加到超表的表空间集也可能会更改放置行为。没有附加表空间的超表将其数据块放置在数据库的默认表空间中。

名称类型描述
tablespaceTEXT要附加的表空间的名称。
hypertableREGCLASS要将表空间附加到的超表。

表空间需要在创建后才能附加到超表。创建后,表空间可以同时附加到多个超表,以共享底层的磁盘存储。在调用 create_hypertable 之前,使用 CREATE TABLETABLESPACE 选项将常规表与表空间关联,与在 create_hypertable 之后立即调用 attach_tablespace 具有相同的效果。

名称类型描述
if_not_attachedBOOLEAN设置为 true 以避免在表空间已附加到表时抛出错误。而是发出通知。默认为 false。

将表空间 disk1 附加到超表 conditions

SELECT attach_tablespace('disk1', 'conditions');
SELECT attach_tablespace('disk2', 'conditions', if_not_attached => true);

关键词

在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页面