資源描述:
《sphinx配置,中文分詞,PHP調(diào)用sphinx.ppt》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。
1、大綱1.sphinx概述;2.sphinx的優(yōu)缺點;3.sphinx分布圖;4.Sphinx以及coreseek中文分詞安裝和配置;5.使用PHP使用sphinx;1.sphinx概述Sphinx是SQLPhraseIndex(查詢詞組索引)的縮寫,Sphinx是一個基于SQL的全文檢索引擎,可以結合MySQL,PostgreSQL,XML等做全文搜索,它提供的API接口包括:PHP,Python,Perl,Ruby,java等,同時為MySQL也設計了一個存儲引擎插件(SphinxSE)。它是一個分布式的全文檢索系統(tǒng)。2.sphinx的優(yōu)缺點優(yōu)點:高速的建立索引(在當代CPU上
2、,可達到10MB/秒);高性能的搜索(在2–4GB的文本數(shù)據(jù)上,平均每次檢索響應時間小于0.1秒);可處理海量數(shù)據(jù)(目前已知可以處理超過100GB的文本數(shù)據(jù),在單一CPU的系統(tǒng)上可處理100M文檔);提供了優(yōu)秀的相關度算法,基于短語相似度和統(tǒng)計BM2的復合Ranking方法;支持分布式搜索;提供文檔片段(摘要以及高亮)生成功能;可作為MySQL的存儲引擎提供搜索服務;支持布爾、短語、詞語相似度等多種檢索模式;文檔支持多個全文檢索字段(最大不超過32個);缺點:必須要有主鍵主鍵必須為整型不負責數(shù)據(jù)存儲(計算)配置不靈活3.sphinx分布圖相當于數(shù)據(jù)庫的中間層,緩解數(shù)據(jù)庫的壓力4.
3、sphinx的安裝和配置Sphinx安裝1.上傳軟件包sphinx-0.9.9.tar.gz;2.解壓:tar-zxvfsphinx-0.9.9.tar.gz3.編譯安裝:進入到sphinx的源碼文件夾里,運行下列命令就可以安裝sphinx了:cd/lamp/sphinx-0.9.9./configure?--prefix=/usr/local/sphinx?--with-mysql=/usr/local/mysqlmake?&&?make?install4.安裝完成之后,導入一些數(shù)據(jù);我們用安裝mysql自帶的test庫進行測試;運行/usr/local/sphinx/etc
4、/目錄下的example.sql腳本,把數(shù)據(jù)導到數(shù)據(jù)庫中:/usr/local/mysql/bin/mysql-uroot-p***usetest;//進入test庫mysql>showtables;//查看表Test庫中documents表是自動導進來的;我們插入幾條中文進去;mysql>insertintodocumentsvalues(null,1,
5、10,now(),'方研矩形','方研矩行科技有限公司');6.配置sphinx.conf配置文件;進入到sphinx的etc目錄找到配置文件cd?/usr/local/sphinx/etc我們需要備份一下配置文件,防止改錯不好處理。cp?sphinx.conf.dist?sphinx.conf進入配置文件。vim?sphinx.confSphinx基本配置數(shù)據(jù)源src是名字可以自己指定(意思就是說數(shù)據(jù)從哪里來得)sourcesrc113行{type=mysql#數(shù)據(jù)庫類型sql_host=localhost#MySQL主機IPsql_user=sphinxuser#MySQL用
6、戶名sql_pass=sphinxpass#MySQL密碼sql_db=sphinx#MySQL數(shù)據(jù)庫sql_port=3306#MySQL端口sql_sock=/tmp/mysql.sock#如果是linux下需要開啟,指定sock文件。35行sql_query_pre=SETNAMESUTF8#MySQL檢索編碼73行sql_query_pre=SETSESSIONquery_cache_type=OFF#關閉緩存74行sql_query=#獲取數(shù)據(jù)的SQL語句79行(默認就可以)SELECTid,group_id,UNIX_TIMESTAMP(date_added)ASd
7、ate_added,title,contentFROMdocumentssql_attr_uint=group_id#無符號整型107行根據(jù)79行指定的字段填寫sql_attr_timestamp=date_added#時間類型131行根據(jù)79行指定的字段填寫#用于命令界面端(CLI)調(diào)用的測試(一般來說不需要)187行sql_query_info=SELECT*FROMdocumentsWHEREid=$id}主索引indextext1271行{source=src1#索引源聲