程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> Sphinx介紹

Sphinx介紹

編輯:關於PHP編程

sphinx什麼是全文檢索?

全文檢索是指以文檔的全部文本信息作為檢索對象的一種信息檢索技術。檢索的對象有可能是文章的標題,也有可能是文章的作者,也有可能是文章摘要或內容。

Sphinx 是什麼?

Sphinx 是一個基於SQL的全文檢索引擎,可以結合MySQL,PostgreSQL做全文搜索,它可以提供比數據庫本身更專業的搜索功能,使得應用程序更容易實 現專業化的全文檢索。Sphinx特別為一些腳本語言設計搜索API接口,如PHP,Python,Perl,Ruby等,同時為MySQL也設計了一個 存儲引擎插件。

Sphinx 單一索引最大可包含1億條記錄,在1千萬條記錄情況下的查詢速度為0.x秒(毫秒級)。Sphinx創建索引的速度為:創建100萬條記錄的索引只需 3~4分鐘,創建1000萬條記錄的索引可以在50分鐘內完成,而只包含最新10萬條記錄的增量索引,重建一次只需幾十秒。

下面我們來看一種比較常見的 php + mysql + sphinx 搜索引擎架構圖:

php + mysql + sphinx 搜索引擎架構圖

Sphinx 有哪些特性?

高速索引 (在新款CPU上,近10 MB/秒);
高速搜索 (2-4G的文本量中平均查詢速度不到0.1秒);
高可用性 (單CPU上最大可支持100 GB的文本,100M文檔);
提供良好的相關性排名
支持分布式搜索;
提供文檔摘要生成;
提供從MySQL內部的插件式存儲引擎上搜索
supports boolean, phrase, and word proximity queries;
支持每個文檔多個全文檢索域(默認最大32個);
支持每個文檔多屬性;
支持斷詞;
支持單字節編碼與UTF-8編碼;
supports English stemming, Russian stemming, and Soundex for morphology;
支持MySQ(MyISAM和InnoDB 表都支持);
支持PostgreSQL.

更為詳細教程請參考:php官方sphinx文檔

您可能感興趣的文章

  • Sphinx在windows下安裝使用[支持中文全文檢索]
  • PHP中跳出多重循環使用break,continue,goto,return,exit的用法和區別
  • php如何判斷當前的操作系統是linux還是windows
  • php中echo,print,print_r,var_export,var_dump 的用法與區別
  • php在數組中查找某個值是否存在(in_array(),array_search(),array_key_exists())
  • sphinx中文全文檢索的實現
  • php中$this、static、final、const、self 等幾個關鍵字的用法
  • php模擬ping命令的方法

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved