Windows インスタンスと SQL で Amazon の EC2 を使用することを検討しています。ここで、SQL インスタンスのパフォーマンスに対する批判を見てきました。実際に経験を積んでおり、パフォーマンスについてコメントできる SOer がいるかどうか疑問に思っています。
5 に答える
SQL2005Expressをオンにして32ビットServer2003m1の小さなインスタンスを起動し、簡単に試してみました。付属のボリュームではなく、付属のマシンディスクを使用していました。あなたの投稿にリンクされている記事を読んだ後、私はパフォーマンスが恐ろしいものになることを期待していました。それは素晴らしいことではありませんでしたが、悪くもありませんでした。
私の「テスト」はかなり単純でした。ID列、いくつかのテキスト(varchar)列、およびいくつかの基本的なルックアップとの関係を持ついくつかの整数外部キー列を含むテーブルを作成しました。
100万レコードを挿入するのに約1分かかり、Like'%を使用してテーブルスキャンを強制することでデータの200,000行ブロックを更新するのに約1秒かかりました。
これは、高負荷でのパフォーマンスがどのようになるかについては何も教えてくれません。
結論:それほど大きくはありませんが、さらに悪い可能性があります。特に、「ディスク」がawsに保存される方法を考えると。これは実際には大規模なSQLServerのインストールの場所ではないと思います。小規模なインストールが多いと、より興味深い見通しになる可能性があります。また、多数の小さな接続ボリュームでのdbspeadのパフォーマンスがどのようなものであったかを確認したいと思います。
今後のプロジェクトでEC2を使用したいと考えており、今後数週間にわたってさらに徹底的なテストを行う予定です。-結果が利用可能になり次第、投稿します。
他の人々の経験が何であったかを見るのを楽しみにしています。
EC2 では、エフェメラル ストアのブロックへの最初の書き込みと、EBS への最初のアクセスでパフォーマンス ヒットが発生することに注意してください。そのため、これを考慮していないベンチマークは、長期実行システムのパフォーマンスを代表していない可能性があります。
私はこれに非常に興味がありますが、テストを実行する機会がありませんでした。テストに関する 1 つの質問ですが、EC2 インスタンスに付属する標準ストレージを使用しましたか、それとも Server Server EC2 インスタンスは Amazon のElastic Block Storageを自動的に使用しますか? 私はABSについてほとんど知りませんが、彼らはそう言っています
「Amazon EBS ボリュームのレイテンシーとスループットは、ほぼすべてのケースで Amazon EC2 インスタンス ストアよりも大幅に優れているように設計されています。複数のボリュームをインスタンスにアタッチし、ボリューム間でストライプすることもできます。」
EC2フォーラムには、これについて説明しているスレッドがあります。
http://developer.amazonwebservices.com/connect/thread.jspa?threadID=26118&start=0&tstart=0
AWSの人々からの最後の数件の投稿では、そのようなランダムなI / O負荷が与えられた場合、8MB/秒が単一のディスクから期待できるほぼすべてであると指摘しています。
これまでの限られた経験から、データベース ストレージに Elastic Block Storage を使用することが不可欠であることがわかりました。EBS を使用する場合、パフォーマンスはスタンドアロンの開発マシンとほぼ同等のようです。詳細なパフォーマンス統計はまだ実行していません。全体的な感触です。