位置データ用の SQLite データベースを作成しています。約 1,000 万行あり、できるだけ早く SELECT ステートメントを取得したいと考えています。
データベースを公開する必要があるのは 1 回だけで、作成フェーズにかかる時間は気にしません。
ユーザーは一度にマップの一部しか見ないため、地理的に互いに近いデータには同時にアクセスする必要があります。
データを複数のタイルに分割しました。各タイルは、開いているストリート マップ タイルに基づく緯度と経度の地域に対応します。
私の質問は、ルックアップ時間を最速にするために、次のことを行う必要があります。
- 複数のデータベース、タイルごとに 1 つのデータベース、または
- 複数のテーブルを含む 1 つのデータベース、タイルごとに 1 つのテーブル、または
- データを分割しても検索は速くならないため、テーブルが 1 つだけの大きなデータベースを 1 つ用意します。
それぞれの方法を試すこともできますが、解決策を本当に理解したいと思います。