MySQL用N-Gram全文検索プラグイン

MySQLN-Gram全文検索プラグイン」っていうのがあるのを知った。
http://mysqlbigram.googlepages.com/mysql%E7%94%A8n-gram%E5%85%A8%E6%96%87%E6%A4%9C%E7%B4%A2%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3

Senna側から見たmysql-bigramとの違いはこんなところです。

  • ソースコードの段階でパッチが必要
  • トークンの位置情報を持っているので、検索ノイズが少ない
  • アルファベットや記号文字について、N文字でトークン化せず、同じ種類の文字列の並びを1つのトークンとする。(から、「in」で「ping」は検索できない)
  • インデックスの動的更新が早め
  • 2indパッチ相当がある
  • マルチカラムインデックスの部分一致カラムを対象にした検索が出来る…予定

Parserを変えるだけでいいというのは、やはり魅力的です!