Обновить
24.92

Поисковые технологии *

От AltaVista до Яндекса

Сначала показывать
Порог рейтинга
Уровень сложности

Устройство поисковых систем: базовый поиск и инвертированный индекс

Время на прочтение24 мин
Просмотры33K

Под капотом почти каждой поисковой строки бьется одно и то же пламенное сердце — инвертированный индекс. Именно инвертированный индекс принимает текстовые запросы и возвращает пользователю список документов, а пользователь смотрит на всё это дело и радуется котиками, ответам с StackOverflow и страничкам на вики.

В статье описано устройство поиска, инвертированного индекса и его оптимизаций с отсылками к теории. В качестве подопытного кролика взят Tantivy — реализация архитектуры Lucene на Rust. Статья получилась концентрированной, математикосодержащей и несовместимой с расслабленным чтением хабра за чашкой кофе, осторожно!
Читать дальше →

Ещё один поиск Вк по фото

Время на прочтение7 мин
Просмотры57K

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

Вдохновиться

Однажды Microsoft забанила всю мою страну за читерство

Время на прочтение15 мин
Просмотры27K

Об игре


Club Bing — это набор игр, в которые можно было играть в 2007-2012 годах. Все игры были связаны со словами, в них нужно было играть онлайн, чтобы зарабатывать очки, которые можно было тратить в онлайн-магазине для покупки призов. Одна из игр называлась Chicktionary. Цель игры: использовать 7 букв, чтобы составить как можно больше слов.


Буквы, которые можно использовать, указаны внизу, а слова, которые нужно составить — это маленькие яйца сверху. Всегда есть одно слово из семи букв.

В первые дни после выпуска этих игр можно было заработать множество призов. Хотя сайт позволял получать на один адрес только один приз, можно было запросто добавить номер квартиры к адресу собственного дома и создать множество уникальных адресов:

  • 123 Main St. Apt #1, Anywhere, YZ, USA
  • 123 Main St. Apt #2, Anywhere, YZ, USA
  • 123 Main St. Apt #3, Anywhere, YZ, USA

Очевидно, наилучшим соотношением стоимости к очкам обладал контроллер XBox, поэтому можно было оставить компьютер набирать очки на нескольких аккаунтах, а затем тратить все очки на покупку контроллеров. На одном форуме был пост с фотографией парня, получившего почтой примерно 100 контроллеров за один день. Он сразу же выложил их на Ebay и продал.
Читать дальше →

Интернационализация поиска по городским адресам. Реализуем русскоязычный Soundex на Sphinx Search

Время на прочтение14 мин
Просмотры3.6K

Как много в вашем городе иностранных туристов? В моём мало, но встречаются, как правило стоят потерянные посреди улицы и повторяют одно единственное слово – название чего бы то ни было. А прохожие пытаются им на пальцах объяснить куда пройти, а когда «моя твоя не понимать» – берут за руку и ведут к пункту назначения. Как это не удивительно, обычно цель в пяти минутах ходьбы, т.е. какое-то примерное представление о городе эти туристы всё же имели. Может по бумажной карте ориентировались.

А как часто лично вы оказывались в такой ситуации, в незнакомом городе в другой стране?

Появление смартфонов и приложений для навигации решило много проблем. Ура, можно посмотреть свою геолокацию, можно найти куда идти, прикинуть в каком направлении и даже проложить маршрут.

Осталась одна проблема: все улицы в приложении подписаны местными иероглифами на местном наречии, и ладно если в стране пребывания принята латиница, клавиатура на латинице есть во всех смартфонах и мир к ней привык, и то я испытывал дискомфорт, из-за диакритических знаков, принятых в чешском алфавите. А боль и страдания иностранцев, видящих кириллицу, могу только представить, посмотрите псевдокириллицу и поймёте. Если бы я оказался на их месте, я бы писал названия и адреса латиницей, пытаясь воспроизвести звучание - фонетический поиск.

