検索エンジン自作入門/ wiserのPython移植(2)

転置インデックスの構築のエントリポイントの関数 add_document です。書籍のページは69ページになります。

文書をN-gramトークンに分解し、転置インデックスを構築していきます。まずメモリ上のテンポラリ転置インデックスが更新され、それがある程度大きくなればストレージ上の本体の転置インデックスとマージされます。

テンポラリ転置インデックスは、C言語版ではwiser全体の環境情報を保持する構造体にあります。Python版ではクラスを作成します。

wiserは、Wikipediaの情報のXMLを解析して転置インデックスを構築します。

C言語版では、add_document は XML のロード処理のコールバック関数として実装してあります。Python版では、呼び出し側がまだ決まってませんので、とりあえず引数としてテンポラリ転置インデックスのインスタンスを渡すようにしておきました(tmp_ii)。

いくつかの関数は未実装なのでこのままでは動きませんが、この後実装していきます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です