私が働いている会社では、約 100 の Web サイトからデータをクロールして DB に保存し、そのデータに対していくつかの手順と計算を実行する C# プロジェクトを実行しています。
これらの 100 の Web サイトにはそれぞれ約 10,000 のイベントがあり、各イベントは DB に保存されます。
その後、保存されたデータが生成され、1 つの大きな xml ファイルに集約されるため、保存された 10,000 件のイベントのそれぞれが DB で XML ファイルとして表示されるようになりました。
このデザインは次のようになります。
1) crawling 100 websites to collects the data and save it the DB.
2) collect the data that was saved to the DB and generate XML files for each event
3) XML files are saved to the DB
この投稿の主な問題は、保存された XML ファイルの選択です。
各 XML は約 1 MB であり、約 10,000 のイベントがあるという事実を考慮すると、SQL Server 2008 R2 が適切なオプションであるかどうかはわかりません。
Redis を使用しようとしましたが、保存は非常にうまく機能しています (そして高速です!) が、これらの XML を取得するためのクエリは非常に遅く機能します (ローカルであっても、ネットワーク トラフィックは問題になりません)。
私はあなたの考えは何ですか?これはリアルタイム システムであるため、キャッシュはここではオプションではないことを考慮してください。
どんなアイデアでも歓迎されます。
ありがとう。