データベース不要。テキストファイルでコンテンツを管理するCMS「Nesta」
Nestaはデータベースを使わずにテキストファイルでコンテンツを管理するCMS/ブログエンジン。
NestaはRuby/Sinatra製のオープンソース・ソフトウェア。世の中のWebサービス=データベース利用という風潮は考えものだ。確かにデータベースを使うとシステム構成が楽になるが、必須という訳でもない場面でも使われていたりするのはどうかと思う。
サイトトップ
検索を行う場合に便利だと言うが、Grepの方が簡単だったり、そもそもWebサイト検索ならばGoogleを使った方が高機能だったりもする。ブログやCMSであればデータベース無用でも構築できる、それを体現したのがNestaだ。
NestaはRuby1.8/1.9系のいずれでも動作するブログエンジン/CMSだ。特徴としてはやはりデータベースを使わないことだろう。データはテキストファイルで管理され、MarkdownまたはTextileを使って記述する。一行目がタイトルになり、次に日付、サマリーという構成になっている。
カテゴリ
面白いのはNesta自体がGitで管理されており、その中のコンテンツについてもGit管理を勧めていることだ。記事を作成し、それをGitでPushしてサーバ側では定期的にPullしていれば自動的にコンテンツがアップデートされる仕組みだ。添付ファイルの管理もでき、意外と実用的な仕組みになっている。
[s2If current_user_can(access_s2member_level1)]
コンテンツ一覧(プレミアム限定)
[/s2If]
MOONGIFTはこう見る
シンプルなCMSであれば、テキストファイルで十分という可能性は捨てきれない。データベースを用いることで変更が複雑になったり、ボトルネックになる可能性もある。テキストファイルとテンプレートの組み合わせがもっともシンプルで扱いやすい。
MOONGIFTの運営でも日々の更新は管理画面もブログエディタも使わずテキストファイルベースになっている。データベースを使わなければならないという考えを捨て、ニュートラルに考える柔軟性が必要だろう。