Home  >  Article  >  Backend Development  >  Learn sphinx sphinx Chinese django sphinx python sphinx usage

Learn sphinx sphinx Chinese django sphinx python sphinx usage

WBOY
WBOYOriginal
2016-07-29 08:53:521357browse

How to use sphinx technology in our PHP development?

Answer: Corresponding to the fields in the MySQL database, it means splitting the Chinese information in the fields into multiple words, and then indexing these words. When querying in the future, first query these index files, then return the primary key IDs of the records that meet the conditions, and then query the MySQL database based on the primary key IDs to return the records.

sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

What is sphinx? (Baidu Encyclopedia)

Note: For sphinx, if there are tens of millions of records in a single table, the response time is at the millisecond level.

sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

Note: By default sphinx only supports English and Russian

Official website:

http://sphinxsearch.com/

Since Sphinx only supports the above two languages, a third-party company has developed a middle segmentation package for sphinx called coreseek

Official website:

http://www.coreseek.cn/

sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

Customer case: http://www.coreseek.cn/products/ft_powered/

Note two points:

  1. sphinx is a full-text search engine that only supports Russian and English

  2. Due to the above reasons, a specialized company has developed a Chinese word segmentation package called coresesk.

  3. There is a company in China that does a better job (massive word segmentation)

    http://www.hylanda.com/

    Story: http://home.hylanda.com/show_5_19.html

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    Practical operation

  4. Download

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    2. Build a big data table (lyrics table)

    mysql > source d:/songs.sql

    File Directory:

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法Command:

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    sphinx installation-use

    Installation

    Please note: sphinx configuration file must not be opened using Windows Notepad. (BOM header)

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    API interface file: You can use php to call this interface to operate the index file on the sphinx server side.

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

  5. Modify configuration file

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    Index file

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    Memory settings:

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    sphinxd configuration:

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

  6. Indexing

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    The name after index in the configuration file

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    Directory structure after indexing

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    3. Actual use

    a. Start the sphinx service and use the help information to see how to use it.

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    Use:

  7. You can read the configuration file separately and run it

  8. can also be installed as a system service in Windows to run

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    Start the sphinx service (read the configuration file for a single start)

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    is defined as after system service (installation)

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    Use

    1. Specific use (sphinx process can be seen in the picture below)

    sphinx flow chart:

    sphinx storage engine: Through the following steps, we found that when the PHP program performs a query, it must first return the primary key ID based on the sphinx server, then query the MySQL database based on the primary key ID, and finally return the database.

    At this time, you can think like this, use sphinx as a storage engine of MySQL. At this time, the php program can directly connect to the MySQL server, and the MySQL server obtains the word segmented data from its own sphinx storage engine. There is no need to connect to the sphinx server once. This storage engine is called sphinxSE.

    http://blog.csdn.net/uestc_huan/article/details/6395145

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

  9. Easy to use

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

  10. use

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

    sphinx 文档,sphinx 安装,sphinx cat,sphinx doc,sphinx 中文,django sphinx,python sphinx用法

The above has introduced learning sphinx, including sphinx content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn