When it’s ready.

出来るまで出来ない

GoogleAppEngine Pythonでフルテキストサーチ TriGram

1日で作ったのでエラーありまくりですが、一通り動いているのでURL公開
http://a2c-fts.appspot.com

ngram(TriGram)でプチプチ切って、エントリーのKeyNameを転置IndexのListにAppendしてます。
元ネタは、search.twitter.comから httpが含まれる日本語の検索結果を10分置きにJSONで取りに行ってます。

さすがに、15ツイート分をNgramでぶつ切りにしたものは(1000個以上あるので)、30秒以内に保存出来ないので
TaskQueueで徐々にいれていますが、秒間5個までしか動かないので、10分以内でも保存出来てなかったりします。
Ver.1は、フルGAEでやろうとしていたのですが、さすがにTaskQueueが溢れそうになったので現在のバージョン2では
redisを使って、転置インデックスを保存しています。

redisは、KVSでValueにListが持てるので転置Indexに使うにはとても便利。Append的なlpushというAtomな操作が
可能なので実装も簡単です。

もう眠いので、後日ソース公開します。