SQLAlchemyにSQLite .journalファイルをメモリ内に配置してパフォーマンスを向上させたいと思います。運でSQLAlchemyでSQLite PRAGMA文を設定するには
sqlite_db_engine = create_engine('sqlite:///%s' % str(dbname))
db = sqlite_db_engine.connect()
db.execute("PRAGMA journal_mode = MEMORY")
db.execute("PRAGMA synchronous = OFF")
db.execute("PRAGMA temp_store = MEMORY")
db.execute("PRAGMA cache_size = 500000")
:
sqlite_db_engine = create_engine('sqlite:///%s' % str(dbname), connect_args = {'PRAGMA journal_mode':'MEMORY', 'PRAGMA synchronous':'OFF', 'PRAGMA temp_store':'MEMORY', 'PRAGMA cache_size':'5000000'})
db = sqlite_db_engine.connect()
と、この:私はこれを試してみました。長いトランザクションの場合でも、ディスク上に.journalファイルが作成されていることがわかります。これを設定する別の方法がありますか?
*私は基本的にあなたが望むものを達成するためのForeignKeyについての例を書き換えることができるはずビルトインのpythonのsqliteモジュール
また、私はこのスレッドのようにリスナーを追加しようとしました:http://stackoverflow.com/questions/2614984/sqlite-sqlalchemy-how-to-enforce-foreign-keys – tomc
は私がエラー 'DBAPIErrorを得ました: (TypeError) 'PRAGMA cache_size'は、あなたのコードをユーザーにしようとすると、この関数の無効なキーワード引数です。None None'です。この同じエラーがありますか? – Nilesh
私はエラーを起こさず、コードは正常に実行されますが、明らかに何もしません。 – tomc