Bug #62591 request for client-side compressed columns
Submitted: 30 Sep 2011 20:37 Modified: 30 Dec 2014 14:58
Reporter: Mark Callaghan Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: C API (client library) Severity:S4 (Feature request)
Version:5.6 OS:Any
Assigned to: CPU Architecture:Any

[30 Sep 2011 20:37] Mark Callaghan
Description:
I requested this for another member of the MySQL family and will repeat my request here.

Is it possible to add a variant of the blob types that is compressed on the client
side? By this I mean that the client library handles compression and decompression
so that the client code does not have to deal with it.

The benefit from this is reduced load. There will be less network traffic between
client/server and master/slave. This uses less space in the binlog, relay log,
innodb transaction log and database files. The alternative is to use compression
between client/server and master/slave but that doesn't help with the size of the
binlog file nor with the innodb datafiles or log file.

We have too many cases where huge text/blob values store uncompressed JSON and the
bloat from that hurts performance.

How to repeat:
na

Suggested fix:
na
[1 Oct 2011 7:20] Valeriy Kravchuk
Thank you for the feature request.
[30 Dec 2014 12:47] Daniƫl van Eeden
There is compression in the protocol, MyISAM and InnoDB. For the binlogs there is already an feature request: Bug #46435

If I understand this correctly the request is to *only* compress BLOB/TEXT columns in the protocol and in the binlogs, but not in the tables?
[30 Dec 2014 14:58] Mark Callaghan
My request is to compress on the client side and remain compressed on the server side. However, colleagues have begun working on a large change to add support for dynamic columns which will benefit from compression for LOB columns but only for data on disk as they need to see the data in many cases. So this request can be closed while they figure that out.