Does it make sense to create a second column optimized for FULLTEXT searches?

the project I'm working on has for each column that you want to search in the second column called "ft [column name]", which has the FULLTEXT index, and only this search is performed against.

This column contains β€œoptimized” text, which is automatically generated from the source column as follows:

  • The line is below
  • All accents are removed
  • All punctuation and unused characters are deleted.
  • All duplicate words are deleted.
  • All words are sorted from longest to shortest.
  • Other conversions that I really don't understand (related to combined words)

For example: "I like Pokemon, especially Pikachu!" becomes "especially pokemon pikachu like i".

Is there (even a very small) performance? Data in a database never changes dynamically.

+3
source share
2 answers

There may be a functional advantage in your specific application, but maintaining duplicate data is largely related to performance - not an advantage.

, , , (, MySQL, OS) , , .

, ft, , , .

+1

, 2- , , MyISAM . ( , ).

, , , Sphinx: http://www.sphinxsearch.com/

-3

Source: https://habr.com/ru/post/1759351/


All Articles