CQ5のWEBフレームワークとして使用されているので、まとめ。
CQ5コンテンツを構築したday創立者のコンテンツモデル:DavidsModel
そこでは、
- データが第一。構造に関しては、その後(Maybe って書いてあるけど。。)
- コンテンツ階層は非常に貴重。だからこそ、設計はしてはならない。
- データに意味のある名前をもたせる。
- 参照するために構造化を考慮しなくてはならない場合は、参照が障害となる可能性がある。
(google翻訳つかったので、日本語はおかしいかも)
目から鱗な発想でした。
それを踏まえてのJCR(Java content repository)を利用してファイルシステムのようなデータ管理を実現。
- 全文検索
- インデックスの作成
このあたりの理解のために、以下スライドを参考に。
Build Your Own CMS with Apache Sling
JCR and Sling Quick Dive
スライドの中でもありますが、no tableです。キーバリューともなんか違う概念。。
今までDBのテーブル設計に頼ってきた自分の考えを変えなければならない瞬間でした。
全てをコンテンツとしてみなしてます。htmlもJSONもJavascriptも画像も。。