[Not at all expert in sqlite but here's a practical example of speed up using ":memory:" and perhaps a slightly different strategy for getting at the persistent data.]
I use sqlite3 with Qt4 / C++ for an application which reads in an undirected graph and then chunks through a version of dijkstra's routing algorithm. A colleague runs this on his machine and it takes all night on a large network running on a database on disk. On my own machine which is more powerful it probably runs a lot faster but still takes a couple of hours plus. Changing to an in memory database, reading data in and processing in memory brings the run time down to a couple of minutes. So yes - running in memory can be much quicker. At the end of the run I attach an on disk database and copy out the tables I need to save using "create table select...." . A On Mon, Mar 21, 2011 at 1:13 PM, Simon Friis <[email protected]> wrote: > I know how to create a database that exists only in memory by using > the :memory: filename. This however, creates a new database every time > and it can not be saved. > > Is is possible to make SQLite load a database file into memory and > then save it back to the file again when the connection to the > database is closed? > > Would it improve speed? > > - paldepind > _______________________________________________ > sqlite-users mailing list > [email protected] > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > _______________________________________________ sqlite-users mailing list [email protected] http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

