In mariaDB there is a way to disable columnstore compression in session level (and set the disable flag in each session). Is there any way to change the default compression mode?
I don't know the details of
INSERT in Columnstore, but I would suspect the following:
- Inserting one row is quite costly.
- The code will consider the tradeoffs when adding more data row-by-row
- Probably: Batch inserting (especially of 64K or more rows) is better optimized.
So... How fast are you inserting rows? Are they being inserted in clumps? What I might do is to gather rows until
- I have collected X rows, OR
- Y minutes have passed
After whichever of those happens, then I would do a batch insert.
X might be 10K; Y might be 20 minutes. But those depend on the desired performance characteristics of the application.
(For InnoDB, I recommend batches of 100-1000 or 1MB of gathered Insert text. This runs about 10 times as fast as one-row-at-a time.)