#статья дня
Все, наверное, знают о том, что существует поведенческий таргетинг — который определяет, какая реклама вам больше интересна.
И под капотом такой системы — полноценная big data-инфраструктура: события пишутся в логи, проходят обработку и попадают в key-value хранилище, откуда их читает рантайм показа рекламы.
Причем система должна работать так надежно, чтобы каждое событие обработалось ровно один раз (exactly-once), и так быстро, чтобы уложиться в миллисекунды на весь цикл.
Как этого добиться — рассказал в статье Руслан Савченко, разработчик динамических таблиц YTsaurus: https://habr.com/ru/companies/yandex/articles/939078/
Из интересного:
— События шардируются по хешу идентификатора. Это гарантирует, что все события одного пользователя обрабатываются одним воркером в рамках локальной транзакции.
— Дошли до низкоуровневой оптимизации аллокатора памяти и работы с ядром Linux, чтобы убрать провалы на высоких перцентилях.
— Вместо перезаписи всего protobuf-профиля система пишет бинарные дельты (через xdelta). Агрегатные колонки накладывают все накопившиеся дельты на оригинальный protobuf — получаем актуальную версию объекта
Все решения, на самом деле, можно применять не только к профилям. Прикольно, что в статье куча графиков — помогают разобраться. Советую почитать на досуге
#highload #db #database
Все, наверное, знают о том, что существует поведенческий таргетинг — который определяет, какая реклама вам больше интересна.
И под капотом такой системы — полноценная big data-инфраструктура: события пишутся в логи, проходят обработку и попадают в key-value хранилище, откуда их читает рантайм показа рекламы.
Причем система должна работать так надежно, чтобы каждое событие обработалось ровно один раз (exactly-once), и так быстро, чтобы уложиться в миллисекунды на весь цикл.
Как этого добиться — рассказал в статье Руслан Савченко, разработчик динамических таблиц YTsaurus: https://habr.com/ru/companies/yandex/articles/939078/
Из интересного:
— События шардируются по хешу идентификатора. Это гарантирует, что все события одного пользователя обрабатываются одним воркером в рамках локальной транзакции.
— Дошли до низкоуровневой оптимизации аллокатора памяти и работы с ядром Linux, чтобы убрать провалы на высоких перцентилях.
— Вместо перезаписи всего protobuf-профиля система пишет бинарные дельты (через xdelta). Агрегатные колонки накладывают все накопившиеся дельты на оригинальный protobuf — получаем актуальную версию объекта
Все решения, на самом деле, можно применять не только к профилям. Прикольно, что в статье куча графиков — помогают разобраться. Советую почитать на досуге
#highload #db #database
❤4👍4🫡3
This media is not supported in your browser
VIEW IN TELEGRAM
#статья дня
А нет такого, что новые технологии фронтенда нет смысла изучать, пока их не разжуют Шадид, Комо или Вес Бос? :)
Не, ну серьёзно. Вот читаешь ты блоги разработчиков Хрома или, простите, Вебкита. Что получаешь?
Получаешь нечто слишком рано, слишком мало, слишком сухо и сложно. Ну, буквально, посмотрите на статью про якорное позиционирование в блоге WebKit aka Safari: https://webkit.org/blog/17240/a-gentle-introduction-to-anchor-positioning/
A gentle introduction... куда уж более gentle: ни одного интерактивного примера, код минимален.
И тут давайте Шадида возьмём, буквально утром сегодня выпустил: https://ishadeed.com/article/anchor-positioning/
Уже начиная с шапки становится понятно о чём речь!
Каждый пример как всегда снабжён интерактивом, а если браузер не поддерживает пока якоря — всегда есть переключатель на видео.
Как всегда, глубокое почтение Шадиду за работу и рекомендация к прочтению! Якоря — уже не за горами, как минимум, можно заполифиллить.
#css #anchor
А нет такого, что новые технологии фронтенда нет смысла изучать, пока их не разжуют Шадид, Комо или Вес Бос? :)
Не, ну серьёзно. Вот читаешь ты блоги разработчиков Хрома или, простите, Вебкита. Что получаешь?
Получаешь нечто слишком рано, слишком мало, слишком сухо и сложно. Ну, буквально, посмотрите на статью про якорное позиционирование в блоге WebKit aka Safari: https://webkit.org/blog/17240/a-gentle-introduction-to-anchor-positioning/
A gentle introduction... куда уж более gentle: ни одного интерактивного примера, код минимален.
И тут давайте Шадида возьмём, буквально утром сегодня выпустил: https://ishadeed.com/article/anchor-positioning/
Уже начиная с шапки становится понятно о чём речь!
Каждый пример как всегда снабжён интерактивом, а если браузер не поддерживает пока якоря — всегда есть переключатель на видео.
Как всегда, глубокое почтение Шадиду за работу и рекомендация к прочтению! Якоря — уже не за горами, как минимум, можно заполифиллить.
#css #anchor
👍12❤3🤩2👎1
Будни разработчика
#фишка дня Сидишь такой и не вдупляешь, что происходит в пулл или мёрдж-реквесте? GitHub и GitLab соответственно Или, возможно, пытаешься вспомнить, а как ты вообще задачу решил? Надо же описание внести какое-то, а в голове туман... Современный ответ:…
С полей сообщают, что добавление
А чем меньше символов — тем дешевле и быстрее обработка.
Вот бы всё можно было представить в таком виде...
P. S. На BitBucket тоже работает!
.diff
к адресу пулл-реквеста делает то же самое, но в формате .diff
, который чуть менее многословный, чем .patch
!А чем меньше символов — тем дешевле и быстрее обработка.
Вот бы всё можно было представить в таком виде...
P. S. На BitBucket тоже работает!
Wikipedia
diff
В вычислительной технике diff — утилита сравнения файлов, выводящая разницу между содержанием двух файлов. Эта программа выводит построчно изменения, сделанные в файле (для текстовых файлов). Современные реализации поддерживают также двоичные файлы. Вывод…
❤3
12 сентября в Москве пройдёт big tech night. Это как ночь музеев, только в мире IT. Формат придумали в Яндексе, а Сбер, X5, Т-Банк и Lamoda присоединились к проекту.
На одну ночь офисы компаний превратятся в фестивальные площадки, где будут доклады про технологии, иммерсивные экскурсии, квесты и IT-стендапы. Пять офисов — пять площадок с разными программами.
В программе три трека — хард-трек про всё, что связано с технологиями; софт-трек про управление командой и развитие гибких навыков. И фест-трек, где можно открыть что-то новое — сходить на алгоритмическую вечеринку, сразиться на киберспортивном турнире, поучаствовать в экскурсиях и не только.
Доклады, которые зашли мне больше всего:
«GPT-функции в Алисе: backstage»
Павел Капля, руководитель продуктовой разработки Алисы, расскажет, как в AI-ассистента внедряют агентную модель на базе function calling. Будет много инженерных нюансов про адаптацию технологии в реальных условиях и обеспечение предсказуемости поведения и надежности системы.
«Теория систем и инженерная практика»
Филипп Дельгядо, архитектор департамента из lekton.io, объяснит базовые понятия теории систем и покажет, как они помогают при проектировании современных решений. Еще будет разбор некоторых паттернов проектирования через призму системного подхода.
Я буду подключаться к онлайн-студии. Для неё планируется особая программа: интервью с Николаем Савушкиным о рекомендательных системах, разговор с Маратом Мавлютовым про автономных роботов-доставщиков, дискуссии и интерактивные форматы в духе Late Night Show.
👉 Регистрация уже открыта.
На одну ночь офисы компаний превратятся в фестивальные площадки, где будут доклады про технологии, иммерсивные экскурсии, квесты и IT-стендапы. Пять офисов — пять площадок с разными программами.
В программе три трека — хард-трек про всё, что связано с технологиями; софт-трек про управление командой и развитие гибких навыков. И фест-трек, где можно открыть что-то новое — сходить на алгоритмическую вечеринку, сразиться на киберспортивном турнире, поучаствовать в экскурсиях и не только.
Доклады, которые зашли мне больше всего:
«GPT-функции в Алисе: backstage»
Павел Капля, руководитель продуктовой разработки Алисы, расскажет, как в AI-ассистента внедряют агентную модель на базе function calling. Будет много инженерных нюансов про адаптацию технологии в реальных условиях и обеспечение предсказуемости поведения и надежности системы.
«Теория систем и инженерная практика»
Филипп Дельгядо, архитектор департамента из lekton.io, объяснит базовые понятия теории систем и покажет, как они помогают при проектировании современных решений. Еще будет разбор некоторых паттернов проектирования через призму системного подхода.
Я буду подключаться к онлайн-студии. Для неё планируется особая программа: интервью с Николаем Савушкиным о рекомендательных системах, разговор с Маратом Мавлютовым про автономных роботов-доставщиков, дискуссии и интерактивные форматы в духе Late Night Show.
👉 Регистрация уже открыта.
❤4👍2🤩2🤡1