1

Android用のアプリケーションを開発していて、ORMLiteを使おうとしましたが、パフォーマンスが非常に悪いようです。他の誰かがこれを経験しましたか?

それとも私は何か間違ったことをしていますか?

編集

いいえ、結合は行っていません。すべてのクエリは、インデックス付きキーをパラメータとして使用して行われます。しかし、データセットはかなり大きく、かなり多くの比較があります。

純粋なSQLiteでやろうとしたことはありません...

4

1 に答える 1

11

最良の答えは、ORMLiteのパフォーマンスは使用方法に大きく依存するということだと思います。コードサンプルの一部とパフォーマンス数値の一部を投稿していただければ、より具体的に支援できる場合があります。

一度に多数のデータベース操作を行う場合は、このDao.callBatchTasks()方法の使用を検討する必要があります。Android では、データベース トランザクションを開始し、渡された を呼び出し、Callable戻った後、トランザクションをコミットします。たとえば、テーブルに多数の行を挿入する場合、これは非常に高速です。

参照: ORMLite で DAO メソッドが非常に遅いのはなぜですか?

編集

クエリに時間がかかる場合は、SQLite で時間が費やされている可能性があります。データセットの一部を減らすか、比較の数を調整して、実行速度が向上するかどうかを確認して、SQLite (およびおそらく IO のみ) が原因であることを明確に判断できます。

于 2011-08-30T13:26:14.663 に答える