SDCast #123: в гостях Иван Муратов, технический директор ПМК, активист Краснодарского ИТ сообщества

Встречайте 123-й выпуск подкаста, в котором у меня в гостях Иван Муратов, технический директор Первой Мониторинговой Компании в Краснодаре, активист Краснодарского ИТ сообщества и основатель бэкенд-митапа.

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

Поговорили про Internet of Things в общем и в контексте сбора данных с автотранспорта в частности. Обсудили способы хранения сообщений с датчиков в time-series базах данных и не только. Отдельно Ваня подробно рассказал про использование TimescaleDB и PostgreSQL, как они работают, как устроено хранение, партиции и запросы.

Так же мы поговорили про конференции и сообщество. Ваня рассказал как зараждалось Краснодарское айти-сообщество, про конференции «Krasnodar Dev Days», их принципы, подходы и организацию.

Читать далее

SDCast #114: в гостях Александр Кукушкин, database инженер в Zalando

Встречайте 114-й выпуск подкаста! У меня в гостях Александр Кукушкин, database инженер в Zalando. Хотя, наверное, многие знают его как разработчика Patroni: A Template for PostgreSQL HA with ZooKeeper, etcd or Consul. Так что речь в этом выпуске пойдёт про PostgreSQL, кластеры, Patroni, облака, AWS, Kubernetes и даже про базы данных PostgreSQL в K8S :)

В начале выпуска Саша рассказал про переезд в Германию, насколько это было сложно и как прошло. Дальше Саша рассказал про компанию в целом, как давно он там работает и чем занимается.

Мы обсудили как устроена инфраструктура в компании в части баз данных, какие есть кластеры, их примерное количество и размеры. Саша рассказал про репликацию и резервирование данных внутри и между датацентрами.

Обсудили переезд сервисов и баз данных в облака: Саша рассказал как они переводили серверы баз данных в AWS, какие были потребности в отказоустойчивости и чем эти потребности закрывались. Именно тогда на свет появился Patroni.

Саша рассказал про устройство Patroni, как он работает и что умеет. Рассказал про его развитие, добавление новых фич, таких как управление конфигурацией PostgreSQL сервера, синхронизация конфигов. Рассказал про различные варианты использования DCS (distributed configuration store) и как он адаптировал Patroni для работы в кластере Kubernetes с минимальными накладными расходами.

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

Читать далее

SDCast #94 HL Edition: Алексей Лесовский и Виктор Егоров из Data Egret

Друзья, рад представить вам интервью с Алексеем Лесовским и Виктором Егоровым из компании Data Egret, записанное на прошедшей конференции Highload++ 2018.

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

Мы обсудили типичные ошибки при проектировании база данных, которые допускают разработчики систем, обсудили типичные ошибки администраторов баз данных, углубились в различные технические аспекты работы PostgreSQL, такие как взаимодействие с дисками, Direct I/O и прочее.

Подискутировали на тему кластеров, отказоустойчивости и безопасности систем, вспомнили различные вспомогательные инструменты для работы с PostgreSQL, такие как прокси-серверы, инструменты бэкап/рестора.

В завершении выпуска обсудили последние нововведения в 11-й версии PostgreSQL и что может появится нового и интересного в 12-й версии базы данных.

Читать далее

SDCast #92: в гостях Илья Космодемьянский, один из основателей и директор компании Data Egret

Встречайте 92-й выпуск SDCast’а! У меня в гостях Илья Космодемьянский, один из основателей и директор компании Data Egret. Илья является активным участником сообщества PostgreSQL, он регулярно выступает на различных конференциях как с довольно сложными техническими докладами о внутренностях PostgreSQL, так и с докладами про soft skills, получение опыта и знаний в области баз данных.

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

Подискутировали о том, какое влияние на классические RDBMS оказали такие новые (и уже не очень) веяния, как noSQL и newSQL. Обсудили, как различные БД и PostgreSQL в частности адаптируются под новые требования к надёжности, масштабируемости, отказоустойчивости.

Посмотрели в ретроспективе на развитие PostgreSQL, вспомнили что с ним было 10−15 лет назад, когда MySQL был на коне, и какое место PostgreSQL занимает сейчас, как изменился процесс разработки и что происходит в проекте сейчас.

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

Читать далее

SDCast #72: в гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM

sd-podcast-logoРад представить вам 72-й выпуск SDCast’а! У меня в гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM. В этом выпуске мы с Ильясом обсуждаем различные аспекты разработки, начиная от технических составляющих и заканчивая различными “soft skills” темами.

