たとえば、このアプリケーションは動物の移動と農場の価格を追跡します。現在の在庫数を取得するための最も簡単な解決策は、開始番号を取得し、現在の番号が取得されるまですべての移動を合計することです。しかし、これはメモリ集約的であり、動きの数が年々増加するにつれてますます遅くなります。
1 年を「凍結」するという贅沢はないので、変更を受け入れることはできません。システムは、いつでも動きの変更を処理でき、更新された数値をリアルタイムで表示できなければなりません。
これは単なる在庫数ではありません。このような多数の変数を追跡し、これらの変数に基づく集計計算を含む各期間 (日、週、月、年) のレポートを作成する必要があります。
計算およびレポート目的で複数年にわたるデータ ストリームを処理するための、最も一般的で、優先される、「最良の」、最速でエレガントな方法は何ですか? このシナリオでは、データベース設計とアーキテクチャはどのように関係しますか (つまり、データベース スキーマが適切に設計されている限り、ORM を使用しても問題ないでしょうか?)。ここでの重要な要件は、最適なパフォーマンスとリアルタイムの可用性です。
私は大規模なシステムを見てきました。そのため、ある種の作業は週、月、年の集計テーブルなどのタイム スライスに分割されます。この問題を解決するための共通の設計パターンがあれば特に興味があります。