Currently hstore is mongodb. It writes the keys everytime (and values as strings!, its mostly for dynamic keys or very sparse keys in my opinion).
You can shorten keys,or put them in dedicated columns.
I haven't read that there is a plan to compress the strings.
On Tue, Apr 22, 2014 at 2:01 PM, Tim Kane <tim.kane@xxxxxxxxx> wrote:
Hi all,I’ve been using hstore to record various key/val pairs, but I’ve noticed it consumes a lot more disk than I would have expected.I don’t have any hard figures to illustrate, but empirical testing has shown that if I record these pairs as traditional column based fields, I can save a significant amount of disk.What I think I’m seeing here, is that the hstore representation needs to store the entirety of the key alongside each value.Let’s say I have a table of 1000 records, and 900 of them have a key named ‘A_REALLY_REALLY_REALLY_LONG_KEY’, then this key will be written do disk 900 times, along with the appropriate values.I guess there are two options open to me here.
- I could transpose these values into a dedicated field
- I could use shorter key names
Does hstore2 go any way to improving this situation? Some kind of enumerated key based system?Cheers,TIm