Что нового полезно знать про базы данных?

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

В СУБД растут объемы данных и нагрузки. А это значит, что нужно держать нос по ветру и узнавать больше об инструментах и методах взаимодействия с базами данных. Чтобы этого добиться, лучше всего сходить на профильную конференцию (было бы странно, если бы мы не дали вам этот совет, правда?), или хотя бы почитать о самых актуальных проблемах области. 

Какие тренды последних лет усиливаются в PostgreSQL прямо сейчас? Как не устроить highload на ровном месте? Где почитать про мифы и реальность СУБД в облаках? Об этом и многом другом мы поговорили с Николаем Самохваловым. 

Николай — член программного комитета конференции HighLoad++, куратор секции Базы данных, а также основатель Postgres.ai и #RuPostgres.

— Чем ты занимаешься? В чем заключается твоя работа?

— Живу в Калифорнии, где развиваю свой очередной стартап — компанию Postgres.ai. Мы помогаем оптимизировать и масштабировать проекты, которые используют PostgreSQL. Среди известных клиентов: Miro.com, GitLab.com, Chewy.com — это сверхбыстро растущие бизнесы-единороги (оценка более $1 млрд). Есть компании и поменьше. Наша фишка в том, что мы не просто помогаем разово, а налаживаем автоматизированные и масштабируемые процессы. Грубо говоря, чтобы команды могли далее сами расти, используя инструменты, которые мы разработали. И центральный среди них сейчас — Database Lab. С помощью него можно клонировать базы любого размера за секунды и без траты дополнительных ресурсов: это так называемое «тонкое клонирование», основанное на CoW (copy-on-write). Оно открывает просто удивительные возможности по независимой разработке, тестированию и оптимизации SQL.

— Как давно и почему присоединился к программному комитету HighLoad++

В ПК я очень давно — практически с самого начала. Кажется, это был 2007 год— я помню еще первые встречи, на которых зарождался Highload и РИТ. Основная мотивация для меня менялась со временем. Сначала это был «фан» от общения с такими людьми как Олег Бунин или, например, Игорь Сысоев и Алексей Рыбак. После 2010-х интерес стал более прикладным: участие в ПК дает хорошее представление о том, кто, где и что делает на рынке в плане технологий. И наш долгий, нудный и въедливый процесс отбора докладов в Программном комитете на удивление помогает быть в курсе трендов.

— Каковы особенности программы конференции? Есть ли интересные фишки, которые ждут ее участников?

— Мы уже несколько раз перетрясали программу: из-за событий 2020 конференция откладывалась неоднократно. Можно сказать, что подготовке программы этой конференции уже уделено максимальное количество усилий и человеко-часов за всю историю существования серии. И наша подготовка все еще продолжается — так что программа будет еще насыщеннее, а доклады — более зрелыми.

Поделюсь личным опытом: у меня заявлен доклад «Распространенные ошибки изменения схемы базы данных PostgreSQL». Подал заявку на него я еще год назад. И если на момент подачи это был совсем свежий материал, то теперь они дозрел — я его обкатал на онлайн-митапах и зарубежных конференциях, расширил и дополнил. Как правило, программный комитет дополнительно оценивает новизну материала, и раньше мы не раз просили докладчика доработать свое выступление. И если активные докладчики уже успели обкатать свой доклад на онлайн-событиях — при  условии разных аудиторий с конференцией —  это только на пользу выступлению. 

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

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

Все больше включаются докладчики из крупных компаний. Появляются ситуации, когда доклады про коммерческие решения и закрытые системы приобретают новый смысл. Приведу пример из моей родной области, СУБД. Десять лет назад мы в ПК отчетливо видели, что доклады про Oracle и SQL Server регулярно получают почти пустые залы, а докладчики не могут предложить интересный разговор про технику, выдавая то, что слушатели окрестили «marketing bu**it». 

Но несколько лет назад я отметил, что теперь мы находимся в другой реальности: приходят технические эксперты, готовые грамотно рассказывать про тот же Oracle. Да так, что и тем, кто его не использует, очень интересно. Справедливости ради стоит отметить, что и открытые системы — я, конечно, прежде всего, о Postgres — повзрослели, стали очень активно использоваться в крупных компаниях. И изучение опыта эксплуатации Оракла и SQL Server приобретает новый смысл. Исследуя этот опыт, мы понимаем как можно было сделать еще, каких инструментов не хватает в Postgres-экосистеме, куда двигаться.

