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

ClickHouse: сценарии, сильные стороны, лучшие практики работы в 2026 году

Время на прочтение9 мин
Охват и читатели11K

ClickHouse — один из самых востребованных инструментов для хранения и анализа больших объемов данных, обеспечивающий высокую производительность и наблюдаемость сервисов и приложений. Благодаря этим параметрам многие компании внедряют его в свои ИТ-инфраструктуры для решения задач аналитики, логирования и мониторинга. Однако, несмотря на широкое распространение, практика показывает, что далеко не все команды до конца осознают все особенности и нюансы работы с этой системой, что может приводить к неэффективному использованию ресурсов, ошибкам в проектировании и снижению общей производительности. 

Привет, Хабр. Меня зовут Александр Кривяков. Я пресейл-архитектор VK Data Platform, VK Tech. В этой статье я расскажу об основных принципах работы ClickHouse, а также покажу возможные архитектурные решения и типичные сценарии применения системы.

Читать далее

Новости

Сериализация one-nio: от истоков к поддержке JDK 25

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели10K

Привет, Хабр! В этой статье я расскажу об эволюции подсистемы сериализации one-nio — фреймворка для создания высоконагруженных сервисов, работающего в Одноклассниках с 2012 года. Прошлой осенью я работал над обновлением подсистемы и добавил в нее новый режим работы, совместимый с актуальными версиями JDK.

Ситуация, с которой мы столкнулись, довольно прозаична. Библиотеке больше десяти лет, и экстремально быстрая сериализация (превращение объекта в последовательность байтов и обратно) с самого начала строилась в ней на внутренних лазейках JVM, к которым обычный прикладной код доступа не имеет. Когда one-nio только писали, это был стандартный паттерн для высоконагруженных фреймворков.

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

Под катом я расскажу, зачем вообще понадобился еще один фреймворк сериализации и как он устроен, на чём держался старый режим, почему его пришлось менять, что получилось по бенчмаркам и куда движется платформа JVM.

Читать далее

Как мы ускорили разметку видеопоиска в десятки раз и не потеряли качество: опыт внедрения VLM-асессора

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели11K

Современный поиск по видеоконтенту — это высоконагруженная система, требующая молниеносной реакции и безупречной релевантности. Сервис VK Видео оперирует колоссальной базой в 500 миллионов видеороликов и ежедневно обрабатывает около 10 миллионов запросов пользователей. При времени ответа в 0,5 секунды и нагрузке в 1800 RPS алгоритмам необходимо моментально находить именно тот контент, который ожидает увидеть зритель. Однако развитие алгоритмов ранжирования невозможно без качественных данных, на которых они обучаются. 

Традиционный подход с использованием ручной разметки асессорами долгое время оставался индустриальным стандартом, но на масштабах сотен тысяч видео он неизбежно становится бутылочным горлышком продуктовой разработки.

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

Переходим к VLM-системе

Контекстное обучение пользователей в интерфейсах: как фокусировка растит метрики продукта

Время на прочтение9 мин
Охват и читатели8.8K

Всем привет! Мы — команда Облака Mail: редактор Наташа, дизайнер Саша и исследователь Лена.

Мы вместе работаем над улучшением сервисов Mail: проводим исследования пользовательского опыта, много дискаверим, проверяем гипотезы, проектируем интерфейсы и пишем тексты, которые помогают пользователям лучше ориентироваться в продукте.

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

Читать далее

Два в одном: шумоподавление и дереверберация в реальном времени

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели3.2K

Привет, Хабр! Меня зовут Захар Кондауров. Сегодня я хочу поделиться опытом разработки легковесной real-time модели шумоподавления и дереверберации, над которой я работал в рамках проектов Инженерно-математической школы НИУ ВШЭ и VK под руководством Ивана Бескровного, руководителя команды звуковых технологий VK Видео.

