常見的解決方案
1、sphinx + coreseek
優點 : 技術成熟、穩定
缺點 : sphinx 不支持中文 coressk 目前已經停止維護【如果是純英文環境 sphinx 極佳】
2、迅搜(Xunsearch)
優點 : 技術成熟、穩定
缺點 : 安裝過程復雜,配置不夠靈活
3、mysql 全文搜索
有點:安裝方便、效率高
缺點:對中文支持不夠好
來自hcoder的解決方案 (分詞 + 自主配置)
優點 : 安裝簡單(php 組件)、底層由開發者自行編寫更清晰底層、更容易的優化
缺點 : 需要開發者有 php + mysql 基礎,需要自己編寫整個過程的代碼
原理
1、獲取詞語環節文章數據表 - 逐行讀取文章信息 - 組合所有文字內容 - 分詞、去重 - 記錄到新的數據表2、搜索環節搜索關鍵字記錄表 - 合并文章數據 - 去重 - 展示數據
使用到的第三方組件(scws)
http://www.xunsearch.com/scws/
SCWS 是 Simple Chinese Word Segmentation 的首字母縮寫(即:簡易中文分詞系統)。
這是一套基于詞頻詞典的機械式中文分詞引擎,它能將一整段的中文文本基本正確地切分成詞。 詞是中文的最小語素單位,但在書寫時并不像英語會在詞之間用空格分開, 所以如何準確并快速分詞一直是中文分詞的攻關難點。
SCWS 采用純 C 語言開發,不依賴任何外部庫函數,可直接使用動態鏈接庫嵌入html' target='_blank'>應用程序, 支持的中文編碼包括 GBK、UTF-8 等。此外還提供了 PHP 擴展模塊, 可在 PHP 中快速而方便地使用分詞功能。
分詞算法上并無太多創新成分,采用的是自己采集的詞頻詞典,并輔以一定的專有名稱,人名,地名, 數字年代等規則識別來達到基本分詞,經小范圍測試準確率在 90% ~ 95% 之間, 基本上能滿足一些小型搜索引擎、關鍵字提取等場合運用。首次雛形版本發布于 2005 年底。
SCWS 由 hightman 開發, 并以 BSD 許可協議開源發布,源碼托管在 github。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答