— Многие россияне уже переболели коронавирусом. Как себя чувствуют докладчики? Многие от из них переболели/привились? Или все так устали от онлайн-форматов, что не думают об этом?

— Не могу говорить за других. Я не болел, много летал (более десяти полетов с начала года), пока не прививался, но планирую в самое ближайшее время.

От онлайна я лично совсем не устал. Он с нами навсегда — его надо полюбить и развивать.  В 2007-2008 годах, когда рождались РИТ и Highload, я начал развивать PostgreSQL-сообщества в России. Мы стали регулярно собираться лично и делиться опытом. К 2014-2015 это движение — сейчас оно носит название #RuPostgres — сильно выросло, на митапы приходило до двух сотен людей. Это очень круто, собираться вживую на такие крупные события как Highload, но мы должны использовать и онлайн. Сейчас очевидно, что русскоязычные эксперты живут в разных уголках мира. Я в США, мой напарник по #RuPostgres, Илья Космодемьянский, — в Германии, а само сообщество представлено в десятках стран и сотнях городов. Поэтому мы трансформировали #RuPostgres еще до коронавируса — это сейчас, прежде всего, канал в YouTube и Постгрес-вторники в Zoom+YouTube.

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

— Расскажи о заездах конференции. Кого ждать этой весной?

— Отмечу парочку, и они не из области Postgres. Первый — это Алексей Миловидов из Яндекса. Он расскажет об интересных случаях оптимизации, с которыми встретился при разработке ClickHouse. А Петр Зайцев, CEO Percona, покажет, как анализировать запросы MySQL 8 в PMM (Percona Monitoring and Management), инструменте мониторинга, который разрабатывают в его компании.

— Какие самые интересные доклады ты можешь перечислить? Чем они будут полезны гостям конференции? Есть ли среди них те, которые решат давно назревшие проблемы?

— Подавляющее число докладов описывают решение актуальных проблем — конференция практическая мы специально делаем акцент на этом при отборе докладов. Успех Highload++ можно объяснить именно практической пользой докладов.

Если оставить за скобками тему баз данных (ее обсудим ниже), то я лично обратил внимание на два доклада про нагрузочное тестирование: Александр Кузменков и Максим Куприянов, спикеры из Яндекса, будут интересны широкому кругу и поделятся секретами.

В первом, «Сегодня я помержил в ClickHouse 30 пул-реквестов, а он все еще не тормозит: автотесты производительности», рассказывается, как в Яндексе тестируют производительность каждого коммита в ClickHouse. К тестам есть три основных требования: они должны измерять правильную величину, результаты должны быть воспроизводимы, и тесты должны давать достаточно информации, чтобы их можно было интерпретировать и исправить или улучшить результат. Александр обсудит, как эти требования реализуются на практике: какие данные и запросы используются для тестирования, как строятся эксперименты, обрабатываются результаты и как используются встроенные в ClickHouse инструменты интроспекции, такие как профайлер запросов.

Во втором докладе, «Использование непрерывного нагрузочного тестирования для оценки емкости и планирования ресурсов высоконагруженного сервиса», говорится о методике online-оценки емкости сервиса и планирования ресурсов, применяемой в Яндекс.Маркете. Высоконагруженные сервисы потребляют большой объем вычислительных ресурсов. Эти ресурсы дороги и должны выделяться в том количестве, чтобы приложения с одной стороны исправно работали и не падали под потоком запросов пользователей, а с другой — не грели понапрасну воздух за счет владельца. 

Кроме этого, «Как правильно и надежно убить MySQL» (Владимир Федорков, ECOMMPAY IT) — рассказ типа «как устроить highload на ровном месте» всегда вызывает высокий интерес у аудитории.

— Расскажи о своей секции. В чем ее особенности, и что необычного ждет ее участников в этом году. 

