今年度は、これまでに研究を行ってきた、記憶容量の乏しい環境のもとで大規模XMLデータを扱うための圧縮ツールについてさらに研究を行った。われわれがこれまでに開発した圧縮ツールでは、大規模XMLデータを圧縮して保存し、その一部のみを検索によって抜き出して使用したい場合には、データ全体をいったん解凍してから検索をするのではなく、圧縮した状態のまま検索を行い、必要な部分のみを解凍することができる。これは、データを複数のコンテナと呼ばれる単位に分割して、コンテナ毎に圧縮することで実現される。このコンテナ分割を行う際、同時に抜き出して使用されることが多いデータはできるだけ同じコンテナに入れられるようにコンテナへの分割を行えば、検索時に解凍する必要があるコンテナの個数が減り、さらに効率が改善できる。このような、データの検索時に同時にアクセスされる可能性が高いデータ同士を一箇所に集めて保存する考え方は、従来のデータベース技術におけるディスク上へのデータの配置に関して、これまでに研究されており、データのクラスタリングと呼ばれる。そこで、今年度は、われわれは、このクラスタリングの手法をわれわれの圧縮ツールにも応用し、より効率のよい圧縮ツールを開発した。この手法では、データの圧縮時に、どのような検索がどの程度の頻度で行われるかの情報を与えると、この情報に基づいて、検索時に解凍される必要のあるコンテナ数の期待値が最小になるような、データのコンテナへの分割を行う。これにより、圧縮率は平均するとわずかに悪化するものの、検索時の効率が大きく向上した。
|