按照網上的教程安裝好也啟動了sphinx,但是完全不知道它是怎麼個運作模式啊,我應該怎麼使用它呢?
求有經驗的朋友告知。
以下是我的猜測:
spginx安裝啟動後,在項目中(以PHP為例)可以引入相關的spginx API,這些API中有查詢相關的API,平常我們使用like語句查詢,有了sphinx後就用查詢API來查詢。
是這樣嗎?
那麼像這些設定檔又是怎麼回事呢?有什麼用呢?
初學sphinx,有點亂,希望懂得人可以解釋一下。
感激不盡
回複內容:
按照網上的教程安裝好也啟動了sphinx,但是完全不知道它是怎麼個運作模式啊,我應該怎麼使用它呢?
求有經驗的朋友告知。
以下是我的猜測:
spginx安裝啟動後,在項目中(以PHP為例)可以引入相關的spginx API,這些API中有查詢相關的API,平常我們使用like語句查詢,有了sphinx後就用查詢API來查詢。
是這樣嗎?
那麼像這些設定檔又是怎麼回事呢?有什麼用呢?
初學sphinx,有點亂,希望懂得人可以解釋一下。
感激不盡
首先sphinx獨立於項目,你可以理解成一個資料庫。
所有需要搜尋的資料都儲存在sphinx中,比如文章、商品、使用者等。
使用時要先把資料存放區到sphinx中。
可以使用sphinx自己的indexer來產生索引,讓sphinx把所有的資料從MySQL中擷取到然後儲存到自己的索引中。
然後就可以調用sphinx的api從sphinx中檢索資料。
一般從sphinx檢索出資料的ID然後根據ID再去資料庫中擷取最新的資料(以防資料不一致,比如商品的庫存、最新價格等)
類似的產品還有很多
比如國外的Elasticsearch ( https://www.elastic.co/products/elasticsearch )
國產的XunSearch ( http://www.xunsearch.com ) 據說Segmentfault使用的XunSearch
與Sphinx不同的是,你需要自己寫一個程式或指令碼把資料同步到他們自己的索引資料庫中。