タグ

ブックマーク / nippondanji.blogspot.com (3)

  • MyISAMからInnoDBへ切り替えるときの注意点

    MySQLを使い始めて間もない人がよく陥る罠の中に、気づくと使ってるストレージエンジンがMyISAMだった!ということがある。デフォルトのストレージエンジンはMyISAMなので、MySQLに詳しくない人たちが比較的陥りやすい罠なのだ。そもそもストレージエンジンという概念自体がMySQL独自のものなので仕方のない話である。MyISAMは素晴らしいストレージエンジン(たとえばこのYahoo!の中の人による投稿で言われているように)であるが、長所もあれば短所もある。例えば、 トランザクション対応ではない。 クラッシュセーフではない。 更新と参照が入り乱れた場合の同時実行性能がよくない。 テーブルが大きく(数億行とか)なるとINSERTの性能が劣化する。 などなど。特に前者の2つが問題で、アトミックな操作が必要なところでロジックを実装出来なかったり、サーバがクラッシュした時にデータがお亡くなりにな

    MyISAMからInnoDBへ切り替えるときの注意点
    kaza13
    kaza13 2011/03/30
  • 漢のソフトウェア特許廃止論

    最近は長いエントリしか書いてないので投稿の回数が減り気味なのだが、性懲りもなく今回も長文をぶちかますので皆さん時間があるときに読んでくださると幸いである。 コンピュータ産業において最も良くないものは何か?と聞かれると、俺は間違いなく「ソフトウェア特許こそ諸悪の根源であり、癌である!」と答えるだろう。コンピュータ産業はソフトウェア特許という癌に冒され、日々むしばまれ、やがて終焉に向かおうとしているように見える。一般的に、特許と言うと「産業を振興するとても良いもの」のように考える人も多いだろうが、そうではない。今ではあらゆる産業にとっての足かせにしかなっていないのだ!! 特許とは、アイデアを独占して他者によって勝手に利用されないようにブロックする仕組みであり、他者へアイデアの利用を許可することでライセンス料を徴収したり、ライバルがそのアイデアを利用するのを禁止したりするためのものである。特許は

    漢のソフトウェア特許廃止論
    kaza13
    kaza13 2010/03/05
  • やってはいけない!!MySQLに悲鳴をあげさせる10の方法

    いつも「MySQLを使うときはこうするべき」という観点から記事を書いているが、今日は逆に犯してはいけない過ちをリストアップしようと思う。 1. 全てのカラムにインデックスをつけるデータベース初心者がもっともやってしまいがちな間違いはコレではないだろうか。インデックスはいい。検索がとても速くなるから。しかし、それと引き替えにインデックスは更新するときにコストがかかるし、その分多くのディスクスペースを消費する。特に更新にかかるコストは時に甚大で、該当するインデックスのページがキャッシュ上にない場合はディスクからいったんそのページを読み込まなければいけない。ディスクアクセスは動作にとても時間がかかるので、インデックスが多数、例えば全てのカラムに付いていたりすると「あれ?固まったか?」というような状態になってしまうことがあるだろう。インデックスは必要なカラムにだけつけるようにテーブルを設計しよう。

    やってはいけない!!MySQLに悲鳴をあげさせる10の方法
    kaza13
    kaza13 2009/04/07
  • 1