This article focuses on why we choose a full-text search engine and its advantages.

Before introducing full-text search engines, let’s first introduce what a search engine is.

Search engine

Search Engine is a system that collects information from the Internet according to certain policies and uses specific computer programs. After organizing and processing the information, it provides Search services for users and displays relevant information to users. For example: Baidu, Google and so on.

Full-text search engine

Full-text search engine is a kind of search engine, which mainly uses full-text search to search. Full-text retrieval refers to the computer indexing program through scanning every word in the article, to establish an index for each word, indicating the number and position of the word in the article, when the user queries, the retrieval program will be based on the index established in advance to search, and the search results feedback to the user retrieval method. This process is similar to looking up words through the search word table in a dictionary. Full text search data in a search engine database.

Why use a full-text search engine?

Full-text search engines excel in fast and efficient query of large quantities of unstructured text records, and return these results based on the search for matching documents, they can be based on specific values or fields to quickly and efficiently sort, classify, etc. A system’s full-text search capabilities should be rich and flexible, and also need to support basic keyword queries: Internet +/- syntax, use of Boolean operators, limited real or pseudo-natural language processing, proximity operations, look-ups, etc.

Structured data: data of fixed format or limited length, such as database, metadata, etc. Unstructured data: data of indefinite length or without fixed format, such as emails, Word documents, etc.Copy the code

The optimal functions of the full-text search system can be summarized as follows:

1. Sub-second search results indicate which files may contain one or more terms (words, numbers, etc.) in millions or billions of user searches.

Rich and flexible text query tools and sophisticated ranking functions to find the best documents/records.

Add, delete or update basic functions of documents/records.

4. Basic functions for storing data (other than simple indexing and searching). Not all full-text search systems support this functionality, but most include Lucene/Solr.

When to use a full-text search engine?

1. A large amount of free-structured text data (or records containing such data) is searched.

2. Support a large number of queries based on interactive text.

3, demand is very flexible full-text search queries.

4. The need for highly relevant search results is not met by available relational databases.

5. There is relatively little need for non-text data manipulation or secure transaction processing for different record types.

Reference: full text search engine vs DBMS

conclusion

A full-text search engine can meet the needs of the project, so we decided to use it.

The next article will introduce the principle of full text search and analyze why we can find the data we want to find quickly.