私はサービス車両配車 Web アプリの開発者です。SQL サーバーを使用して、.Net 4+、MVC4 で記述されています。
地理データ型としてデータベースに格納されている 2000 以上の場所があります。場所 A から場所 B にリソースを送信すると仮定すると、移動時間/距離などを 1 点で表示する必要があります。SQL Server の STDistance で距離を計算すると、「カラスが飛ぶように」の距離しか得られません。そのため、システムは bing、Google、または ESRI などの地理空間サービスにアクセスして、実際の運転時間または提案されたルートを取得する必要があります。問題は、これがコア機能であり、頻繁に発生することです。
事前に計算された距離または平均運転時間をルックアップ テーブルに事前入力する必要がありますか? 欠点は、情報が必要になるたびに検索する 400 万レコードの場所を追加しなくてもです。
これに加えて、ほとんどの場合、目的地は保存されている地理空間座標の 1 つではなく、代わりに大陸のどこかの住所または経度/緯度のポイントになる可能性があるため、事前計算が不可能になります。
ジオサービスのエンドポイントを常にヒットしなければならないパフォーマンスの問題を回避しようとしています。
これにどのようにアプローチするのが最善かについて何か提案はありますか?
-ありがとう!