は、基本的には3「標準ソリューション」があります。これはデータが有効であることを意味し、唯一の変更は「在庫切れ」または「ポートフォリオ外」になることを意味します。いずれにしても、ビジネスプロセスでは、RMA状況やIRS関連の問題などを処理する必要があります。これは、製品を削除してはならないことを意味します。これは、製品のDBデータモデルなどに反映される必要のある製品の「状態」とはちょうど異なるものです。
パフォーマンスに関心がある場合は、いくつかのプロファイリングを行います。必要な場合は最適化オプションが多数あります。 。これらは、通常、「パーティショニング」である技術のRDBMSに依存している - すべてのRDBMSは、柔軟性に異なる独自の仕組みを持っているなど
ソリューション2
あなたが任意のデータでは必要ありません。すべて...ちょうどカスケード削除を行い、それで済むように...
ソリューション3
ヒストリカルデータのみが必要ですが、「将来のビジネスプロセス」ではこのエンティティが必要ないでしょう。この場合、一般的な解決方法は、 "アクティブ/生産的なテーブル"でカスケードされた削除を実行する前に書き込まれるアーカイブテーブルを持つことです。このスキームのわずかな変形は、必要な情報を「従属行」(あなたの場合は請求書)にコピーし、アクティブ/生産的な行(つまりケースの商品)を削除するだけです。
結論
複雑なシステムは、異なるビジネスプロセス/ユースケースの多くに対処するため、上記の技術の全てを採用する傾向がある - それぞれが関与する特定のビジネスプロセス/ユースケースにdepedingその場所を持っています。 ..
この質問は重要であり、問題はいくつかの非常に信頼できる情報源によって認められています。 –