— Растут объемы данных и нагрузки. В секции о БД — усиление трендов, наметившихся в предыдущие пару лет. С одной стороны, строители облаков и сервисов управления СУБД в них (в России это, прежде всего, Яндекс.Облако, хотя и другие подтягиваются) делятся ценнейшим опытом управлениями мириадами узлов БД. С другой, подрастают, учатся или уже научились «готовить» «БД в кубе» создатели и пользователи различных Kubernetes-операторов для Postgres, MySQL и т.д. В обозримом будущем, это идеологические конкуренты первой группе. 

К докладам от «строителей облаков» относятся:

  • «Подводные камни высокодоступных инсталляций OLTP СУБД», Андрей Бородин, Yandex.Cloud — учитывая масштаб Я.Облака и глубину знаний докладчика, послушать его будет точно полезно. 

  • «Надежные и быстрые бэкапы PostgreSQL», Даниил Захлыстов, Yandex.Cloud — речь про WAL-G, который давно уже не только Постгрес бэкапит, но и MySQL, Монгу. Кроме того, поддерживает разные облачные объектные хранилища, алгоритмы сжатия.

  • «Консенсус на пальцах, или Как договориться в распределенной системе», Владимир Протасов, Yandex.Cloud — доклад из соседней конференции, «Архитектура, масштабируемость». Он интересен тем, кто интересуется темой надежной реализации autofailover. 

Ко второму типу – докладам от тех, кто не уже не боится эксплуатировать БД «в кубе», относятся:

  • «Прокрустово ложе или «испанский сапог» — мифы и реальность СУБД в Облаках», Александр Зайцев, Altinity. Он расскажет о том, что требуется от СУБД, чтобы она чувствовала себя удобно и комфортно в Облаке. Это включает в себя разделение вычисления и хранения, интеграция с сетевыми системами хранения, другая модель репликации и т.д. Конечно, это в контексте использования Kubernetes.

  • «Анатомия Kubernetes Operator для базы данных», Петр Зайцев, Percona. В своем выступлении он поделится опытом о том, как Kubernetes Operator для управления базой данных может быть устроен внутри и чему научились внутри его компании, создавая операторы для MySQL и MongoDB.

  • Коллеги Петра по Percona Николай Маржан и Сергей Пронин представят доклад «Comparison of Kubernetes Operators for MySQL».

Помимо этого, я бы сходил послушать Ивана Панченко. который расскажет про новое в Postgres 14 и Ивана Фролкова с докладом о runtime-ошибках в Постгресе. Оба из ПостгресПро.

И я точно планирую заглянуть на эти два доклада:

  • «Распространенные ошибки изменения схемы базы данных PostgreSQL», Николай Самохвалов,  Postgres.ai

  • «Database Performance at Gitlab.com, Jose Finotto», GitLab & Nikolay Samokhvalov, Postgres.ai

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

— Пора подниматься после сбоя.

Конференция HighLoad++ 2021 пройдет уже 17 и 18 мая в Москве, в Крокус-экспо. У нас готово расписание, и вы уже сегодня можете запланировать активности!

Билеты можно купить здесь. С 30 апреля цена на них станет выше.

Хотите бесплатно получить материалы конференции мини-конференции Saint HighLoad++ 2020? Подписывайтесь на нашу рассылку.

Источник: https://habr.com/ru/company/oleg-bunin/blog/553314/


Интересные статьи

Интересные статьи

Перед прочтением: в руках каждого разработчика должны быть удобные и практичные инструменты. Однострочники, как и синтаксический сахар, - это пример грамотного написания ...
Новогодние бенчмарки компьютеров Эльбрус Продолжение статьи Большое тестирование процессоров различных архитектур. В этот раз я решил измерить производительность конкретных сред/языков...
Если заглянуть в любой магазин электроники, то можно увидеть множество компаний предлагающих "свои" жесткие диски. Но большинство из них никогда не прозводили непосредств...
Сегодня команда Lifext расскажет: Как был открыт витамин B12; Что ради этого пришлось пережить первым пациентам; Что он из себя представляет и откуда берется? Какую роль играет в старении ...
Всем здравствуйте. Вот в преддверии нового года решил написать, такой экспериментально развлекательный пост-квест. Сил на серьезную статью уже нет, и мысленно находясь уже на каникулах, ре...