私はPythonアプリケーションのユーザーで、インデックスが不適切なテーブルを持ち、アプリケーションの起動時にSQLiteデータベースをインメモリデータベースに変換してパフォーマンスを向上させることができるかどうか疑問に思っていました。私の考えは、特にSQLiteが自動索引を作成している可能性があるため、フルテーブルスキャンの問題を最小限に抑えることです。これはSQLAlchemy ORM(アプリケーションが使用するもの)を使用してどのように達成できますか?SQLAlchemyを使ってSQLiteデータベースをメモリに読み込むことはできますか?
答えて
Pythonで変数を設定するたびに、オブジェクトをインスタンス化します。つまり、メモリを割り当てることになります。
sqliteをクエリすると、ディスクから情報をメモリに読み込むだけです。
sqlalchemyは単なる抽象です。同じ方法で、データベースにクエリを行い、返されたデータを変数に設定することによって、ディスクからメモリにデータを読み込みます。
私はOPがメモリ内のデータベースをキャッシュすることによってディスクアクセスコストを避けたいと考えています。 –
正解、ディスクアクセスを最小限に抑えたい。 – user1104069
これは、すべてのデータをdbに照会し、サポートされているメモリdbとのセッションを確立し、テーブルを作成し、照会されたデータを挿入することです。 sqlalchemyチュートリアルには、これを行うために必要なすべての情報が含まれています。 –
プログラムの開始時に、データベースファイルをramdiskに移動し、SQLAlchemyをポイントして処理してから、SQLiteファイルを不揮発性ストレージに戻します。
これは素晴らしい解決策ではありませんが、データベースをメモリにキャッシュする価値があるかどうかを判断するのに役立ちます。
- 1. SQLを使用してSqlite JSON Extensionを読み込むことはできますか?
- 2. GUIを使わずにParaView Python Shellを使ってOpenFOAMソリューションファイルを読み込むことはできますか?
- 3. C++ファイルから読み込むことができず、ベクターに読み込むことができません
- 4. openFileInputを使って3gpファイルを読み込むことは可能ですか?
- 5. 外部ページを読み込むことはできますか?
- 6. オブジェクトとdbhelperクラスのクラスを使用せずにsqliteデータベースからデータベースを読み込んで読み込む方法はありますか?
- 7. BigTable asyncから読み込むことはできますか?
- 8. SQLite - SQLiteデータベースからデータを読み込む最速の方法は?
- 9. メモリ内のsqliteデータベースに読み取り専用モードで接続することはできますか?
- 10. データベース全体をsqlalchemyで読み込み、JSONとしてダンプします
- 11. sqliteデータベースからBLOBデータを読み込む - > jpa(hibernate)
- 12. データベースのデータをチェックボックスリストに読み込み、どのように読むことができますか?
- 13. はSQLiteのとPythonでデータベースからの読み込み:
- 14. SQLiteデータベースから読み取ることができません
- 15. Pythonを使ってmongodbからデータを読み込むには?ここ
- 16. AureliaをWebpack外部として読み込むことはできますか?
- 17. .Netフォームをコントロールとして読み込むことはできますか?
- 18. 10進数型はメモリ内のSqliteデータベースからdoubleまたはintとして読み込まれます
- 19. extjsを使用してデータベースからチャートにデータを読み込むことができません
- 20. どこでcsvをホストできるので、直接neo4jデータベースに読み込むことができますか?
- 21. Python3(sqlite3)を使ってsqliteファイルを管理/読み込む方法は?
- 22. javaのjdbc prepared statementを使ってsqlite textカラムを読み込む方法は?
- 23. フォームパラメタを動的に読み込むことができます
- 24. PHPをjQueryと非同期に読み込むことはできますか?
- 25. は、Entity Frameworkを使用してASP.NET MVC 5でデータベースを読み込むことができません6
- 26. チェックボックスをSQLiteデータベースから読み込みます
- 27. JavaのローカルSQLiteデータベースからemojisを読み込みます。
- 28. オンラインSQLiteデータベースの読み込み/書き込みiPhone
- 29. カーソルでSQLiteデータベースを読むことができません。常にクラッシュする
- 30. App Engineでxlrdを使ってファイルを読み込むには
あなたはプログラマーではないと言いましたが、私にとってはこれはプログラミングの重い仕事に非常によく似ています。しかし、メモリ内で動作するようにSQLiteを変更するのではなく、単に既存のSQLiteデータベースにインデックスを追加するだけです。アプリケーションコードに触れることなく、要件内でパフォーマンスを得ることができます。 "SQLiteデータベースエディタ"を検索します。 – wberry