Performance

MyISAMとInnoDBの比較

●InnoDBの利点(MyISAMの欠点) ▲障害対応系 ・クラッシュしても再起動するだけでリカバリができる ・クラッシュリカバリにかかる時間はテーブルサイズに比例するようなことはなく、コミット済みのデータは修復できる (巨大なMyISAMテーブルのREPAIRには数日単…

mysqlでcountの代替案

FOUND_ROWS() selectを実行した際に取得した件数を返してくれる関数 InnoDBを使用している時はcountよりも早い 例、select hoge from hoge_table where hoge like '%県'; select found_rows(); 例、limitを無視した件数を取得する場合 (データ取得時にSQL_CA…

mysqlでのqueryのチューニング

Ⅰ、権限の簡易化 テーブルの権限が複雑になればなるほど、オーバーヘッドが大きくなります。GRANT文で設定された権限が単純であれば、クライアントがSQLを実行したときのオーバーヘッドが少なくなります。 Ⅱ、MySQL関数をBENCHMARK関数でテストする 特定のMy…

Webのパフォーマンス

ウェブのパフォーマンスには2つの重要な側面、すなわち効率性と応答時間がある。 iGoogleを例に挙げると、バックエンド処理に費やされる時間、すなわちデータがキャッシュされていないために毎回リクエストされることで費やされる時間は、ページ全体の処理時…

DBのチューニング

メモリー(キャッシュ)とハードディスクの速度差を意識し、 メモリーの中で処理が出来なくなって、ディスクにデータを読みに行ったら負け Ⅰ,explainを使って、DBに適切なindexをはる。http://d.hatena.ne.jp/Dogison/20090130/p1 Ⅱ,DBのクエリーの見直しどの…

explainの使い方

mysql>explain select a, b, c from table_A where a = 1 or b = 3;悪い結果using filesort(余分なソート)using temporary(一時ファイルの作成) これは、テンポラリーのバッファが利用されるので、 ORDER BY があったり、count(*) 検索していたりすると、 …