MySQL FullText plugin : bigram 試用

MySQL 內建的 FullText Engine 不支援中文是眾所皆知的

在 5.0 版之後 , 有所謂的 plugin 功能 , 其他非官方的人可以寫 plugin 去加強 MySQL 功能

而在 FullText 的部分也有人去寫

例如 Spinx ( http://sphinxsearch.com/ ) : 這套號稱支援中文全文索引 , 支援 myisam 及 innodb , 不過我還沒試 , 但好像不是同步作索引

另外我要介紹一個網站 http://sourceforge.net/projects/mysqlftppc/

這裡面有很多種 FullText Plugin , 其中有個叫 bigram 的支援中文喔 , 必須在 mysql 5.1 版以上運作

比較麻煩的是 , 要自己編譯 , 我在 FreeBSD 及 Linux 上都可以正常跑

大概拿公司的數據 80 萬筆資料(原始資料用了200M空間) , 欄位是 TEXT 的資料來做全文搜尋字串"三國志" 好了, 大概花了 0.02 秒 , 如果用 LIKE %三國志% 的方式 , 會花上 0.7 秒 .... 這真的是太驚人的效能

但 bigram 有個缺點是 , 索引佔用的空間挺大的 ,  所以空間要備足

由於這個 plugin 是即時的索引 , 所以一有資料新增 , 馬上就能搜尋 , 大家可以試試看喔

6 則評論在 MySQL FullText plugin : bigram 試用.

發佈留言