В начале Ильяс рассказал про проект retailCRM, как он появился, какие решает задачи, как устроен и работает. Обсудили мы архитектуру проекта и используемые технологии. Под капотом проекта используются: PHP/Symfony/Doctrine, PostgreSQL, Redis, сервисы на Python и Go и много чего ещё.

RetailCRM — это SaaS с большим количеством пользователей, где под пользователями понимается не конкретный человек, а целая компания, использующая retailCRM, внутри которой уже работает некоторое количество человек-пользователей. Сейчас сервис используют порядка 5000 магазинов, то есть пользователей-компаний, 30 млн хитов в сутки.

Ильяс рассказал, как они организуют хранение разных пользователей-компаний в базе данных и как организована работа бэкенда с этими данными. Забегая вперёд скажу, что retailCRM — это по большому счёту монолит на PHP/Symfony, где каждый пользователь-компания живёт на своём поддомене, однако все запросы обрабатываются этим самым монолитным приложением, а данные каждого пользователя-компании — это отдельная схема в базе данных PostgreSQL.

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

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

Читать далее

SDCast #48: в гостях Михаил Тюрин, главный системный архитектор AVITO.ru

sd-podcast-logo Рад представить вам 48-й выпуск SDCast’а! У меня в гостях Михаил Тюрин, главный системный архитектор AVITO.ru. В этом выпуске речь идет об архитектуре AVITO в целом, как оно работает изнутри и на каких технологиях базируется.

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

Мы довольно подробно разобрали, как система обрабатывает запрос, начиная от нажатия кнопки «Submit» в браузере, что происходит с данными запроса в бэкенде, какие сервисы участвуют в обработке, в какие очереди раскладываются задачи и заканчивая тем, каким образом обновляются данные во всей системе для других пользователей.

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

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

Миша является активным участником сообщества #PostgreSQLRussia, он сам активно выступает на разных конференциях и встречах, равно как и ребята из его команды, так что мы пообщались и на эту тему тоже.

Читать далее

SDCast #43: в гостях Николай Сивко, сооснователь проекта OKMeter.io

sd-podcast-logo Встречайте 43-й выпуск подкаста! На этот раз речь пойдет о devops, эксплуатации и мониторинге. У меня в гостях Николай Сивко, сооснователь проекта OKMeter.io.

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

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

Далее Николай рассказал о том, как устроен сам сервис OKMeter.io, какова его архитектура, из каких компонентов он состоит и какие инструменты используются «под капотом». Рассказал, как и какие метрики собираются, обрабатываются, хранятся и в дальнейшем используются для построения графиков и гистограм. Отдельно обсудили тему отказоустойчивости и масштабирования решения по мониторингу.

Читать далее

SDCast #36: в гостях Дмитрий Павлов, администратор хранилищ данных банка Тинькофф

sd-podcast-logo Рад представить вам первый выпуск 2016 года, за номером 36. У меня в гостях Дмитрий Павлов, администратор хранилищ данных банка Тинькофф. В этом выпуске речь идет про хранилища данных, чем они отличаются от просто баз данных, какими отличительными возможностями они обладают, для какой нагрузки они предназначены по сравнению с RDBMS.

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

Хранилище данных базируется на БД GreenPlum, которая, в свою очередь, базируется на PostgreSQL, из которых построено несколько кластеров, так же GreenPlum интегрирован с Hadoop и Informatica BDE, в которых производятся расчеты, а мониторится это все с помощью Graphite/Grafana/Cabot.

Читать далее

SDCast #33: в гостях Николай Самохвалов, сооснователь сообщества PostgreSQL в России.

sd-podcast-logo Рад представить вам 33-й выпуск SDCast’а. В этот раз у меня в гостях Николай Самохвалов, сооснователь и активист сообщества PostgreSQL в России. В этом выпуске мы обсуждаем базы данных в целом, говорим про RDBMS и noSQL решения, архитектуру построения приложений с использованием баз данных, обсуждаем разные технические возможности взаимодействия и использования баз данных.

Много говорим о базе данных PostgreSQL, её возможностях, смежных проектах, сообществе разработчиков вокруг нее. Николай рассказал про разные интересные Open source инструменты для работы с Postgres, настройке и расширении штатного функционала.

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

В свете последних событий и общей геополитической обстановки, обсудили мы и тему «импортозамещения». Кстати, эта очень актуальная тема и на встречах PostgreSQL сообщества регулярно появляются доклады про опыт перехода на Postgres c каких-либо других СУБД.

Читать далее