How to Determine the Size of a TimescaleDB Table?
Asked Answered
B

1

8

To determine the size of my TimescaleDB table my_table (which has a hypertable created previously), I ran the SQL query

pg_size_pretty( pg_total_relation_size('my_table') );

However, despite having 10k rows in this table, the size returned from this query is 24 kB.

Querying for the size of the database gave a more reasonable size of 34 MB, using the SQL query

SELECT pg_size_pretty( pg_database_size('database_development') ); 

Question: What is the correct way for calculating the size of a TimescaleDB table?

Using PostgreSQL 11.5, TimescaleDB 1.5.1

Bertrand answered 31/12, 2019 at 3:54 Comment(0)
L
11

We typically recommend using TimescaleDB-specific functions:

https://docs.timescale.com/latest/api#hypertable_relation_size https://docs.timescale.com/latest/api#hypertable_relation_size_pretty

If you are interested in getting information about each/specific chunk:

https://docs.timescale.com/latest/api#chunk_relation_size https://docs.timescale.com/latest/api#chunk_relation_size_pretty

Loya answered 31/12, 2019 at 4:14 Comment(3)
links are out of dateKuban
with 2.0 its: SELECT hypertable_size()Wolfort
To have a value in human readable form: SELECT pg_size_pretty( hypertable_size('<schema>.<table>'));Thromboplastic

© 2022 - 2024 — McMap. All rights reserved.