摘要:一介紹與好處介紹本身是一個中文檢索索引技術索引主鍵唯一普通全文是俄羅斯人開發一款速度效率非常高的索引技術是來替代全文索引的本身的全文索引技術特性表現一般,一般數據庫使用全文索引都不是使用本身的,都需要借助第方索引技術支持,搜索引擎百
一.sphinx介紹與好處
介紹
二.怎么使用sphinx呢??sphinx本身是一個中文檢索索引技術 mysql索引: 主鍵、唯一、普通、全文(match/agaisnt)
sphinx是俄羅斯人開發一款速度、效率非常高的索引技術sphinx是來替代mysql全文索引的
mysql本身的全文索引技術特性表現一般,一般數據庫使用全文索引都不是使用本身的,都需要借助第3方索引技術支持,php->mysql->sphinx> , java->oracle->lucene 搜索引擎(百度/google等)要大量使用“檢索技術”2:sphinx使用的好處:① 快速檢索用戶需要的模糊信息(替代like使用) ②
本身還有中文“分詞”的實現,英文分詞通過”空格”區分,中文分詞通過技術實現(例如”匹配”,使用習慣)
sphinx是專業做數據檢索的一個技術用戶去sphinx做模糊查詢,查找“北京”相關的信息,sphinx把“北京西二旗”全部信息的“主鍵id”值給用戶返回之后,用戶通過“許多-主鍵id”值去數據庫 獲得相關的記錄信息,并返回信息。
查詢多個主鍵id信息,使用了in查詢
1:首先你需要下載sphinx功能包
具體是下載coreseek:中文+sphinx解壓壓縮文件到軟件的運行目錄即可,路徑不能有中文和空格 下載地址:http://www.coreseek.cn/news/7/52/]
2: 為數據庫數據創建索引文件導入操作的數據表數據(5萬條記錄)
// 注意:如果之前沒有選擇數據庫,那么使用use選擇數據庫使用管理員權限的cmd
mysql > use forum ; mysql> source d:/forum.sql #確保數據導入成功 不然沒法建立索引
3: 做索引配置, 注意用編輯器打開,不要使用記事本sphinx.conf創建索引的執行程序文件軟件目錄/bin/indexer.exe
命令:indexer.exe -c 配置文件路徑 source名稱
4:查看索引文件
4.1 使用sphinx速度對比
安裝sphinx服務使用管理員cmd執行以下命令
searchd.exe --install -c 配置文件路徑 參數順序一定要不能顛倒。
4.2:查看并啟動sphinx查詢服務
searchd --install -c C:wamp64incoreseek-3.2.14-win32sphinx.conf
如果安裝服務之后,不能夠正常啟動服務,可能就是安裝的時候,參數順序不對。卸載重裝
searchd.exe --delete刪除服務
php連接sphinx,需要引入api文件,進行內容模糊檢索查詢:
原理:php傳入關鍵字給sphinx,sphinx根據自身算法找到數據的主鍵id,mysql根據id去查詢數據 前提是主鍵必須存在哦!
代碼示例:
/** * 連接sphinx服務 進行查詢 * @param $key 搜索的關鍵字 * @return bool|mixed */ public function linkSphinx($key) { //實列化 $cl = new SphinxClient (); $cl->SetServer("127.0.0.1", 9312); //連接sphinx服務 $cl->SetConnectTimeout(3); //超時時間 $cl->SetArrayResult(true); //以數組形式返回獲得的結果 $cl->SetMatchMode(SPH_MATCH_ANY); //分詞,收集分詞任何部分檢索的結果 $cl->setLimits(0, 12); //限制獲取記錄條數 //(前12個記錄信息) //索引源名稱 $index_name = "dizhi"; //$res = $cl->Query ( "被檢索的關鍵字", "索引名稱" ); $res = $cl->Query($key, $index_name); return $res; }
① 通過兩個字段查找
② 有分詞查找體現
獲取到maths的下標 取到id 根據主鍵id去查詢數據
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/22423.html
摘要:簡介是開源的搜索引擎,它支持英文的全文檢索。但是往往我們要求的是中文索引,怎么做呢國人提供了一個可供企業使用的,基于的中文全文檢索引擎。 Sphinx 簡介 Sphinx是開源的搜索引擎,它支持英文的全文檢索。所以如果單獨搭建Sphinx,你就已經可以使用全文索引了。但是往往我們要求的是中文索引,怎么做呢?國人提供了一個可供企業使用的,基于Sphinx的中文全文檢索引擎。也就是說Cor...
摘要:簡介是開源的搜索引擎,它支持英文的全文檢索。但是往往我們要求的是中文索引,怎么做呢國人提供了一個可供企業使用的,基于的中文全文檢索引擎。 Sphinx 簡介 Sphinx是開源的搜索引擎,它支持英文的全文檢索。所以如果單獨搭建Sphinx,你就已經可以使用全文索引了。但是往往我們要求的是中文索引,怎么做呢?國人提供了一個可供企業使用的,基于Sphinx的中文全文檢索引擎。也就是說Cor...
摘要:簡介是開源的搜索引擎,它支持英文的全文檢索。但是往往我們要求的是中文索引,怎么做呢國人提供了一個可供企業使用的,基于的中文全文檢索引擎。 Sphinx 簡介 Sphinx是開源的搜索引擎,它支持英文的全文檢索。所以如果單獨搭建Sphinx,你就已經可以使用全文索引了。但是往往我們要求的是中文索引,怎么做呢?國人提供了一個可供企業使用的,基于Sphinx的中文全文檢索引擎。也就是說Cor...
閱讀 2940·2023-04-26 01:52
閱讀 3468·2021-09-04 16:40
閱讀 3629·2021-08-31 09:41
閱讀 1764·2021-08-09 13:41
閱讀 555·2019-08-30 15:54
閱讀 2959·2019-08-30 11:22
閱讀 1612·2019-08-30 10:52
閱讀 947·2019-08-29 13:24