All streams
Search
Write a publication
Pull to refresh
106
0
Cher @Cher

User

Send message
У Яндекса очень специфические задачи и хорошие программисты и пилить свой hadoop и impala вполне можно, но… все кто поменьше пользуются opensource и там жизнь бурлит.

Даже если у Яндекса выделено 100 программистов только под MapReduce фрэймворк, есть шанс что проекты из экосистемы hadoop все равно обойдут разработку Яндекса по качеству, скорости, удобству. Даже в таких мелочах как документированность и наличие обученных спецов на рынке: любой может развернуть себе hadoop и играться, а вот с фрэймворком Яндекса — не уверен что порог вхождения такой низкий.

Я к чему — в мечтах вместо того чтобы делать 5 разных mapreduce фрэймворков, было бы круто если бы все навалились на hadoop ) Хотя я конечно понимаю, что у Яндекса свои задачи, и даже если эти задачи выполняются на своем решении на 30% лучше по железу, то в масштабах это уже существенная экономия
лучше уж назвать книжку Java Spring )
Тактовая частота процессора – 5.5 ГГц для Enterprise класса, 4.2 ГГц для Business класса.
Количество ядер – 101 для Enterprise класса, 13 для Business класса.
Оперативная память – 3 ТБ для Enterprise класса, 496 ГБ для Business класса.

впечатляет, и конечно это нужно в банках etc.
но в целом мне кажется что будущее не за такими «монстрами», а где-то в стороне экосистемы hadoop, в кластерах с кучей обычных серверов. Очень много чего там сейчас делается. IBM я знаю тоже участвует.
А DuckDuckGo пользуется API гугла или сам краулит?
они останутся бесплатными, это обычная практика
умные клиенты очень хорошо внимают когда им говоришь цифры повышения просмотра страниц после внедрения такого поиска (читай больше показов баннеров, больше $). Не говоря уже о том что убогие проекты постепенно вытесняются сделанными с душой
мы пока не знаем, есть мысли что поиск должен окупать себя сам и еще приносить прибыль владельцу контента (привет гугл). Хотя для интернет магазинов это не вариант. Думаем.
У нас под капотом elastic search который имхо даже гибче SOLR в плане бустов.
В простейшем случае можно обернуть основной запрос в custom_score запрос, где можно вставить JS и сделать любой буст:

{
  "query": {
    "custom_score": {
      "query": { ...the main query... },
      "script": "_score * (doc['поле даты'].value)"
    }
  }
}

такой запрос пишется в «виджете», например у нас на сайте блок Artists это отдельный виджет, со своим запросом. А блок Users — другой виджет со своим запросом. В Users логично сделать буст по какому-нибудь параметру типа карма.

Запросы исполняются параллельно в разных потоках, и потом результат складывается в JSON. Довольно гибкая схема получается, можно запросить результаты одного виджета, можно нескольких. Это уже наша надстройка. Как я помню в Solr пока нельзя несколько запросов выполнить в один заход.

Кстати здесь еще плюс в том что лишнее не торчит наружу, то есть запрос на результаты поиска выглядит вот так:
gate.indexisto.com/51d587807d3e114babf91418/edit?q=hi&items=hdfkl;JrEXH;
где 51d587807d3e114babf91418 номер индекса, q — введеные символы, items=hdfkl;JrEXH; — id виджетов.
а параметры передаются в запрос написанный в виджете (запрос лежит на сервере) вот так:
{
  "query":{
    "multi_match":{
      "query":"${q}",
      "type" : "phrase_prefix",
      "use_dis_max" : true,
      "fields":[
        "title"
      ]
    }
  },

в SOLR многовато можно в качестве GET параметров передать, могут понаписать что-нибудь и положить поиск, так или иначе надо что-то перед ним ставить.
не слышал такого )
ну мы нацелены на более структурированную исходную информацию из базы данных, она как правило содержит больше данных по релевантности. Например, на форуме очень логично было бы учесть в выдаче количество комментариев к топику, грубо говоря отсортировать выдачу по количеству комментариев. Swiftype так не сможет
ага вижу, это неправильно, на DEP ерунда.
Сразу не отвечу. Скорее всего дело в обработке запроса и индексированных документов. Отрабатывает морфология и стоп слова (отбрасываются артикли и прочее). Кто-то что-то привел к нормальной форм, потом что-то отбросил. Копаем.
демки еще не успели настроить все,
наш основной сайт indexisto.com тоже на drupal, и простой поиск по тэгам типа korean pop там работает
1. Freebase пока только в ближайших планах и еще не выпущено в продакшн. Freebase не ссылается на википедию только частично, например смотрите что есть во Freebase по Мадонне:
www.freebase.com/m/01vs_v8
как видно description просто взят из википедии, однако есть и куча других полей типа /music/artist/album: Like a Virgin, True Blue

Если вы знаете что у вас в базе в таблице Artists в поле Titile лежит имя исполнителя, вы можете прописать запрос на получение дополнительных данных, например — дайте мне все альбомы мадонны. Далее можно решить что с этими данными делать, можно их добавить в выдачу, например человек ищет МАДОННА, вы в сниппете покажете альбомы мадонны.

Можно спросить Freebase: дай мне псевдонимы мадонны (/common/topic/alias), и добавить синонимы: Louise Ciccone, Madonna Ciccone Ritchie… и в вас заработает поиск по запросу LOUISE CHICCONE

2. API пока есть только на выдачу, загрузка пока через базу. API на добавление документов в ближайших планах
3. Мы пока думаем как монетизироваться. Но если мы подключили кого-то бесплатно, платным оно не станет
прошу в личку, все настроим, случай на первый взгляд не сложный )
так, а какой пример?
я думаю задача про новости ближе к тому что пилит abbyy www.abbyy.ru/science/technologies/business/compreno/
Словари синонимов — да, поддерживаются, но мы его пока не загрузили. Хороший пример с пурпурным диваном.
безбрежный|необозримый|необъятный пурпурный диван ))
у нас вся семантика строится на параметрах которые уже есть в вашей базе, и эти параметры должны быть четко определены. Даже когда мы расширяем это понятие с помощью данных из DbPedia мы должны отталкиваться от чего-то. Например, у вас базе есть аттрибут — город производства товара: Гуанчжоу. Мы можем расширить его до Китай, Южный Китай, Кантон
Задача каталогизации новостей это другая сложная задача )
Спасибо )
Fuzzy можно настроить, учесть синонимы, ошибки. Мы в тестовой выдаче сделали морфологию автоматом, а ошибки в написании решили выводить подсказками снизу поисковой строки. Попробуйте набрать mikael, предложат michael
Java на Android такая чистая и красивая (никаких спрингов ))
// LOG.v(«child clip » + position + " " + childClip.toShortString());
Лучше наверно поставиль log level OFF? )

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity