Что такое AMA? Этот формат очень популярен на Reddit. Ты рассказываешь о себе и предлагаешь читателям задавать любые вопросы: Ask Me Anything! Особенно круто это удается у команд профессионалов — в итоге получается ряд коротких и полезных тематических бесед. Нам нравится Reddit, сам формат AMA и Хабрахабр, поэтому мы тоже вступаем в игру и приглашаем вас к диалогу здесь. Этот пост — анонс секции вопросов и ответов, которая будет работать в блоге Avito 13 октября, в пятницу, с 12 до 19 часов по мск. В этот день в AMA с вами будут на связи пять моих коллег, которые занимаются разработкой серверной части Avito. А под катом я напомню, о чем можно у них спросить.
Рубрика «sphinx» - 2
AMA, или спроси бэкендера из Avito: анонс
2017-10-11 в 8:58, admin, рубрики: ama, backend, Go, php, python, sphinx, Блог компании Avito, Разработка веб-сайтовКак сделать генерацию LaTeX и PDF в Sphinx
2017-05-08 в 7:19, admin, рубрики: latex, PDF, reStructeredText, rst, sphinx, генератор документаций, сединаКогда мы полтора года назад внедряли у себя генератор документаций Sphinx, перед нами стояла задача генерировать PDF. Дело оказалось весьма непростое. Готовых инструкций “бери и делай” на ресурсах не было. Мы пошли методом проб и ошибок. Через 3 дня мучений мы умели генерить PDF с нужным нам оформлением.
Сделали и забыли — работает же. Пока не случилась проблема со шрифтами. Снова намучились и снова решили. Но что примечательно — с тех пор готовой инструкции по генерации в PDF на просторах интернета не появилось. Поэтому выкладываю нашу. Внутри алгоритм с комментариями и файлами шаблона, особенностями ReST для LaTeX, которые мы собрали опытным путём.
Статья для тех, кто уже использует Sphinx, но имеет проблемы с LaTeX или PDF. Если вы только рассматривает Sphinx как инструмент документирования, будет полезно представлять, как готовить и подавать документацию в этих форматах.
Читать полностью »
Видео докладов с Go 1.8 release party Moscow
2017-02-22 в 9:58, admin, рубрики: Go, golang, goreleaseparty, meetup, php, sphinx, sphinxsearch, Блог компании Avito16 февраля Golang-сообщество устроило глобальный сбор в честь релиза версии 1.8. На московскую release party в офисе Avito собрались более 150 «гоферов» и сегодня мы публикуем видео-записи докладов.
Читать полностью »
Где живут ваши объявления?
2017-02-14 в 10:40, admin, рубрики: avito.ru, backend, php, postgresql, qa, sphinx, базы данных, Блог компании Avito, высокая производительность, мобильная разработка, разработка мобильных приложенийМы открываем техно-блог компании Avito. Многие знают бренд, но не так много тех, кто знает, как сервис устроен с технической стороны. В своём блоге мы приоткроем завесу неизвестного и расскажем о технической кухне сервиса.
Начнем с небольшой истории о том, что проект представляет из себя сегодня, чем занимается команда инженеров и, что мы планируем делать в ближайшем будущем. Еще мы собрали в этом посте множество ссылок на уже опубликованные материалы, доклады и презентации нашей команды, которыми давно хотели поделиться. Хотите знать, где живут ваши объявления? Добро пожаловать под кат!
Читать полностью »
Документация Linux ядра переходит на Python Sphinx
2016-12-07 в 18:10, admin, рубрики: docbook, linux kernel, open source, python, sphinx, документация, Разработка под LinuxLinux ядро на сегодняшний день — самый динамичный, сложный, крупный проект с открытым кодом. Как же обстоят дела с его документацией? Существует прямая связь: чем качественнее и доступнее документация проекта, тем проще для посторонних изучить основы дела, освоиться и стать полноправным участником.
На семинаре Kernel Recipies мейнтейнер документации Linux ядра Jonathan Corbet рассказал о нынешнем положении дел с документацией и о том, как будет совершаться переход от анархии к порядку. Первые успехи в этом начинании уже есть. Некоторые документы были недавно конвертированы в ReStructuredText
с помощью питоновского Сфинкса. О том как это было рассказано внутри.
Как устроен поиск
2016-09-16 в 16:23, admin, рубрики: highload, sphinx, sphinx search, андрей аксёнов, Блог компании Конференции Олега Бунина (Онтико), высокая производительность, поисковые технологии, Разработка веб-сайтовАндрей Аксенов ( shodan, Разработчик поискового движка Sphinx)
Поиск устроен вот так:
Индексация – по большому счету, ничего сложного. Понятное дело, что по малому счету, там в каждой из трех «деталей» спрятан не то, что демон, а целое где-то стадо, где-то легион, не совсем понятно. Но концепция всегда простая. Все начинается с маленького простенького патчика к Многосерчу, а потом 15 лет этой херней занимаешься.
Берешь документы, разваливаешь их на ключевые слова. И просто взять и развалить документ на ключевые слова «мама, мыла, раму» – это ты не далеко ушел от grep’а, потому что потом все равно эти ключевые слова перебирать. Надо строить некую спец. структуру – полнотекстовый индекс. Вариантов для его построения человечество придумало в свое время довольно много, но, слава Богу, от всех отказалось и в нормальных продакшн системах, по большому счету, победил на данный момент вариант ровно один. Про него и буду рассказывать. Все остальные имеют скорее историческое значение, что ли, и практического интереса не представляют.
Читать полностью »
Разрабатываем систему real-time fulltext-поиска по error-логам на основе ClickHouse от Яндекса
2016-07-02 в 17:03, admin, рубрики: clickhouse, docker, docker он везде, open source, sphinx, полнотекстовый поиск, Программирование, Разработка под Linux, метки: clickhouse, полнотекстовый поискВ этой статье я расскажу о том, как разработать систему для индексирования и полнотекстового поиска error-логов (или любых других логов) на основе СУБД от Яндекса под названием ClickHouse. Про саму базу Яндекс писал на Хабре сначала когда база была закрытой, а потом когда они её заопенсорсили. База данных в первую очередь предназначена для аналитики и для реализации сервиса Яндекс.Метрика, но может на самом использоваться для чего угодно, если вам подходит загружать данные пачками, удалять их тоже огромными пачками и никогда не обновлять отдельные строки.
Что мы будем делать
Мы будем реализовывать систему для индексирования и поиска по error-логам. При этом, считается, что сами логи вы уже сумели доставить на центральный сервер (или несколько серверов) и уже засунули сами тексты сообщений в базу, то есть у вас уже есть таблица в какой-нибудь базе данных примерно следующего вида:
CREATE TABLE Messages (
message_id BIGINT PRIMARY KEY AUTO_INCREMENT,
created_ts DATETIME,
message_text BLOB
)
Мы научимся быстро отдавать результаты поиска по такому логу (то есть, всегда отсортированные по времени) и индексировать его в режиме реального времени.
Встреча разработчиков про Sphinx, 18 июня (суббота)
2016-06-09 в 10:48, admin, рубрики: sphinx, а почему не моднейший elastic, когда уже 3.0, хватит ли пиццы на всех, метки: а почему не моднейший elastic, когда уже 3.0, хватит ли пиццы на всех
С прошлого митапа про Sphinx прошло уже больше года, так что самое время собраться снова. 18 июня состоится второй SphinxSearch meetup, территориально снова в Avito, регистрируйтесь и присоединяйтесь! Что-то интересное обещают порассказывать Avito, Ozon.ru и Нетология, ну и я тоже буду присутствовать, участвовать и состоять. Опять же пицца, кофе, печеньки. Под катом чуть подробнее о докладчиках и программе. Ну — и куда в точности приходить тоже там!!!
Читать полностью »
Devconf 2016: Интервью с разработчиком SphinxSearch
2016-06-08 в 10:28, admin, рубрики: 3d графика, devconf, devconf 2016, game development, sphinx, sphinxsearch, Блог компании DevConf, Программирование, разработка игр
Мы любим делать интервью с нашими докладчиками. На этот раз — интервью с Андреем shodan Аксеновым, создателем поискового движка SphinxSearch(не знаю как сейчас, но раньше хабр использовал именно этот движок для поиска по сайту) и, как оказалось, еще пары движков. На нашей конференции он будет рассуждать на извечную тему: Devs vs CTO vs CEO. Само интервью вышло довольно интересным. Андрей честно и откровенно ответил на вопросы, за что ему большой респект :)
Я тебя знаю как разработчика Sphinxsearch, но, как показывает твоя краткая биография, которую ты дал в описании доклада, похоже компьютерная графика — твоя главная страсть?
Все одновременно проще и сложнее, какой-то главной мегастрасти нету :) Есть сколько-то интересные области, есть безразличные. Делать всякий низкий уровень, типа поискового движка, 3D игры, обработки видеозахвата, крохотного недогипервизора (V8086), патчить MySQL или ядро операционки, писать спецмодули к Апачику, улучшать известный алгоритм сжатия или даже просто ковыряться с особо толстыми и тормозными SQL запросами — все это бывает довольно интересно (а бывает нет! но чаще интересно). А вот рисовать формочки для GUI, неважно, на моднейшем Node.js или дохлом Delphi, или там править унылые отчеты в 1C — таки не очень. Говорю по личному опыту, тк. в какой-то мере занимался всем вышеперечисленным и еще всяким.
Читать полностью »
Собираем базу аудиокниг для удобной фильтрации
2016-05-14 в 18:40, admin, рубрики: phantomjs, pymorphy2, python, selenium, sphinx, аудиокниги, Программирование, Разработка веб-сайтовВсем привет! Наверняка многим из вас знакома проблема уставших глаз из-за длительной работой за компьютером. К сожалению, из-за этого приходится ограничивать себя в других занятиях. Одним из них есть чтение книг. В связи с этим, я уже более 5 лет почти каждый день слушаю аудиокниги. За это время научился параллельно заниматься чем-то и вникать в суть озвучки. Сейчас я даже в спортзале слушаю книги! Представьте как это удобно: час дороги пешком туда и обратно + полтора часа упражнений. Средняя книга в районе 10-15 часов записи.
Со временем все чаще и чаще появлялась проблема выбора материала. Ведь довольно большую роль играет чтец, жанр книги. Часто возникает ситуация, когда кто-то советует книгу (или в той же статье на хабре в читальном зале), а аудио-версии банально нет еще. Все эти проблемы я попытался решить отдельным сайтом. Сейчас есть парочка довольно больших и раскрученных по аудиокнигам, где вы можете прямо онлайн слушать их. Такие сайты обладают достаточно слабым фильтром по книгам. И, по сути, являются чисто каталогом.

Источник информации
За все время я заметил, что рутрекер является одним из самых масштабных хранилищ аудиокниг. Если книга существует в таком формате, то почти наверняка она есть в раздачах. Многие чтецы даже вручную делают релизы торрентов. Первым заданием было полной синхронизацией всех доступных аудиокниг с рутрекера.
Выбор книги
Следующей целью было создание широкого фильтра для подбора книги. Удобные фильтры помогут сменить подход к выбору книги. Если раньше вы просто находили себе вариант, а потом искали его аудиокнигу (которой могло не оказаться), то теперь вы исключаете первый пункт и ищете в базе максимально всех существующих книг. Конкретно сейчас у меня получилось сделать следующий набор фильтров:
- Семантический глобальный поиск по всей базе по всем текстовым полям
- Сортировка (asc/desc) по дате создания торрента, количеству просмотров (на сайте), рейтингу (из внешних источников), количество загрузок (по данным рутрекера), ну и наугад
- Фильтр по автору произведения, автору озвучки, жанрам, и возможность исключить книги, которые вы отметили как «прочитанное»
- Возможность подписки на авторов книг или озвучки. Да-да! Вы можете выбрать понравившегося исполнителя и подписаться на все его обновления. Я, например, мониторю все книги Игоря Князева