У меня есть база данных, в которой хранится информация о кодах Chekins из различных SCR. Одна из таблиц в этом хранилище базы данных фиксирует комментарии для каждой регистрации. Я пытаюсь разработать функцию поиска, которая с помощью нотации Postgres posix просматривает эту таблицу, пытаясь сопоставить регулярное выражение в этом поле комментария и вернуть все совпадающие.
Я уже заставил это работать, но главная проблема здесь - выполнение этого поиска. Для довольно большой базы данных поиск занимает почти 15-20 минут, а веб-интерфейс ожидает результата, что является совершенно неприемлемым временем для базы данных среднего размера.
Я подумал, что создание индекса для этого текстового поля может помочь, но я не могу создать индекс btree, потому что данные для некоторых строк слишком велики, чтобы potgres не мог создать индекс для него.
Есть ли другое решение для этого? Могут ли быть созданы какие-либо другие индексы, которые также не должны зависеть от языка?