После добавления английских слов в таблицу, но до индексации можно отфильтровать из базы словосочетания, которые, скорее всего, относятся к другим языкам. Большая часть таких часто встречающихся слов – это короткие слова: артикли, предлоги, местоимения испанского, французского, итальянского, немецкого, голландского и других языков.
Если удалить из базы словосочетания с ними, можно таким образом уменьшить базу примерно на 6-10%. Но при этом нужно помнить, что автоматическое удаление приведет к потере многих имен собственных (названий городов, гостиниц, ресторанов, торговых сетей и торговых марок, названий товаров, напитков, блюд и т.п.). Например, удаление предлогов и артиклей de, da, la, les, los, las, el, del уберет из базы все товары, которые определяются как de luxe/de lux, торговые марки De Beers, De Sousa, названия гостиниц и ресторанов типа La Palma, La Fiesta, De Pasada, Da Marco, названия американских городов Los Angeles, Los Santos, Las Vegas, De Leon, El Monte, Del Rey и т.д. и т.п. Поэтому к удалению слов из базы нужно отнестись с осторожностью.
Если тем не менее вы решили, что вам будет удобнее работать с отфильтрованной английской базой, то вам нужно использовать такую команду:
delete
"keyword"
from
"eng_data_table"
where
to_tsvector('simple', "keyword") @@ to_tsquery('simple', 'de | la | el | para');
Список слов обрамляется одинарными кавычками, слова разделены пробелами и вертикальными чертами.
В этом примере лишь несколько слов для фильтрации, список может быть расширен за счет наиболее частотных неанглийских слов или слов, у которых больше контекстных употреблений в неанглийских фразах. Часть этих слов - аббревиатуры, коды штатов США, коды стран.
Используйте эти слова осторожно как основу для фильтра, поскольку большинство вхождений этих слов - это неанглийские фразы, хотя английские фразы с этими словами тоже есть.
Скачать список слов для чистки английской базы ключевых слов.
Тема фильтров обсуждалась на форуме. Здесь вы можете найти пример регулярного выражения для фильтрации базы с помощью утилиты grep, предложенные участником форума под ником admak.
© 2014 - 2018 Букварикс