В публикации опишу как реализовать фонетические алгоритмы поиска Soudex на движке Sphinx Search. Одной транслитерацией здесь не обойдётся, хотя и без неё никуда. Получившийся конфигурационный файл, доступен на GitHub Gist.

Длиннопост

Новый, смелый, анонимный: поисковик Brave Search

Время на прочтение3 мин
Просмотры13K

Создатели браузера Brave запустят независимый, privacy-first поиск, который не является обёрткой над поисковыми машинами из bigtech.

Читать далее

Быстро разрабатываться и не падать: инструменты и опыт поиска Маркета. Доклад Яндекса

Время на прочтение12 мин
Просмотры3.7K
Поговорим о взаимодействии разработчика с ручными и автоматическими тестировщиками. Тимлид команды разработки в Маркете Юрий Акатов yuraaka рассказал о том, как создать платформу модульных автотестов и интегрировать её в процесс релиза, о проблемах нагрузочного тестирования и автоматизации, а также об отладке кода на продакшене и минимизации ущерба от непойманных багов, которые прокрадываются в релиз.



— Всем привет. Меня зовут Юра, я около семи лет работаю в поиске Маркета. Сегодня мы с вами поговорим о нашем опыте, о том, как мы организовали процессы и инструментарий, чтобы быстро разрабатываться и не падать.
Читать дальше →

Tier 2 в SEO и интернет маркетинге

Время на прочтение12 мин
Просмотры9.2K

Поскольку как в Гугле, так и в Яндексе пока почти нет информации на русском про tier 2 начнем с определений. В переводе с английского tier – это ярус, уже можно понять, что tier 2 это какой-то второй ярус. Если мы начнем «гуглить» tier 2, то увидим, что термин применяется в построении сетей разных уровней, а также в центрах обработки данных как показатель их надежности, но еще и в выдаче виз в Великобританию. Казалось бы, а при чем здесь SEO или маркетинг?

Рунет по разному, но зачастую значительно позже переваривает и популяризирует тренды или методы, которые в англоязычном мировом интернете уже давно систематизированы и изучены. В Google на английском поиск по запросу “tier seo” показывает, что эти методы продвижения с помощью усиления ссылок второго уровня tier 2 используется и активно обсуждается на англоязычных форумах уже много лет. Надо отметить, что даже в продвинутом англоязычном seo иногда не в курсе термина tier 2, хотя успешно используют эти методы.

Стоп, а если я не «сеошник», тогда мне не надо дальше читать этот длиннопост? Сеошники вряд ли много нового узнают, однако, статья должна быть полезна и маркетологам. На самом деле кто бы вы ни были, но вы в любом случае сталкиваетесь с tier 2. В этой статье я попытаюсь пояснить почему каждому пользователю сети Интернет важно знать о вариантах ссылок tier 2.

Читать дальше

Manticore Search — форк Sphinx: отчёт за 3 года

Время на прочтение12 мин
Просмотры20K

В мае 2017 мы, команда Manticore Software, сделали форк Sphinxsearch, который назвали Manticore Search. Ниже вы найдёте краткий отчёт о проделанной работе за три с половиной года, прошедших с момента форка.

Читать далее

Google Books Ngram Viewer как инструмент для ретроспективных исследований

Время на прочтение8 мин
Просмотры12K

Для принятия правильных решений в различных жизненных ситуациях очень полезно иметь адекватную модель мира. В частности, бывает полезна возможность сопоставить популярность различных предметов и оценить динамику этой популярности. Например, вы издатель, и вам предлагают перевести и издать книгу по языку программирования Fortran. Его ведь всё ещё используют, издаётся англоязычная литература, а у нас давно ничего не выходило. Или, скажем, по языку Julia. Книжек по актуальной версии языка на русском ещё нет. Можно взять какую-нибудь самую популярную английскую, перевести, издать и сорвать куш. В подобных ситуациях полезно иметь возможность подглядеть, какова популярность этих языков относительно других и какова динамика этой популярности. Пример с языками программирования приведён просто для наглядности, подобные задачи возникают и при анализе популярности различных программ, технологий, научных концепций.