Большинство исследований в speech enhancement часто ограничиваются только шумоподавлением, хотя современные архитектуры потенциально позволяют решать более продвинутые задачи, например, совместное шумоподавление и дереверберацию. Это обусловлено тем, что бенчмарков, ориентированных на шумоподавление, значительно больше, чем на другие искажения аудиосигнала, как и моделей для сравнения. Кроме того, далеко не все решения обучены на full-band аудио с частотой дискретизации 48 кГц, в основном только на 16 кГц — это сильно уменьшает диапазон частот в аудиосигнале.

Модель, которая одновременно подавляет шум и выполняет дереверберацию для full-band аудио, позволит устройствам с ограниченным количеством ресурсов обрабатывать речевой сигнал локально, уменьшая нагрузку на серверы и задержку ответа системы. Зачастую задачи шумоподавления и дереверберации решают последовательно разными нейронными сетями. Универсальная модель уменьшит количество используемой памяти и время обработки сигнала.

Перейдем к эксперименту

Каталог данных: что нужно знать, прежде чем начинать внедрение

Время на прочтение7 мин
Охват и читатели8.3K

Объем данных в компаниях постоянно растет, и это вынуждает бизнес и ИТ-специалистов перестраивать ИТ-ландшафт, чтобы упростить поиск, понимание и использование информации. В качестве одного из компонентов подобных модернизированных реализаций нередко рассматривают дата-каталог, который помогает навести порядок в метаданных и сделать данные более доступными. 

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

Меня зовут Сергей Петриченко. Я продуктовый менеджер VK Data Platform. В этой статье разберем, почему каталог — это не первый шаг к порядку, а скорее мультипликатор уже существующей зрелости и что необходимо сделать, чтобы его внедрение принесло реальную пользу.

Читать далее

Как создавали нейропоиск Discovery AI — технологию для крупнейшей контентной базы в РФ

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели11K

Привет! Меня зовут Евгений Астафуров, я ведущий разработчик в Отделе экспериментальных технологий AI VK. Мы разрабатываем Discovery AI — набор ИИ‑технологий для интеллектуального поиска, рекомендаций и взаимодействия с контентом. В него вошли нейропоиск, анализ контекста, персонализация, генеративные модели и рекомендательные алгоритмы, чтобы помогать пользователям находить нужную информацию, получать релевантные ответы и новый контент.

В этой статье подробно разберу архитектуру технологии нейропоиска в Discovery AI, которая объединяет большую языковую модель (LLM), поиск, инференс и данные многомиллиардной контентной базы VK. Технология становится важным компонентом развития рекомендательных и поисковых систем в наших продуктах и будет поэтапно внедряться в сервисы для пользователей, авторов и бизнеса (Дзен, VK, Медиапроекты Mail, VK Видео и другие). 

Нейропоиск

GPU vs vGPU: что выбирать для быстрого запуска AI-сценариев и контроля над данными

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели6.5K

Привет, Хабр. Меня зовут Дмитрий Сергеев. Я менеджер продукта «виртуальные серверы» (GPU) в компании VK Tech.

Одна из ключевых проблем внедрения нейросетей в бизнес — отсутствие подготовленной ИТ-инфраструктуры. Почти всегда приходится разбираться, какая из тысяч моделей подойдет для задачи и будет учитывать специфику и процессы бизнеса. Часто это становится дорогим занятием без предсказуемого результата.

В этой статье я на примере сервисов VK Cloud разберу, в каких сценариях востребованы физические GPU, а также где и как их можно эффективно заменить с помощью vGPU, чтобы оптимизировать бюджет и сэкономить на аренде полного объема ресурсов.

Читать далее

Почему перформанс и перегруз — не синонимы, или Как отличать эффективную работу от управленческого «героизма»

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели9.2K

Привет, Хабр! На связи Нина Андреянова из ВКонтакте, я занимаюсь реализацией больших кросс-командных проектов последние пять лет. Недавно я рассказывала про назначение тимлидом контрибьютора (спасибо за ваш интерес к статье!). Сегодня я пришла поделиться с вами ещё одной темой: высокая продуктивность команды и как руководители иногда её ломают. За годы работы в разных корпорациях я поняла одну неприятную управленческую правду: фраза «давайте ещё немного поднажмём» звучит вдохновляюще… ровно до того момента, пока ты не слышишь её третий квартал подряд. Если эта фраза звучит в команде регулярно, то, вероятнее всего, вы уже не ускоряетесь. Вы просто медленно тратите ресурс, который не восстанавливается.

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

