Skip to main content
Reorder a single ‘s heap to follow the order of an index. This function acts similarly to the PostgreSQL CLUSTER command , however it uses lower lock levels so that, unlike with the CLUSTER command, the and are able to be read for most of the process. It does use a bit more disk space during the operation. This command can be particularly useful when data is often queried in an order different from that in which it was originally inserted. For example, data is commonly inserted into a in loose time order (for example, many devices concurrently sending their current state), but one might typically query the about a specific device. In such cases, reordering a using an index on (device_id, time) can lead to significant performance improvement for these types of queries. One can call this function directly on individual s of a , but using add_reorder_policy is often much more convenient.

Samples

Reorder a chunk on an index:
SELECT reorder_chunk('_timescaledb_internal._hyper_1_10_chunk', '_timescaledb_internal.conditions_device_id_time_idx');

Arguments

NameTypeDefaultRequiredDescription
chunkREGCLASS-Name of the to reorder.
indexREGCLASS-The name of the index (on either the or ) to order by.
verboseBOOLEANFALSESetting to true displays messages about the progress of the reorder command.

Returns

This function returns void.