Читать далее

Агрегаторы вакансий для разработчиков: сравниваю 10+ самых популярных

Время на прочтение7 мин
Просмотры9.7K

Только самый-самый ленивый человек не написал о том, как искать работу на удаленке. Большинство советов про то, как откликнуться, пройти собеседование и так далее. Меня интересует другое — где вообще удобно искать вакансии. Составил свой рейтинг, протестировав 10 самых известных агрегаторов.

К рейтингу

Как не держать лишнее железо и справляться с ростом нагрузки: внедрение graceful degradation в Яндекс.Маркете

Время на прочтение4 мин
Просмотры7.5K

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

Читать далее

Какой софт и базы использует Bellingcat в своих расследованиях?

Время на прочтение7 мин
Просмотры128K


Весь мир обсуждает последнее расследование детективного агентства Bellingcat. Кажется невероятным, что группа обычных пользователей способна распутать такое дело. При этом они используют стандартные инструменты и базы данных, зачастую доступные в интернете.

Неужели сегодня можно раскрыть преступление вообще не вставая из-за компьютера? Только на основании следов, которые люди оставляют в базах данных, в истории мессенджеров, в логах операторов связи, на камерах наблюдения?

Или это фантастический киберпанк?
Читать дальше →

История AltaVista и сохранение прошлого Интернета

Время на прочтение8 мин
Просмотры14K


Четверть века назад как своеобразный эксперимент возник один из первых крупных поисковых движков, задумывавшийся как публичный тест основного продукта производителя серверов. В этом тесте мог принять участие любой пользователь с подключением к вебу. На то время эксперимент оказался настолько удачным, что этого никто и представить не мог. Однако проблема заключалась в том, что по сути своей это был эксперимент, который никогда не позиционировался как бизнес. Поэтому со временем эту инновацию неизбежно превзойдут другие, более подходящие компании, а данная передовая идея со временем станет частью прошлого. Но никто не собирался превращать в музейный экспонат инновации Интернета 1995 и 1996 годов: время не стояло на месте, как и веб-сайты, какими бы важными они ни были. Однако было бы здорово, если бы кто-то смог это сделать. В своей статье я пишу об AltaVista, Digital Equipment Corporation, веб-доменах и о том, как важная история может стать основой глупой маркетинговой схемы какой-то случайной компании.
Читать дальше →

Ближайшие события

Не баян: ищем дубликаты изображений на основе Milvus с индексом FAISS внутри

Время на прочтение6 мин
Просмотры8.1K


В user-generated проектах часто приходится бороться с дубликатами, а для нас это особенно актуально, так как основной контент мобильного приложения, которое я разрабатываю, — это изображения, которые постятся десятками тысяч ежедневно. Для поиска повторов мы написали отдельную систему, чтобы облегчить процесс и сэкономить море времени.

Под катом рассмотрим используемые инструменты, а потом перейдём к примеру реализации.
Читать дальше →

Сито для интернета: интересные вещи с Shodan

Время на прочтение5 мин
Просмотры32K


Интернет ошибочно отождествляют исключительно с вебом, но всемирная паутина доступная через браузер — это всего лишь вершина айсберга глобальной сети. Ее подводная часть куда разнообразнее, и хоть она скрыта от глаз рядовых пользователей, ничто не мешает изучать ее специализированными средствами. Одним из таких сервисов, сделанных “под ключ” и устроенных по типу швейцарского ножа, можно назвать Shodan.

Если гугл индексирует новостные сайты и энциклопедии, специально выставленные на всеобщее обозрение, то Shodan — это поисковая система, которая целенаправленно индексирует все подключенные к интернету вычислительные устройства (веб-камеры, маршрутизаторы, серверы и новомодные IoT-девайсы) и позволяет находить их с помощью различных поисковых запросов и фильтров.


