1

私は先日、同僚と激しい口論になり、どのアプローチが実現可能で、正しいかについて、stackoverflow コミュニティに相談したいと思いました。

最初のアプローチ (私が実装したソリューション) は、特定の座標の周りに「円を描く」標準的な方法であり、データベースにクエリを実行して、1 から 25 マイルの範囲の特定の範囲内のすべての「マーカー」を取得します。このアプローチは機能し、正確な結果が得られますが、密集した領域に多くの「マーカー」がある場合、少し遅くなることがあります。

同僚によるアプローチは次のとおりです。指定された座標を取得し、それらを切り上げて切り捨て、データベースにクエリを実行して「マーカーを閉じる」を見つけてから、上記のアプローチで別のクエリを実行します。

これをもう少し明確にするために、-32.371267 と 115.827467 の座標があるとしましょう。クエリを実行して、-32 と 116、および 33 と 115 にある周囲の「マーカー」を見つけます。

これは不可能であり、1 つの大きなクエリよりも内部結合が必要なため、パフォーマンスが低下する可能性があると主張しようとしましたが、現時点では、彼の実装が機能するかどうかはまだ不明です。

誰もこれについて何か考えがありますか?

4

0 に答える 0