I'm new to Vertica and attempting to understand how it handles encoding and compression of column data. Specifically, I'm interested in learning about whether or not it's possible to exactly control the encoding type and compression type for a column. For example, suppose that I created the following table and inserted some data:
CREATE TABLE test_table (company VARCHAR(90), order_count INT);
CREATE PROJECTION test_table_super (company, order_count ENCODING RLE)
AS SELECT company, order_count FROM test_table;
INSERT INTO test_table VALUES ('BigCompany', 823);
If I then take a look at the compressions and encodings fields, I find:
select column_name, encodings, compressions from v_monitor.column_storage
where projection_name = 'test_table_super';
column_name | encodings | compressions
-------------+-----------+--------------
company | String | lzo
order_count | RLE | lzo
epoch | Int_Delta | none
The order_count field has RLE as its encoding and lzo as its compression. Would it be possible to force that column to use the bzip2 compression algorithm instead? Or maybe gzip even? Or is that kind of precise control just not exposed to the user?
Thanks!!