On Thu, 19 Mar 2009 08:14:52 -0700 (PDT), anjela patnaik <[email protected]> wrote:
> Hello all, > > I'm working on a GUI application using Tcl/Tk with > sqlite back end on windows. Now, multiple users will be > running this and all users must have a copy of the db > local to their PC or in a shared drive. At least that > is my understanding of how sqlite works. > > 1. What are my options if the db gets very large (say > 1 G) > and we don't want users to allocate that much disk > space and RAM? The same as for any other file or program, that is to say it is possible to make huge files or consume much memory with any other program. Think of bad awk scripts (with huge in-memory associative arrays) or Java or the tempfiles of a large sort. The usual system management strategies apply. > 2. How does sqlite allocate RAM when doing select > statements? what about when opening the db ? The allocation on open() is limited, most will be for the schema and perhaps page allocation maps. During SELECT / UPDATE / INSERT / DELETE the cache will grow. SQLite cache memory size = cache_size times page_size. There is quite some info on http://www.sqlite.org/ about architecture and optimization. > 3. Are there any ways to compress db files in disk (for > free) and then is sqlite able to still get to the data > easily? Donald already gave a good answer to that question. > Thank you! -- ( Kees Nuyt ) c[_] _______________________________________________ sqlite-users mailing list [email protected] http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

