0

シミュレーション結果を保存するデータベースを作成する必要があります。これを設計するのに役立つリソースは何ですか?

編集:詳細が必要な人のために...

軍で使用されている離散イベント シミュレーションを使用します。したがって、重要なシミュレーション イベントは、武器が発射されたとき、キルが発生したとき、および武器がターゲットをキルできなかったときです。その他の重要なイベントは、ターゲットが検出されたとき、または追跡されなくなったときです。私たちは非常に詳細なログ ファイルを保持しており、それをマイニングして平均やその他の統計を計算しています。私がデータベースに格納することに関心があるのは、主に統計です。

もう 1 つ含めたいのは、ケース ID です。システムと重要な入力パラメーターの特定の組み合わせに対応する英数字のケース ID 文字列を使用して、さまざまなケースを識別します。たとえば、センサーがモードに応じて 3 つの異なる範囲でターゲットを検出できると仮定すると、ケース ID には検出範囲の各レベルに対応する文字があり、0、1、または 2 のラベルが付けられます。特定のケースでは、ケース ID の文字が 9 以降の文字に切り替わります。このケース ID は、データベース内の重要なキーであることは間違いありません。データを保存したら、特定の数値を取得して、さまざまなケースを比較するグラフを作成する必要があります。現在は Excel でグラフを作成していますが、最近は MATLAB を追加しています。

データベース技術に関しては、Access でテーブル設計を行ってプロトタイプを作成し、MS SQL Server で実装しようと考えました。Ruby を使用して、データ テーブルとグラフを含む HTML レポートを作成する予定です。

4

9 に答える 9

2

次の情報を提供すると、役立つ回答が得られます

  1. データベースの種類 (MsSQL、MySQL など)
  2. これで使用している他の言語 (C#、PHP)
  3. 保存したいデータ
  4. データをどう処理するか (データの保存とクエリの最適な方法に影響する可能性があります)。この手順は非常にオプションです。
于 2008-09-27T17:38:27.977 に答える
2

役立つことの 1 つは、エンティティ関係図を作成することです。これは、使用したいさまざまなテーブルを設計し、それらを相互に関連付けるのに役立ちます。シミュレーションで 2 つ以上のテーブルを使用する必要がない場合、これは過剰かもしれません。

私たちが使用した安価なソリューション (無料ではない) はHappy Fishです。これは、100 を超えるテーブルを持つやや複雑なアプリケーションでも、データを視覚化する優れた方法を提供します。このツールは、スキーマ DDL を自動的に生成して、環境に必要なテーブル、インデックス、外部キー制約を作成します (Oracle、MySQL、Microsoft SQL Server などのサポートが含まれています)。

この流れには、他にも多くのツールがあります。ウィキペディアから無料のツールのセレクションを見つけることができます。

于 2008-09-27T18:01:26.877 に答える
1

使用する予定のデータベースでプロトタイプを作成することをお勧めします。長期にわたるこのタイプのデータへのアクセスは適切ではありません。Access Sql は SQL Server の t-sql とは大きく異なり、アクセス データ型は SQL Server のデータ型とは異なります (そしてウィザードは変換時に非常に不適切な選択をします) ため、Access を使用してプロトタイプを作成しても何も得られず、作成したものを再作成する作業が増える可能性があります。すでにうまくいっていました。

于 2008-09-27T21:02:02.543 に答える
1

「スタック オーバーフロー」という Web サイトがあり、助けてくれる頭のいい人がたくさんいます。;-)

何を保存しようとしているのかについてもう少し詳しく教えてください。役立つ回答がたくさん得られると思います。

于 2008-09-27T17:35:22.773 に答える
1

リレーショナル データベースを使用している場合 (ヒント: おそらくそうです)、最初に知っておくべきことは、データを正規化する方法 (つまり、テーブルを適切に構造化する方法) です。

良い出発点: このウィキペディアの記事

于 2008-09-27T18:01:33.537 に答える
1

何のシミュレーション?

Data Model Patterns: Conventions of Thought by David C. Hay には、さまざまなビジネス タイプの設計レシピが掲載されています。そこからモデルにインスパイアされるかもしれませんか?

于 2008-09-27T18:05:47.867 に答える
0

DBMS の基盤としては、SQL Server Express を使用し、必要に応じて SQL Server に移行します。これには Access を使用しないでください。

于 2008-09-27T21:05:11.913 に答える
0

Ruby を使用する場合は、ActiveRecord (Rails のコア コンポーネントですが、Rails だけに関連付けられているわけではありません) を使用してデータベースを構築することを検討してください。そうすれば、移行を使用してスキーマを進化させることができます。これは、物事を管理するための優れた方法です。デフォルトでは、データベースは SQLite で実装されます。これは、Access のグラフィカルな側面を失うことを気にしないのであれば、すばらしい小さなパッケージです (そして、おそらく世界で最も実装されている DB ソフトウェアですが、あまり知られていません)。SQL Server への移行は、かなり簡単です (私はそれを実行しました - 大きな傷はありません)。

もしあなたがその道を進み、あなたのデータから Ruby を介して HTML を出力することを計画しているのなら、全体を独り占めしてRailsベースの Web サイトとして構築してみませんか? 再発明を避ける車輪の数は、それだけの価値があるかもしれません。

(免責事項: 私は生まれ変わった Rails プログラマーであり、Windows ベースの DB アプリケーション開発の長い歴史があります。不注意による伝道についてはお詫びします。)

于 2008-09-29T10:37:11.030 に答える
0

多くの場合、私たちはユース ケースを書き留めます。つまり、誰がそれを使用し、何を行うかです。

時々、データベースにあるものを書き留めます。エンティティ、その属性、およびエンティティが行うさまざまなこと。

いくつかの基本的な背景を理解したら、エンティティの図とそれらが互いにどのように関係しているかを描くことがよくあります。

これらすべてを考慮して、写真を利用可能なテクノロジーにマッピングし、次のステップについていくつかの推奨事項を作成するのを手伝ってくれる、ある程度の経験を持つ人々を見つけようとしています.

于 2008-09-27T18:08:30.853 に答える