0

お時間をいただきありがとうございます。

StackOverflow に同様のスレッドがあることは知っていますが、どれも私の質問に答えていません。

データベースの設計が与えられた場合、その設計に基づいて巨大な値でそれを満たすことができるツールはありますか (将来のパフォーマンス テスト用)。
または、値をランダムに配置するサーバー側スクリプトを作成する必要がありますか?

実際、私は 3 つのデータベース設計の間で躊躇しており、同じ量のデータがある場合にそれぞれのパフォーマンスをテストする必要があります。

提案や説明は大歓迎です。

4

1 に答える 1

1
  1. さまざまなもののベンチマークを行いたい場合は、常に共通のコンテキストをできるだけ大きくするようにしてください。あなたの場合、これは次のことを意味します:ランダムなデータセットを使用しないでください。ただし、異なる実装/データベース/をテストするために同じデータセットを使用します...疑似ランダムデータが必要ない場合でも、シードされたランダムを使用するか、単に一度設定すると、同じセットを複数回使用できます。

  2. そこには自動化ツールがありますが、スキームは何らかの方法で入力する必要があるため、単純なスクリプトを作成することをお勧めします。このスクリプトには、自動化されたテストで使用できるだけでなく、より柔軟であるという利点があります。たとえば、スクリプトを呼び出してデータセットを生成し、クエリのリストを実行してタイミングを合わせ、結果を出力し、異なる構成で同じことを繰り返す ANT スクリプトを作成できます。

  3. 異なる db スキームのパフォーマンスをテストするときは、コード/アクセスなどの違いも考慮に入れる必要があります。データにアクセスするために必要なコードが 10 倍も複雑になるからです。それがまた、ほとんどの場合、それを使用するアプリケーション/コード/...から分離されたスキームを単独でベンチマークすることにあまり意味がない理由です。

  4. 最適化 (インデックスなど) の後に結果が完全に好転する可能性があるため、後でテストした各スキームの最適化に同じ時間を費やすようにしてください。

于 2013-07-25T22:17:52.113 に答える