Hi All,
I have implemented logic that will AUTOMATICALLY LZF compress TEXT
columns longer than 20 characters. LZF compression is so fast, that
when build into AlchemyDB's architecture, it is basically for free (in
terms of REQ/s).
Using the texts of WarAndPeace that are magically available here:
http://allinram.info/AlchemyDB/WNP_text.txt
And running the script: test/TEST_WNP.lua
(e.g. cd test; lua TEST_WNP.lua)
And comparing the results of the characters in WNP_text.txt (3043532
bytes) w/ the size of the resulting "wnp" table (3193272 bytes)
represents a 5% INCREASE in size storing the text of WarAndPeace
indexed on line-number in AlchemyDB. LZF compresses each line by about
25% (turned it off, size = 3723281 bytes)
Doing 1million rows inserts w/ a text column 100 characters in length
has a 5% slowdown due to compression.
Doing 10million rows inserts w/ a text column 100 characters in length
has a 0% slowdown due to compression.
- Jak