Всем привет! Меня зовут Дмитрий Листвин, я занимаюсь аналитическим хранилищем данных в Авито. В этой статье я собрал наш опыт построения Lakehouse поверх объектного хранилища, как реальная аналитическая нагрузка быстро превращает «обычный S3» в самый капризный элемент всей архитектуры. Будет много про извлечение максимума производительности из Ceph: как добиться высокой пропускной способности HDD, когда поверх данных хочется запускать тяжёлые аналитические запросы. Читать далее
Это первая статья о том, как идея проходит путь от прототипа до полноценного продукта — с участием архитектуры на каждом шагу. Формат — ADR (Architecture Decision Records): каждое решение зафиксировано по дням, чтобы показать реальную эволюцию проекта. Продукт вымышленный, проблемы — настоящие. Те самые, с которыми сталкиваются архитекторы и команды. Документация и код — в открытом доступе на GitHub. Читать далее
Данная статья была написана и впервые опубликована осенью 2023 года. В ней разбираются мифы о свободном программном обеспечении и критикуются аргументы любителей проприетарного ПО. За прошедшее время статья нисколько не потеряла своей актуальности. Наоборот, представления о…
Меня всегда восхищало то, как мы измеряем продуктивность - как мы относимся к времени, будто это валюта, которую нужно потратить, оптимизировать или пустить на ветер. Но чем больше я наблюдаю за тем, как на самом деле функционируют организации, тем яснее вижу, что наша одержимость
Информационный парадокс чёрных дыр обычно формулируется как вопрос о том, куда исчезает информация при коллапсе материи и последующем испарении дыры. В этой статье предлагается другой взгляд на проблему: возможно, информация никуда не обязана «возвращаться», потому что она и…
IT-специалистам на заводах РФ посвящается. Создаю контраст в противопоставление статьям Сибура про работу в IT на заводах Читать далее
Эти станции так и не стали лицом Московского метрополитена. Подземка 90-х, лужковское метро – о нём не пишут в путеводителях, по нему не водят экскурсии. И зря! Рождённая на переломе эпох Люблинская линия сполна хлебнула хаоса, безденежья, безнадёги… и настоящего героизма, о…
Привет, Хабр! Меня зовут Андрей Слесаренко — frontend‑разработчик с опытом работы более 8 лет. Прошёл путь от джуна до тимлида, работал над разными высоко‑нагруженными проектами. В начале этого года начал активно использовать LLM‑агентов в повседневной…
Когда сервер завис или система не грузится, обычный удалённый доступ уже бесполезен. Нужен способ увидеть, что происходит прямо «на экране» машины, и управлять ею, будто сидишь перед ней с клавиатурой и мышью. Для этого и существует IP-KVM — коробочка, которая передаёт видео и…
Dependency Injection (DI) — это популярный механизм внедрения зависимостей, который идеально соответствует принципам SOLID (Dependency Inversion Principle). В .NET использование DI (Microsoft.Extensions.DependencyInjection) стало стандартом де-факто.Однако у DI есть важный недостаток: при создании корневого объекта (например,…