パフォーマンスを測定するには、次の要因を考慮します。
ビジーでないシステムで単一の操作の速度を測定するかどうか、一連の操作 (「ワークロード」) が一定の期間でどの程度機能するか。 単純なテストでは、通常 1 つの側面 (構成設定、テーブルのインデックスのセット、クエリー内の SQL 句) の変化がパフォーマンスにどのように影響するかをテストします。 ベンチマークは一般に長時間実行の複雑なパフォーマンステストであり、結果によって、ハードウェアやストレージ構成などの高レベルの選択や新しい MySQL バージョンにあとどのくらいでアップグレードするかが決まります。
ベンチマークでは、正確な実態を得るために、重いデータベースワークロードをシミュレートする必要がある場合があります。
パフォーマンスはきわめて多くのさまざまな要因によって異なる可能性があり、数パーセントの違いが決定的勝利にならないことがあります。 結果は、別の環境でテストした場合に、逆の方向に転換することもあります。
特定の MySQL 機能は、ワークロードに応じて、パフォーマンスに役立つ場合と役立たない場合があります。 完全性のため、常にそれらの機能をオンにした状態とオフにした状態でパフォーマンスをテストします。 各ワークロードで試行する最も重要な機能は、
InnoDB
テーブルの adaptive hash index です。
このセクションでは、1 人の開発者が実行できる単純で直接的な測定技法から、実行と結果の解釈に追加の専門技術を必要とするもっと複雑な技法に進めていきます。