diff --git a/timescaledb/how-to-guides/compression/manually-compress-chunks.md b/timescaledb/how-to-guides/compression/manually-compress-chunks.md
index dfccd6020af2..67bcb47beaad 100644
--- a/timescaledb/how-to-guides/compression/manually-compress-chunks.md
+++ b/timescaledb/how-to-guides/compression/manually-compress-chunks.md
@@ -1,4 +1,5 @@
# Manual compression
+
In most cases, an automated compression policy is sufficient. However, if you
want more control over compression, you can also manually compress specific
chunks.
@@ -8,18 +9,21 @@ Compression alters data on your disk, so always back up before you start.
## Compress chunks manually
-Before you start, you need a list of chunks to compress. In this example, we are
-using a hypertable called `example`, and compressing these chunks that are older
-than three days.
+
+Before you start, you need a list of chunks to compress. In this example, you
+use a hypertable called `example`, and compress chunks older than three days.
### Selecting chunks to compress
+
1. At the psql prompt, select all chunks in the table `example` that are older
than three days:
+
```sql
SELECT show_chunks('example', older_than => INTERVAL '3 days');
```
+
1. This returns a list of chunks. Take a note of the chunk names:
||show_chunks|
@@ -29,37 +33,50 @@ than three days.
-When you are happy with the list of chunks, you can use the chunk names to manually compress each one.
+When you are happy with the list of chunks, you can use the chunk names to
+manually compress each one.
### Compressing chunks manually
+
1. At the psql prompt, compress the chunk:
+
```sql
SELECT compress_chunk( '');
```
+
1. Check the results of the compression with this command:
+
```sql
SELECT *
FROM chunk_compression_stats('example');
```
- The results show the chunks for the given hypertable, their compression status, and some other statistics:
+
+ The results show the chunks for the given hypertable, their compression
+ status, and some other statistics:
|chunk_schema|chunk_name|compression_status|before_compression_table_bytes|before_compression_index_bytes|before_compression_toast_bytes|before_compression_total_bytes|after_compression_table_bytes|after_compression_index_bytes|after_compression_toast_bytes|after_compression_total_bytes|node_name|
|---|---|---|---|---|---|---|---|---|---|---|---|
|_timescaledb_internal|_hyper_1_1_chunk|Compressed|8192 bytes|16 kB|8192 bytes|32 kB|8192 bytes|16 kB|8192 bytes|32 kB||
|_timescaledb_internal|_hyper_1_20_chunk|Uncompressed||||||||||
-
+
1. Repeat for all chunks you want to compress.
## Manually compress chunks in a single command
+
Alternatively, you can select the chunks and compress them in a single command
by using the output of the `show_chunks` command to compress each one. For
-example, use this command to compress chunks between one and three weeks old
+example, use this command to compress chunks between one and three weeks old
if they are not already compressed:
+
```sql
-SELECT compress_chunk(i, if_not_compressed => true)
- FROM show_chunks('example', now() - INTERVAL '1 week', now() - INTERVAL '3 weeks') i;
+SELECT compress_chunk(i, if_not_compressed => true)
+ FROM show_chunks(
+ 'example',
+ now()::timestamp - INTERVAL '1 week',
+ now()::timestamp - INTERVAL '3 weeks'
+ ) i;
```