The main reason is that Postgres by default compresses values that are bigger than (approximately) 2000 bytes of data variable length data types - these are mainly text, varchar and bytea types.
Oracle will only compress the content of LOB columns if you are using the Enterprise Edition and enable the compression when defining the LOB column (the most important part is to use SecureFile instead of BasicFile).
Most probably your LOB columns where defined without using compression in Oracle and contain many values bigger than 2000 bytes, that's why you see a reduction in size due to Postgres' automatic compression.
The main reason is that Postgres by default compresses values that are bigger than (approximately) 2000 bytes of data variable length data types - these are mainly
text
,varchar
andbytea
types.Oracle will only compress the content of LOB columns if you are using the Enterprise Edition and enable the compression when defining the LOB column (the most important part is to use
SecureFile
instead ofBasicFile
).Most probably your LOB columns where defined without using compression in Oracle and contain many values bigger than 2000 bytes, that's why you see a reduction in size due to Postgres' automatic compression.