I think page 6 of this white-paper tells you how it works:
There are 2 policies:
- segment (or really partition)
- rows (which is really block)
If the using the segment policy of 30 days, then the partition needs to be old for 30 days, and then the segment compressed, which makes the segment smaller.
If the using the rows policy of 30 days, then the rows in the block need to be old for 30 days, and then the block compressed, which won;t make the segment smaller.
Thank you but it's not so clear because for example in our company we use netapp storage with directnfs and we don't use Oracle ASM.
So I would like to understand how it works with our solution.
For example I have a 32GB tablespace already allocated and full, after 30 days If I use segment policy mean that the tablespace allocated (not only used) space would be smaller?
If I save 10GB with compression I'll find a tablespace from 32Gb to 22GB allocated or I nerd to move data to a smaller tablespace to save space.