Skip to content

hypertable_columnstore_stats()

Get columnstore statistics related to the columnstore

Since 2.18.0

Retrieve compression statistics for the columnstore.

For more information about using hypertables, including chunk size partitioning, see hypertables.

To retrieve compression statistics:

  • Show the compression status of the conditions hypertable:

    SELECT * FROM hypertable_columnstore_stats('conditions');

    Returns:

    -[ RECORD 1 ]------------------+------
    total_chunks | 4
    number_compressed_chunks | 1
    before_compression_table_bytes | 8192
    before_compression_index_bytes | 32768
    before_compression_toast_bytes | 0
    before_compression_total_bytes | 40960
    after_compression_table_bytes | 8192
    after_compression_index_bytes | 32768
    after_compression_toast_bytes | 8192
    after_compression_total_bytes | 49152
    node_name |
  • Use pg_size_pretty get the output in a more human friendly format:

    SELECT pg_size_pretty(after_compression_total_bytes) as total
    FROM hypertable_columnstore_stats('conditions');

    Returns:

    -[ RECORD 1 ]--+------
    total | 48 kB

The syntax is:

SELECT * FROM hypertable_columnstore_stats('<hypertable_name>');
NameTypeDescription
hypertableREGCLASShypertable to show statistics for
ColumnTypeDescription
total_chunksBIGINTThe number of chunks used by the hypertable. Returns NULL if compression_status == Uncompressed.
number_compressed_chunksBIGINTThe number of chunks used by the hypertable that are currently compressed. Returns NULL if compression_status == Uncompressed.
before_compression_table_bytesBIGINTSize of the heap before compression. Returns NULL if compression_status == Uncompressed.
before_compression_index_bytesBIGINTSize of all the indexes before compression. Returns NULL if compression_status == Uncompressed.
before_compression_toast_bytesBIGINTSize the TOAST table before compression. Returns NULL if compression_status == Uncompressed.
before_compression_total_bytesBIGINTSize of the entire table (before_compression_table_bytes + before_compression_index_bytes + before_compression_toast_bytes) before compression. Returns NULL if compression_status == Uncompressed.
after_compression_table_bytesBIGINTSize of the heap after compression. Returns NULL if compression_status == Uncompressed.
after_compression_index_bytesBIGINTSize of all the indexes after compression. Returns NULL if compression_status == Uncompressed.
after_compression_toast_bytesBIGINTSize the TOAST table after compression. Returns NULL if compression_status == Uncompressed.
after_compression_total_bytesBIGINTSize of the entire table (after_compression_table_bytes + after_compression_index_bytes + after_compression_toast_bytes) after compression. Returns NULL if compression_status == Uncompressed.
node_nameNAMEnodes on which the hypertable is located, applicable only to distributed hypertables. Returns NULL if compression_status == Uncompressed.