« 本の護り手 | メイン | SSAliveのテストプレイ終了 »
2005年09月27日
JSprite vs SQLite [Perl]
Perl で通常のファイルシステムを使ったデータベースを用意するとき、幾つか選択肢がある。今まではPure PerlのDBエンジンである JSprite を使ってきたのだけれども、SQLiteのほうがいいような気がしてきた。
まず、保存ファイルが単一で済むというメリットがある。さらにランダムアクセス形成なのでI/Oにかかる時間が少ない。実測結果を見ると、MySQLよりもかなり早いように見える。JSpriteやText::CSVだと、ファイル単位で管理されるためどうしても遅くなりがちだ。
さらに、細かい点だがフィールド名の大文字小文字を区別するという点も良かった。DBD::Spriteを使うと全て大文字化されてしまうので不便だった。
しかし逆にauto_increment構文に対応していないというデメリットもある。primary keyにNULL値を入れると自動でインクリメントされるが、そうなるとSQL文のMySQLとの互換性が取れなくなってしまう。結果的に、MySQL用とSQLite用にSQLコードを使い分けなければならないようだ。
SQLiteにはデータ型が実質存在しないらしいのだが、実害は無いのだろうか。
もう少し色々調べてみようかと思う。
投稿者 : 16:05 | コメント (0) | トラックバック (0)
トラックバック
このエントリーのトラックバックURL:
http://totora.jpn.org/mt/mt-tb.cgi/44