1

価格属性を持つ何百万ものウィジェットのデータベースがあるとしましょう。ウィジェットはサプライヤーのものであり、まずサプライヤーから購入してから顧客に販売することで、顧客にウィジェットを販売しています。この基本的な設定では、顧客が50ドル未満のすべてのウィジェットを要求した場合、それらをリストするのは簡単です。

ただし、個々のサプライヤからのウィジェットの価格は異なる方法でマークアップします。したがって、サプライヤAのウィジェットを10%マークアップし、サプライヤBのウィジェットを定額$5でマークアップする場合があります。データベースでは、これらのマークアップは、私のID、サプライヤID、マークアップタイプ(フラット、パーセンテージ)、およびマークアップ率とともに結合テーブルに格納されます。これに加えて、サプライヤは私に販売するときに独自のマークアップを追加できます(これらのマークアップは、サプライヤのID、私のID、およびマークアップのタイプ/レートと同じ結合テーブルにあります)。

したがって、サプライヤAから45ドルのウィジェットを販売したい場合、サプライヤの10%のマークアップ(49.50ドルまで)でマークアップされ、次に自分の10ドルのフラットマークアップ(59.50ドルまで)でマークアップされる可能性があります。このウィジェットは、50ドル未満のウィジェットのクライアントの検索には表示されません。ただし、80ドルのウィジェットは、クライアントに到達するまでに45ドルにマークダウンされる可能性があり、結果として返される必要があります。これらのマークアップは変更される可能性があります。私がこのシステムの何百人もの人々の1人であり、サプライヤを通じて顧客にウィジェットを販売し、すべてそのマークアップテーブルに独自のマークアップ関係があると仮定します。

何百万ものオブジェクトにわたってこのような計算をすばやく実行するための前例はありますか?これは非常に重要な問題であることに気づきましたが、このような問題にどのように対処し始めるのか興味があります。

4

2 に答える 2

5

データベースに列を追加して計算結果を保存し、関連するレコードの変更で列を更新します。何百万ものレコードについて、これらの値をその場で計算することはできません。

于 2012-09-27T20:00:00.580 に答える
2

何百万ものオブジェクトにわたってこのような計算をすばやく実行するための前例はありますか?

標準。真剣に。データウェアハウス、リスク予測。そのようなもの-あなたの問題は小さいです。すべての組み合わせを事前に確認し、適切な上位レベルのデータベースサーバーに保存して終了します。

それは巨大ではありません-真剣に。小さなサーバーとしては巨大ですが、計算グリッドを稼働させると...それは非常に簡単です。何百万ものオブジェクト?マシンごとに1分間に100.000個のオブジェクトを計算します。1,000万個は100分のオブジェクトです。そして、あなたはそれほど多くの変更を持っていません。

于 2012-09-27T20:01:24.520 に答える