具体的な例で私の質問を説明するのが最善です。
レストランが顧客から注文を受けるために使用する注文管理アプリケーションを考えてみましょう。それらすべてを格納する orders というテーブルがあります。
現在、毎日テーブルのサイズが大きくなり続けていますが、アクセスされるデータの量は一定です。通常、レストランは最終日かそこらに受け取った注文のみに関心があります。たとえば、100 日後、「興味深い」データはテーブル サイズの約 1/100 にすぎません。1 年後は 1/365 などです。
もちろん、古い注文をすべて保持したいのですが、現在の注文のみに関心があるアプリケーションのパフォーマンスは低下し続けます。では、古いデータが「興味深い」データに干渉しないようにする最善の方法は何ですか?
私の限られたデータベースの知識から、2 つの同一のテーブル (order_present と order_past) を同じデータベース内に作成するという 1 つの解決策が思い浮かびました。新しい注文が「order_present」に入り、cron ジョブが 2 日以上前に処理されたすべての注文を「order_old」に転送し、「order_present」のサイズを一定に保ちます。
これは、この問題に対処するための許容可能な解決策と見なされますか? 他にどのようなソリューションが存在しますか?