Это не только у вас, это у всех так работает. И судя по дате ответа nlo, по сей день ничего не изменилось.
Я программист, и первой моей серьёзной задачей (ещё в начале нулевых годов) было настроить поиск в некой базе данных (1С) по первым вводимым пользователем символам. "Тупо" её решил. Транслитерация, регистр, это сделал.. От индексации, ессно отказался, хотя лучшим решением было бы каждый новый контент, а также редакции имеющегося, индексировать. И все поиски осуществлять в индексном файле. Там у меня были номера серий (буквенно-цифровые), МНН (международные непатентованные названия), и торговые наименования лекарственных средств. Около 68000 ежедневно обновляемых наименований. Некоторые серии могли попадать под фальсификат, либо под подделку, либо под споры дистрибьюторов. Самые запутанные случаи — 0.34 секунды для формирования списка (386 проц, 16 Мб(!) оперативки). При этом в "топе" были те, которые листать не требовалось, буквально первые позиции. Повезло мне с 1С-кой, она сама делала (сейчас не знаю), неявные SQL-запросы. Явные же, прописанные мною в коде, до жути медленно обрабатывала. Схема такая: символ нововведёный ищется тут же, и предлагаются варианты, ещё один ввели — полностью новый запрос... Алгоритм сделал сам-на себя-ссылающийся, рекурсивный.
Вывод: не пользуйтесь внутренним поиском. От дубликатов он вас не спасёт. Возьмите на вооружение поиск у индексаторов, типа Гугла и Яндекса. Есть замечательная конструкция "искомый текст site:www.bolshoyvopros.ru", она реально "рулит".