RDFのスケーラビリティ

RDFのスケーラビリティ、実行速度に関してもう少しきちんと書いてみる。


XMLには、欠点があります。DOMはとてもメモリ消費します。なので、DOMの処理ではあれこれ工夫があって、DOM Rangeが用意されていたり、遅延展開もしてみたりするわけです。


で、RDFはというと、一般的にはXMLで記述し、処理を行う*1ので、その欠点が追加されます。さらに、RDFというのは


グラフです。


グラフです。


グラフです。


さらにグラフです。


通常のツリーでは確かに表示できない構造*2なのですが、グラフを表現するため、記法が冗長になります。なので、DOMなんてものが比較にならないくらいメモリを消費します。正確なファイルサイズは忘れてしまいましたが、実用レベルを考えると小さめなRDFで、2Gのメモリしか使えないJavaはパンクします。(DOMも、パンクする姿をよく見かけますけどw)


当然ながら、こんな状況では速度が出るわけもないわけで・・・DBも昔は速度が遅いなんて非難されてる時期がありましたが、XMLやらRDFも未来では高速に扱えるようになるんでしょうかねぇ。その辺の研究は他の方にお任せですね。


でもって、セマンティックウェブの代表たるOWLはRDFで記述を行います。RDFと状況はおんなじ、というわけです。

*1:実際には、RDFの記法はその他にもあるので、スケーラビリティや速度に関しては誰か研究成果出してくださいというのが現状です。

*2:つまり、RDFはそういう意味がある