Kouhei Sutou
kou****@clear*****
2013年 8月 15日 (木) 11:55:59 JST
須藤です。 In <CANM+HheQozX_Qy2Fg****@mail*****> "[groonga-dev,01615] Re: groongaのトークナイザの改善について" on Tue, 13 Aug 2013 08:41:21 +0900, Naoya Murakami <visio****@gmail*****> wrote: > 本件の誤ヒットになるという件について、少し考えたのですが、 > アルファベット記号数字列が連続して4096byte以上になったあとで、 > 一部を切り出すと、書いていただいた例のように誤ヒットになると思うのですが、 > アルファベット記号数字列が4096個以上連続する前に切り出せば、 > 文字抜けが生じることがなく誤ヒットにはならないですよね? > > X..(4096)..Xabcは、X...Xとabcにトークナイズされて、インデックスされ、 > 検索時も、X....Xとabcにトークナイズして検索される。 実は、このケースも考えていました。このとき、「abc」で検索して 「X..(4096)..Xabc」がヒットするのは望ましい挙動なのかというの を考えて、そうではないよなぁ、誤ヒットだよなぁと思い、やめま した。 > もしかして、検索時に渡される文字列は、4096byte以下という仕様があったりしますか? いえ、それはありません。 > でも、長いものは、ほとんど無駄でもったいないということで無視するということでも > 問題ないと思います。厳密なものがほしい場合は、Split系を使えばいいですし。 > > どうしても、Split系を使わずに、長い記号列を検索したい場合は、サンプルも > 作っていただいたことですし、トークナイザをカスタマイズすればいいですしね。 はい、そうですね。 -- 須藤 功平 <kou****@clear*****> 株式会社クリアコード <http://www.clear-code.com/> (03-6231-7270) groongaサポート: http://groonga.org/ja/support/ パッチ採用はじめました: http://www.clear-code.com/recruitment/ コミットへのコメントサービスはじめました: http://www.clear-code.com/services/commit-comment.html