私が構築しているサイトがあります。これは、いくつかのユーザー設定に基づいて (多かれ少なかれ...) 差し込み印刷を作成するアプリケーションです。デカルト結合に相当するデータを問題なく生成できますが、企業のニーズにより、生活を少し難しくする必要があります...
リモートの従業員の郵便番号を確認した後、その従業員からメディア ターゲットまでの距離に基づいて、メディア ターゲットへの電子メールを作成するアプリケーションを作成する必要があります。たとえば、従業員がよく知られているボランティアであるとしましょう。企業は、これらの従業員の半径 5 マイル以内にいるメディアに、従業員が行っている仕事に関するメッセージを電子メールで送信したいと考えています。ここで問題が発生します...ここにはいくつかの選択肢があります。試行と失敗の概要を説明します。
最大半径は 20 マイルです。米国内のすべての郵便番号のレコードを保持するデータベース テーブルを作成し、その郵便番号から 20 マイル以内のすべての郵便番号に結合します。データセットは次のようになります (名前は異なりますが、これは引数のためです)
。[都市] | 【状態】 | [閉じる] | [都市] | 【状態】 | [距離]
失敗: 例として、NY には上記のデータセットから 350,000 のレコードがあります (他の州はもっと悪いです!)。そのページの平均読み込み時間は? 6分... 起きていません。ブレークポイントを設定してこれを確認しました。切断が発生するのは dataadapter.fill() 段階です。(これはロジスティクスの問題により実装されませんでした) x 以下の距離で、各従業員 zip からメディア ターゲット zip へのデータベース接続を作成します。ただし、ソース ファイルとメディア ターゲットを組み合わせると、個別化された 34,000 通以上のメールに到達できます。34k DB 接続? 郵便番号検索を再利用する方法を考案できたとしても、DB でいくつかのテスト チェックを行ったところ、従業員が働いていた NY には 500 の異なる郵便番号があることがわかりました。500デシベル接続?それがうまくいくとは思えませんが、驚くかもしれません。
この問題を回避するための私の最新のスキームは、次のような新しいデータセットを取得することにより、.net データセット オブジェクトよりも Web サーバーがより良いゲームを実行することを期待することです
。[経度] | [緯度]
次に、データが機能するかどうかを判断するために距離式を実行します。これは、Web サーバーのプロセッサに大きく依存しています。これは賭けに値するか、それともこの試行でも同じロード時間のダメージを見つけることができますか?より良い方法はありますか?
このプロジェクトがうまくいかないかもしれないという私の懸念を確認したとしても、どんな意見でも感謝します。
追加メモ: サーバーを制御できず、SQL2k を実行しています :(。Visual Studio 2005、フレームワーク 2.0 でサイトをプログラミングしています。ただし、今後数か月以内に SQL2005 および VS2008 にアップグレードされる可能性があります。