To prevent the SQLite database from being cleared in memory, you must use the same connection to access the database. However, using the same connection causes SQLite to synchronize access to the database. Thus, if I have many threads that read through the database in memory, on a multi-core machine it is slower than the same code that works with the file database.
Is there a way to get the best of both worlds? That is, a database in memory that allows multiple simultaneous calls to the database?
sql concurrency sqlite scalability
Kent boogaart
source share