StoryEdit 開発日誌

ウェブアプリ StoryEditを作ってましたが延期。普通のブログ。

RDBに木構造入れる その2

どうやら,RDBに木構造をいれるには,以下の4つがあるようだ.

  1. 隣接モデル
  2. ネストセットモデル
  3. 経路列挙モデル
  4. ネストセットモデル改

 

1は,オーソドックすぎるので却下.おもしろくない.性能も悪い.

2は,更新の手間が多い.

3は一番よさそうなんだけど,経路の名前にいいのが思いつかない.

小説を書くときに,例えば,

「第一章 はじまり」->「第一小節 隣のいえ」

なんて区切りをしたいわけだが,各章のタイトルをパスに使うのは冒険すぎる.区切り文字が入っちゃうとも限らない.では番号に置き換えするという手もあるが,それは別に番号とタイトルのマップを作る必要があるので,無駄に遅くなりそうだ.

というわけで消去法で4となる.

 

ネストセットモデル改とは,ネストセットのノード間の距離に小数点をいれちゃって,更新の手間をなくしましょうというもの.これなら,挿入も楽そう.

 

次は認証の問題ですな.OAuthは確定だけど,Facebook使うか,Twitter使うか。