Источник: Nuances of Programming Краткое содержание class AddTrigramIndex < ActiveRecord::Migration[6.0]
disable_ddl_transaction!
def change
enable_extension :pg_trgm
add_index :table, :column, opclass: :gin_trgm_ops, using: :gin,
algorithm: :concurrently, name: ‘index_trgm’
end
end Если все понятно, то переходите к следующей статье. Хотите досконально разобраться, как значительно доработать производительность поиска? Читайте дальше. Введение Что самое лучшее в разработке ПО? Оптимизация кода, запросов, моделей данных, исправление показателей скорости Google… Когда что-то подобное попадает вам в руки, вы должны прыгать от счастья. Нигде не делаешь так мало (обычно), чтобы добиться таких больших изменений для конечного пользователя! Разберемся, как же доработать функцию поиска на дашборде приложения. Пока оно небольшое, производительность этой функции — не проблема: def search(query)
Post.where("body ILIKE (?)", "%#{query}%")
end Постов немного, и последоват