10個を超える入力変数を持つ時系列シミュレーションモデルがあります。個別のシミュレーションインスタンスの数は100万を超え、各シミュレーションインスタンスは毎日いくつかの出力行を生成します。
シミュレーション結果をリレーショナルデータベースに保存するために、私はこのようなテーブルを設計しました。
テーブルSimulationModelを作成します(
simul_id整数主キー、
input0文字列/数値、
input1文字列/数値、
...)
テーブルSimulationOutputを作成します(
dt DateTime主キー、
simul_id整数主キー、
output0数値、
...)
各モデルをユニークにするために、以下のような方法を検討しています。
SimulationModelテーブルのすべての入力列に一意性制約を設定します
SimulationModelテーブルを再設計して、入力列を2〜3列にグループ化し、これらのグループ化された列に一意の制約を設定します。(「input0_input1_input2」のような長い文字列値を作成することによって)
サーバー側の制約を忘れて、アプリケーション側で仕事をしてください。
これらのオプションについてどう思いますか?
数百万行の10列以上で一意のインデックスを使用しても問題はありませんか?
他に推奨する方法はありますか?
(私はpostgresqlを使用するかもしれません)