« HID のフィジカル デスクリプター | メイン | エラーレポートに WMI から取得した情報を含める »

2008年01月31日

このHPについて雑記:: MT の DB を SQLite へ

    

Movable Type のデータベースを MySQL から SQLite へ変更した。
トラックバックのスパム対策でかなり負荷は軽減したが、やはり深夜更新できないぐらい重い。
でも、HP の閲覧は昼間よりも軽い。
考えられるのは、Movable Type の中で変なことをしているか、DB サーバーが重いということだ。
検索してみると、利用しているレンタルサーバーでは SQLite へ変更すると軽くなるという記述が多く見付かる。
と言うことで、変更を試みた。
DB の変換自体はすんなり行ったのだが、ログインできなくなった。
いろいろやってもうまく行かず、SQLite の DB ファイルをダンプして気付いた。
ログインユーザー名の頭文字が大文字か小文字かで違う。
でも、MySQL の時はそれでも問題なくログインできていたのだが……
まあ、MySQL でログインできていたのは少し気になるが、ログイン名の大文字小文字を正確に入力したらログインできるようになった。

最初触ってみた感じ、たいして速度向上は感じなかったが、エントリーの書き出しや更新などは確かに速い。
ページ間の移動などは、少しもたつくようになったようにも感じた (その後、負荷が軽くなるようにスパム対策などを強化したらだいぶ速くなった)。
SQLite は 反応速度がほぼ一定だが、MySQL の時は速い時もあれば、遅い時もあった。
平均したら、SQLite の方が圧倒的に速いと思う。
また、深夜の更新できないぐらい重いという状態はなくなった。
やはり、深夜重かった原因は DB サーバーだったようだ。
誰かが深夜に DB サーバーでバッチ処理か何か負荷のかかる処理をしているのだろう。
また、SQLite では、深夜は利用者が少ないためか、動作はかなり速い。

「PostgreSQLは遅い」は本当か?:OSSデータベース比較を読むと、既に MySQL が速いと言うわけではなくなったようだ。
過去に調べた時、MySQL と SQLite の比較で、速度的に大差ないというのよく見た。
MySQL が圧倒的に速いと書いている記事はトランザクションを使っていないだけだったりする。
今のところ、サーバー 1台だけの構成で使用する場合、SQLite が手軽かつ高速でもっとも良さそうだ。
少なくとも自分が使う規模のものであれば、SQLite で十分事足りる。
これでますます SQLite はすばらしいと思うようになった。

後、DB のバックアップも、SQLite のファイル 1個を落としてくるだけで済むのでかなり手軽。



投稿者 Takenori : 2008年01月31日 09:55




comments powered by Disqus
Total : Today : Yesterday : なかのひと