[Перевод] Найти золото в потоке
Поиск в интернете — это поиск иголки в стоге сена. В случае поиска в потоке в режиме реального времени — это скорее просеивание золота. Обычные стиральные порошки поисковые системы, вроде Google или Bing выполняют поиск только в прошлом. Поэтому они не помогут в поиске чего-либо, что может произойти в будущем. В этой статье я расскажу о том, как не пропустить важные новости, выгодные предложения, упоминания чего-либо или кого-либо.
Авакари
Авакари — это относительно новый сервис поиска событий. Представьте, что вы отправляете поисковый запрос один раз и сервис запоминает его. Используя технику обратного поиска, Авакари определяет релевантность каждого входящего события. Когда событие удовлетворяет вашему запросу, сервис оповещает об этом без какой-либо задержки. Таким образом Авакари фильтрует события, ценные для вас.
Изначально, Авакари — это река в Новой Зеландии. Собственно, название использовано, чтобы подчеркнуть потоковый подход к решению.
Источники
Каждая река питается от своих истоков. У Авакари устройство похоже. Источники публикуют события, которые сервис объединяет в один большой поток. На момент написания статьи Авакари «питается» из десятков тысяч источников и это число постоянно растёт (далее в статье будет объяснение почему). Сервис может переваривать события из лент новостей, таких как RSS или Atom, социальных сетей (Fediverse) и публичных каналов Телеграм.
Если у вас есть свой источник, который вы считаете интересным, то его добавление только поощряется. Есть определённые ограничения на количество публикуемых сообщений в день для пользователя и всех источников, добавленных вручную. Если очень нужно, то изменение статуса источника или персонального лимита можно запросить.
Авакари конвертирует каждое новое событие внутри в формат CloudEvent. Сервис по возможности сохраняет текст и большинство исходных атрибутов сообщения. Многие из них почти полностью соответствуют стандарту schema.org. Разница возникает из-за того, что в Cloud Events вложенные атрибуты не позволены, а максимальная длина имени атрибута — 20 байт. Отсюда и конкатенация имён, например «offersprice». Наиболее распространённые и полезные атрибуты:
categories
: тэги или категории, разделённые прбеламиimageurl
: присутствует в сообщениях, которые содержат изображенияlanguage
: кодовое обозначение языка сообщения, напримерen
илиzh-CN
latitude
: число, присутствует в сообщениях с геолокациейlongitude
: число, присутствует в сообщениях с геолокациейobjecturl
: адрес оригинального сообщения, используется также для дедупликацииoffersprice
: число, цена, присутствует в сообщениях о коммерческих предложенияхsource
: адрес источника, который опубликовал сообщениеsubject
: обычно имя автора или название издания
Подписка на результаты поиска
Вы можете получать результаты поиска в Телеграм от бота или в формате RSS, в зависимости от выбранного способа логина. Чтобы начать, нужно определить критерии поиска и создать подписку. Подробнее о том, как это делать можно почитать в предыдущей статье. Примеры:
Пример подписки
Когда вы создаёте подписку, Авакари автоматически ищет в интернете релевантные источники и добавляет их в коллекцию со своим выделенным лимитом. Это может быть более предпочтительно, чем добавлять источники вручную.
Кроме того, Авакари отслеживает наиболее релевантные источники и автоматически повышает лимиты для них. Чем больше сообщений, совпавших с подписками пользователей, тем больше лимит. Таким образом, в Авакари — демократия ваш запрос решает всё.