Перейти к разбору

Как мы тестировали Tarantool Database на 640 инстансов

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели11K

Привет, Хабр! Меня зовут Андрей Орлов, я QA‑инженер в команде Tarantool Database, VK Tech. Я занимаюсь функциональным тестированием: проверяю новые фичи и изменения, поддерживаю и развиваю автотесты, разбираю инциденты, анализирую логи и метрики. Нагрузочное тестирование и стресс‑тестирование тоже входит в мои задачи — в том числе для проверки поведения Tarantool Database на больших конфигурациях. В этой статье я расскажу, как мы организовали и провели тестирование Tarantool Database на 640 инстансах, какие подходы и инструменты использовали и какие выводы сделали.

Читать далее

Внутри метастора S3 в One-cloud

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели6.8K

Как мы пришли к локальному скану, фильтру Блума и переезду очереди на Kafka — и почему это всё случилось 

Привет, Хабр. Я Данил Кислов, разработчик команды хранилищ. У нас в One-cloud (внутренняя корпоративная облачная платформа) лежит собственная S3-совместимая реализация — one-object-storage. Хочу рассказать, как эволюционировал метастор S3— та часть, что отвечает за метаданные объектов: списки версий, индексы, настройки бакетов и прочую служебную мелочь.

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

Разбираем эволюцию метастора

Легаси-ОС как тормоз виртуализации: что меняет современный стек РЕД ОС в VK Cloud

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели9.6K

Представьте гиперноду облака. Гипернода — это физический сервер с запущенным гипервизором, на котором работают виртуальные машины клиентов. Под дисками этих машин лежит программно определяемое хранилище Ceph: распределенная система, где данные размазаны по многим серверам с копиями, без отдельного дискового массива. Меняем на ноде одну переменную — операционную систему. Виртуальные машины не пересобираем, кластер хранения не трогаем, диски и сеть те же. Ни одной новой железки, ни строчки нового кода в приложении. После переключения дисковая подсистема ВМ ведет себя ощутимо иначе.

VK Cloud активно использует РЕД ОС от РЕД СОФТ — в том числе в VK Secure Cloud, аттестованном контуре для значимых объектов критической информационной инфраструктуры (ЗОКИИ). На ее примере покажу, как поднять производительность гипервизора, просто обновив легаси и не трогая железо. Вместе с дистрибутивом на ноду приезжает свежий стек целиком: ядро, эмулятор, клиент хранилища, системные библиотеки. Каждый слой подтягивает свой кусок. А для тех, кто застрял на CentOS, ушедшем в EOL, у истории есть вторая часть: обновление закрывает технический разрыв и регуляторику одним движением. Ниже разберу механику по слоям с командами, которые можно выполнить на своей системе.

Читать далее

PostgreSQL не тормозит. Почему мы перестали масштабировать базу данных и начали масштабировать архитектуру

Время на прочтение8 мин
Охват и читатели20K

Каждый раз, когда в компании возникают проблемы с производительностью PostgreSQL, обсуждение обычно идет по одному и тому же сценарию.

Сначала DBA оптимизируют запросы. Потом появляются новые индексы. Потом увеличивается размер серверов. Затем появляются реплики. Потом еще реплики. И через некоторое время выясняется, что значительная часть бюджета на инфраструктуру уходит на обслуживание системы, которая изначально должна была просто хранить данные.

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

Читать далее

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

Tarantool DataBase и Kafka: событийная архитектура без лишних слоев

Время на прочтение9 мин
Охват и читатели9.1K

Привет, Хабр. Меня зовут Сергей Фомин. Я старший менеджер продукта Tarantool DataBase

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

Читать далее

Применение Kotlin DSL в TeamCity для автоматизации пайплайнов: кейс команды ВКонтакте

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели10K

