Полнотекстовый поиск MySQL по извлеченному столбцу json - PullRequest
0 голосов
/ 25 июня 2019

Я ищу ответы на конкретный сценарий, с которым я имею дело, используя функции полнотекстового поиска и столбца json в MySQL.

Я храню неструктурированные данные / данные без схемы в столбце json, который я хочу включитьполнотекстовый поиск по.Я уверен, что все знают, что MySQL не позволяет FTS на столбце json.Но есть способы обойти это, и я вроде как остановился на одном, но я не уверен, каковы будут его последствия в долгосрочной перспективе.

Многие люди предлагают скопировать данные, которые требуют поиска, в сгенерированный столбец,Я не могу этого сделать, потому что, как я уже сказал, мои данные не имеют никакой схемы, и для меня не практично создавать сгенерированные столбцы для всех возможностей, это в первую очередь отрицательно скажется на цели использования json.

Поэтому я подумал об использовании только одного сгенерированного столбца, который берет все данные из исходного столбца json и сохраняет его как литерал json, используя MySQL json_extract ().Кажется, это работает нормально, и я доволен результатами.Я, однако, не уверен в одном.Хранение литерала json будет означать хранение других избыточных вещей, помимо фактических данных, например ключей / имен свойств.Учитывая, как работает полнотекстовый поиск (инвертированный индекс и все), такая избыточная информация как-то повлияет на поиск, когда данные начнут расти?давайте не будем беспокоиться о пользователях, пытающихся искать данные с помощью ключей json, а вместо этого о том, повлияет ли включение, если эти ключи из каждого ряда, на производительность FTS или нет?

Последнее, да, я сделал свою домашнюю работу, яЯ знаю, что есть и другие лучшие способы для полнотекстового поиска, но я выбрал этот путь из-за моей ситуации, и мне нужно действительно веское обоснование, чтобы искать альтернативные решения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...