[groonga-dev,02210] Re: 先頭1文字が検索ヒットしない

Back to archive index

Naoya Murakami visio****@gmail*****
2014年 4月 11日 (金) 09:42:47 JST


村上です。

ごめんなさい。ちょっと、間違えてしまいました。

アルファベット1文字で確実にヒットさせるには、TokenBigramSplitSymbolAlphaDigit系を
使い、"且つ"、前方一致検索が必要です。(ですよね?)

そうしないと、二文字以上の単語の二文字目移行の一文字にヒットしないはず。

たとえば、TokenBigramでは、「facsimile machine」は、
"facsimile" "machine"
のようにトークナイズされるため、途中の2文字目以降の"a"や"c"ではヒットしません。

これに対し、TokenBigramSplitSymbolAlphaDigit系では、「facsimile machine」は、
"fa" "ac" "cs" "si" "im" "mi" "il" "le" ・・・
のように1文字オーバラップしてトークナイズされるため、アルファベット1文字が前方一致検索
で確実にヒットするはずです。

ただし、アルファベットをバイグラムし、且つ、前方一致検索は、結構早い段階で検索速度
が劣化し始めるはずです。(おそらくデータサイズが10GiBぐらいで数秒〜10秒とかになるかも。)

巷のある程度の規模で全文検索を使っているサービスは、検索クエリが二文字以上、
または、三文字以内という制約を設けているところも多いと思います。

これは、規模や用途次第なので、要ご検討だと思います。

以上、よろしくお願いします。



2014年4月10日 13:47 Kouhei Sutou <kou****@clear*****>:

> 須藤です。
>
> In <CANM+HhfM3edQioDY3vOSQYAPKhggTmGc_YZRcw****@mail*****>
>   "[groonga-dev,02207] Re: 先頭1文字が検索ヒットしない" on Wed, 9 Apr 2014 22:07:21
> +0900,
>   Naoya Murakami <visio****@gmail*****> wrote:
>
> > 開発者の方を差し置いて恐縮なのですが、以下には、ユーザーの方が教えてくれる
> > かもしれませんって書いてあったので、勝手に書いちゃいます。
> > (勝手に答えられると、まずいようでしたら、ご指摘ください。)
>
> 勝手に答えてまずいことなんかなにもありません!
> 開発者じゃなくても知らない人がいたら知っている人が助ける場に
> なってすばらしいと思います!これからも知っていることだったら
> ぜひ回答してください!
>
> 回答内容は開発者じゃないかと思えるほど完璧なものです!
> 大縄さんが直面している問題の解決につながると思います。
>
>
> --
> 須藤 功平 <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/code-reader/
>
> _______________________________________________
> groonga-dev mailing list
> groon****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/groonga-dev
>



groonga-dev メーリングリストの案内
Back to archive index