Привет, Хабр. Меня зовут Василий Щитов. Я старший инженер в команде CI-инфраструктуры ВКонтакте. 

Когда в компании десятки проектов и сотни сборок, ручное управление конфигурациями через UI быстро превращается в хаос. Внести однотипное изменение во все пайплайны, отследить историю правок или быстро развернуть окружение на новом инстансе TeamCity становится нетривиальной задачей. Можно превратить этот хаос в упорядоченную структуру, если описать конфигурацию как код с помощью Kotlin DSL. Но далеко не все понимают, как работать с Kotlin DSL для решения своих задач.

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

Разбираемся с TeamCity под катом

Как Data Fabric и HTAP превращают сырые данные в бизнес-события для мгновенной аналитики

Время на прочтение8 мин
Охват и читатели8.3K

Долгое время главным критерием качества данных считалась их чистота и полнота. Компании инвестировали значительные ресурсы в MDM-системы и процессы проверки, стремясь получить «единую версию правды». Однако сегодня этого уже недостаточно. В условиях, когда скорость реакции определяет успех, на первый план выходит новый критерий — актуальность. Способность данных отражать реальное положение дел в момент принятия решения становится решающим фактором. При этом классические архитектуры, основанные на ночных загрузках в DWH, создают временной лаг, который превращает «правду» во «вчерашнюю». 

Привет, Хабр. Меня зовут Александр Шалудин. Я Presale-архитектор Data Services VK Tech. В этой статье я разберу, к чему может приводить работа с неактуальной информацией и как выстроить архитектуру, которая позволит устранить этот разрыв.

Из-за высокой конкуренции и сопутствующих вызовов многие компании стремятся стать Data-Driven, то есть принимать решения, основываясь на данных, чтобы сохранять конкурентоспособность, быстро реагировать на тренды и взвешенно оценивать бизнес-процессы.

Однако точность этих решений напрямую зависит не только от качества информации, но и от ее актуальности и доступности в нужный момент.

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

Читать далее

Непридуманная история о том, как мы перетащили 300 ТБ key-value данных в облако без простоя

Уровень сложностиСложный
Время на прочтение12 мин
Охват и читатели11K

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

Это не столько рассказ о самих технологиях, сколько попытка частичной систематизации нашего опыта работы со сложными системами. Этим опытом нам хотелось бы поделиться с читателями Хабра, и надеемся, что он покажется вам полезным.

Приступим к конвергенции

Может ли Service сломать ваш K8s кластер?

Уровень сложностиСредний
Время на прочтение37 мин
Охват и читатели10K

Привет, Хабр! Меня зовут Михаил, я backend-разработчик в команде Managed Kubernetes в VK Cloud. При работе с K8s всем нам приходится сталкиваться с множеством конфигураций, которые мы используем постоянно, и Service не является исключением. И вот тут мне стало любопытно: а может ли с виду безобидный конфиг Service сломать нам весь кластер? Ну или хотя бы подпортить жизнь какому-то сервису?

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

Статья будет полезна DevOps, безопасникам, админам и просто юным любителям Kubernetes. 

Читать далее

О версионировании в S3 в деталях: разбор от команды VK Object Storage

Время на прочтение11 мин
Охват и читатели8.7K

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

Но чтобы раскрыть весь потенциал этой функции и грамотно встроить ее в рабочие процессы, важно понимать, как она устроена. 

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

Читать далее

Как строить отказоустойчивые кластеры Kubernetes: краткий разбор от команды VK Cloud

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели9K

Миграция в облако и переход к микросервисной архитектуре сделали Kubernetes (k8s) де-факто стандартом для управления контейнерами. По данным 2025 года, технологию уже применяют 60% крупных российских компаний, а ещё 15% планируют внедрение в будущем. Причем 59% компаний называют отказоустойчивость ключевым критерием при выборе Kubernetes, но лишь единицы реализуют его на практике. Проблема кроется в недооценке системных рисков — от отсутствия резервирования control plane до некорректных таймингов readiness-проб, пропускающих «полуживые» поды в балансировщик.

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

Читать далее
1
23 ...