["python","performance","sqlite"]
How can I load an existing database file into memory in Python SQLite 3?

I have an existing SQLite 3 database file, on which I need to make some extensive calculations. Doing the calculations from the file is painfully slow, and as the file is not large (approximately 10 MB), so there shouldn't be any problem to load it into memory. Is there a Pythonic way to load the existing file into memory in order to speed up the calculations?
Here is the snippet that I wrote for my Flask application: import sqlite3 from io import StringIO def init_sqlite_db(app): # Read database to tempfile con = sqlite3.connect(app.config['SQLITE_DATABASE']) tempfile = StringIO() for line in con.iterdump(): tempfile.write('%s\n' % line) con.close() tempfile.seek(0) # Create a database in memory and import from tempfile app.sqlite = sqlite3.connect(":memory:") app.sqlite.cursor().executescript(tempfile.read()) app.sqlite.commit() app.sqlite.row_factory = sqlite3.Row