Christian said:
For desktop or server use, storage is cheap.
Thats true, however I'd like to compress the database because I need portability. Sure, one could compress the DB and move it into a mobile storaging unit, then when you're done you could decompress the DB on the destination harddrive and keep on working with it.
But that defeats the purpose mainly, the idea is to compress the database so it could be stored / used on said limited storage units.
Eduardo said:
.... SQLite has no compression system for free.
Not for free?, I take it that its possible to implement a compression scheme in the database system then. Which is what I care only - of course its possible, but now I know its been done - Thats all I needed to know, since, if every possible solution fails, I might have to implement this by myself, low-level.
If this "compression-enabled package" uses its own compression algorithm/s, then I'm ok with it not being free.. On the other hand, if they use a well known open source algorithm, charging for this version is a little off... At least from my point of view - of course it depends mainly on licenses and points of view - I guess thats the case.
In anyway, this might not be as easy as one thinks for the first time. (this happens all the time when you're developing something, I take it that I'm not the only one who thinks so).
About normalization, even if I had a good work-around, that doesnt mean that using a compression scheme wouldnt perform better on most cases. (Although I cant tell speed-wise.. I don't know how SQLite works internally, never sniffed the sources I'm afraid, only a few routines I had to implement by myself on the software side - the string issues, remember - There would be a lot more memory and processor usage, thats for sure, although memory will depend on the algorithm, if its buffered then thats not a huge issue, on the other hand, the processor usage would go sky-high, again, depending on the algorithm we use, this might also be true for compression only, for example with JCalG1)
I'll see what to do on this weekend. Thanks for all the feedback.