タグ

mysqlとperformanceに関するSeacolorのブックマーク (3)

  • 知って得するInnoDBセカンダリインデックス活用術!

    InnoDBはクラスタインデックスという構造になっている。今日はクラスタインデックスがどういうことかということを、皆さんに理解して頂きたい。もっとも理解して頂きたいポイントは「セカンダリインデックスのリーフノードには主キーの値が含まれている」ということだ。 主キーの構造InnoDBの主キーは次の図のように「データが主キーのリーフノードに含まれる」という構造になっている。このような構造をクラスタインデックスという。 このような構造になっていることには利点と欠点があるが、大きな利点は主キーの値で検索をすると非常に高速だということだ。主キーのリーフノードにたどり着いたときには、既にデータのフェッチも完了している。データとインデックスが別々に格納されているタイプのストレージエンジンでは、インデックスからデータの位置を読み取って、その後データファイルからデータをフェッチする。このように二段階の操作が

    知って得するInnoDBセカンダリインデックス活用術!
  • MySQLノウハウ

    いろいろなからメモってきたメモのメモ。出典を書いておくのを忘れた。思い出し次第補完するかも。 deleteのコストは高いので、無効化を示すフィールドを作ってupdateすべき slow query logに要注意 多くのエントリでほとんどのフィールドが同じ値を持つ場合はインデックスの効果が小さい →複合インデックスの効果が大きい 複合インデックスは指定の順番が大切。AとBという指定の場合、A単独でもインデックスの効果がある。逆は真でない。 インデックスが使われる場面は フィールド値を定数と比較するとき (where name = 'hogehoge') フィールド値でJOINするとき (where a.name = b.name) フィールド値の範囲を求めるとき (<,>,between) LIKE句が文字列から始まるとき (where name like 'hoge%') min(),

  • GIGAZINE、新サーバに移転完了 - GIGAZINE

    というわけで、ついに新サーバに移転完了しました。これで負荷が軽減される……はず。予想される負荷に対応するため、カウント数は必要最小限のもののみにとどめました。そのほかにもデータベースの構造を一新しました。これに伴い、トラックバックなどは全リセットされてます、すいません……。 何か不具合などがある場合には臨時用のこちらのメールフォームからご連絡いただければ助かります。 というわけで以下、旧サーバと新サーバの設定などについて。サーバのカスタマイズに興味のある人向け記事第2弾。今度は最も難航したMySQLの設定です。 ◆MySQL メモリをたくさん使えば使うほど高速にレスポンスは返ってくることになるが、GIGAZINEのようにMySQLの中に記事文しか入っていない場合、つまり非常にコンパクトな場合はメモリをたくさん使ったからと言って反応速度が劇的にアップするわけではない。むしろメモリを極限まで

    GIGAZINE、新サーバに移転完了 - GIGAZINE
  • 1