パフォーマンス・エンジニアの基本

どきりとするので戒めのために記載しておく。
シバタツ流!チューニングの極意 「パフォーマンス・チューニングの勘どころ」』より引用。
Google先生に頼っても、経験を当てはめてみても、言い伝えに基づいても良いと思う。けれどもそれが本当に効果を発揮しているのかは確認しなければならない。

パフォーマンス・エンジニアとは

  • ニセモノのパフォーマンス・エンジニア
    • Google検索してチューニング
    • 他システムでうまくいった方法そのままでチューニング
    • 言い伝えに基づいたチューニング
  • 本物のパフォーマンス・エンジニア
    • パフォーマンスとは、すべてのワークロードが期間内に終わることであることを理解し、なんらかの対処をする前にどこで時間がかかっているかを論理的に調査する
    • チューニングとは、時間がかかっている場所を論理的に見つけだし、かかっている時間を減らす作業

チューニングのライフサイクル

  1. パフォーマンス問題の発見
  2. 問題の範囲を特定
  3. ゴールの設定
  4. 適切なデータの取得
  5. データベース時間の配分の調査
    1. 最も性能向上しそうな部分の特定
  6. 最も性能向上するチューニング方法でシステムを変更
  7. ゴールが達成できたかどうかの検証
    1. 達成できていなかったら4から繰り返す