Читать дальше →

Как я создал собственный алгоритм YouTube (чтобы не тратить время впустую)

Время на прочтение8 мин
Просмотры24K


Побег от алгоритма YouTube


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

Всё это неудивительно: алгоритм отдаёт приоритет кликам и времени просмотра.

Поэтому я поставил перед собой задачу: Смогу ли я написать код, который автоматически будет находить ценные видео, избавив меня от привязанности к алгоритму YouTube?

Вот так всё и началось.

Оптимально выстроенные планы


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

Я решил, что смогу серьёзно повысить продуктивность, если буду пакетно выбирать наборы видео для просмотра на каждую неделю и избавлюсь от необходимости бесконечного скроллинга YouTube.

Социальный мониторинг здорового человека: бесплатные инструменты для отслеживания упоминаний

Время на прочтение4 мин
Просмотры9.5K


В мире стартапов и небольших проектов традиционно принято считать хороший маркетинг одним из главных условием успешного запуска. Многие не согласны с этим, в недавней статье про минусы работы в стартапах подробно описываются проблемы, связанные с затратами на маркетинг и их печальные следствия. Мы не будем их подробно обсуждать, а сконцентрируемся на одной небольшой задаче, которая поможет понять, насколько зашёл сообществу ваш продукт и как часто на него обращают внимание. Речь идёт о мониторинге упоминаний бренда; так как денег у стартапов/пет-проектов мало и мы трясёмся над каждой копейкой, будем рассматривать только бесплатные варианты.
Читать дальше →

Полнотекстовый поиск в Couchbase Server

Время на прочтение7 мин
Просмотры2.8K
Дмитрий Калугин-Балашов большую часть своей жизни писал поиск: с 2011 года в компании Mail.ru был поиск по почте, затем был небольшой перерыв из-за работы в США, а сейчас это — работа над поиском в Couchbase. Одна из первых вещей, которую Дмитрий понял, работая в США — не всегда покупают самое эффективное решение. Иногда покупают то, где клиент будет иметь меньше проблем.

Поэтому ещё в 2013 году Дмитрий написал движок поиска для почтовых ящиков Mail.ru и рассказал об этом в том же году на конференции HighLoad и в статье на Хабре. А на HighLoad 2019 показал, как устроен полнотекстовый поиск в Couchbase Server, и сегодня мы предлагаем расшифровку его доклада.


Читать дальше →

Трансформеры в Поиске: как Яндекс применил тяжёлые нейросети для поиска по смыслу

Время на прочтение16 мин
Просмотры64K

Привет, Хабр. Меня зовут Саша Готманов, я руковожу группой нейросетевых технологий в поиске Яндекса. Сегодня на YaC 2020 мы впервые рассказали о внедрении трансформера — новой нейросетевой архитектуры для ранжирования веб-страниц. Это наиболее значимое событие в нашем поиске за последние 10 лет. 

Сегодня я расскажу читателям Хабра, в чём заключается иллюзия «поиска по смыслу», какой путь прошли алгоритмы и нейросети в ранжировании и какие основные сложности стоят перед теми, кто хочет применить для этой задачи трансформеры и даже заставить их работать в рантайме. 

Читать далее

Поиск научных публикаций в Интернете. Часть 3. Настройка оповещений

Время на прочтение5 мин
Просмотры7.1K
Продолжение (начало – здесь (1) и (2))

Уметь искать информацию о научных публикациях по своей тематике – хорошо. Но ещё лучше, если эта информация будет сама вас находить. Поэтому в заключительной части обзора по поиску научных публикаций я рассмотрю особенности настройки оповещений.


Обычный вид моего почтового ящика — существенную часть писем составляют оповещения о новых публикациях
Читать дальше →

Вклад авторов