(閉じる)

タグ :

コンピュータ・IT 80 users このエントリーをはてなブックマークに追加

Kazuho@Cybozu Labs: MySQL のトリガーの実用性を確認するために InnoDB の SELECT COUNT(*) を高速化してみる

最近 RDBMS のトリガーを色々書いているのですが、知らない人にトリガーが何かいちいち説明するのに簡単な例はないかな、というのと、MySQL の処理速度はトリガーによってどの程度変化するか、ということを確認するために、以下のような実験を行ってみました。 InnoDB はしばしば、「SELECT COUNT(*) が遅い!」と批判されます。では、トリガーを使って行数を別のテーブルにキャッシュすればいいのではないでしょうか? 以下のように、極めて小さなテーブル t1 を作り、その行数を t1_cnt にキャ... > このページを見る

最終更新時間: 2009年06月29日17時23分
▼ブログで紹介する

みんなのブックマーク 人気(0) 新着

  • Triggerについて 2010/06/29
  • 「トリガーという機能特有のオーバーヘッドは、少なくともこの場合はない」が、多数の行を更新するような場合は当然注意が必要。 2009/07/06
  • 「トリガーという機能特有のオーバーヘッドは、少なくともこの場合はない」が、多数の行を更新するような場合は当然注意が必要。 2009/07/04
  • id:sh2 あざっす。一応 Opteron 2218 x2 での測定ですが、落ち込みが小さいのは binlog がオフなのと innodb_flush_log_at_trx_commit=0 に設定してるからでしょうか 2009/06/30
  • trigger を使ってinsert をフックにカウントアップした値を使う。カウントキャッシュ列を更新するオーバーヘッドが生じる。select やupdate では実行されないが、トリガーは行ベース (1行毎に処理を行うタイプ) なので、多数の 2009/06/30
  • トリガーを使って行数を別のテーブルにキャッシュして高速化。 トリガーを使う事で1度のINSERTで2回INSERTが走るので書込パフォーマンスは約半分になるがSELECT COUNT(*)が高速に動作することが必須なら検討の余地あり 2009/06/30
  • http://dev.mysql.com/doc/refman/5.1/ja/triggers.html 2009/06/30
  • trigger 2009/06/30
  • trigger, トリガ 2009/06/30
  • trigger 2009/06/29
  • UPDATEによって処理がシリアライズされるので、デュアルコアなら2倍、クアッドコアなら4倍遅くなるのかも / id:kazuhooku 元のINSERTが4コアまでスケールしてないかも。前やったときは2.5コアぐらいまで伸びる程度でした 2009/06/29
  • trigger 2009/06/29

このブックマーク一覧を非公開にするには?

はてなブックマークはオンラインでブックマークを管理・共有できる無料サービス。自宅、職場、外出先、どこからでも同じブックマークにアクセスできます。ユーザーはみんなでブックマークを共有して効率良く情報収集しています。あなたもはてなブックマークを始めてみませんか?

このエントリーを含む日記(3)