いや、ちょっと思いついただけのコトを、メモメモ
XMLをDB化しようとしたら、ふつう階層型データベースみたいに、
親-親パラメーター1 -親パラメーター2 -子1 -子1パラメーター1 -子1パラメーター2 -孫1(子1の) -孫2(子1の) : -子2 :の形を連結リストで実現するようなかんじに考えると思う。 でも、これで、getElementByName("title"); みたいな、どこのノードに含まれているのかわからないものを検索する場合、 親からみていかないといけない(ノードの名前がtitleのものを、親からたどって全部探す)。
もし、上の階層型のほかに、以下のようなテーブル <ノードパス,パラメータ種別,値> というテーブルがあれば、たとえば、上記の例の場合 /親/,#node, /親/親パラメータ1/,#para,val1 /親/親パラメータ2/,#para,val2 /親/子1/,#node, /親/子1/子パラメータ1/,#para,val3 /親/子1/子パラメータ2/,#para,val3 /親/子1/孫1/,#node, /親/子1/孫2/,#node, /親/子2/,#node, のようなかんじで、ノードのパスをキーとしてテーブル化してしまえば、 getElementByName("title");は、ノードパスに/title/を含むかどうかを 検索するだけでいい。 で、この処理なら、データが増えた場合、テーブルのレコードを分けて、 並列処理できると思う。 なんで、はやくなるんじゃないかな・・・