Знакомимся с новым DBA — Александром Никитиным
Каждый из наших DBA является безусловным профессионалом своего дела, в то же время каждый привносит в команду собственную уникальную экспертизу и интересы.
Пополнение в команде всегда означает прилив новых сил, знаний, энтузиазма. В этом году к нам присоединились Александр Никитин и Алексей Козлов.
Мы поговорили с нашими новыми коллегами об их мотивации работать в ИТ, опыте и, конечно, PostgreSQL.
В этом интервью о себе расскажет Александр Никитин.
Расскажи, почему ты выбрал ИТ?
С детства было представление, что буду иметь дело с техникой — колебался между автомобилями и компьютерами. Интерес к современным ИТ-технологиям взял верх, и вопрос с выбором будущей профессии был решен.
Кстати, о профессии. Твоя учеба в университете связана с ИТ? Помогло ли академическое образование в дальнейшей работе?
У меня диплом преподавателя физики и информатики. Конечно, классическое образование закладывает нужную базу, дает некие ориентиры в профессии, но, чтобы стать хорошим специалистом, нужно продолжать изучать предмет, искать интересные решения и как можно больше практиковаться. В университете, кстати, на старших курсах я уже работал системным администратором — знакомился со специальностью с прикладной стороны, и этот опыт тоже был не бесполезен.
Как принял решение работать с PostgreSQL?
В какой-то момент понял, что решаю одни и те же задачи на Oracle — профессиональное развитие замедлилось, плюс, не устраивала работа Zabbix на нем. Согласовав с руководством переход на другую БД, принялся изучать PostgreSQL. Много читал про миграцию, смотрел доклады, делал заметки, которые в конечном счете оформились в ряд наработок. Благодаря тщательной подготовке миграция прошла удачно. Так и началось знакомство с Postgres.
Каких фич тебе не хватает в PostgreSQL?
Наверное, только один момент: в Oracle существует Cloud Control — ресурс, который проводит мониторинг, снимает метрики, прямо из него можно руководить запросами, помощниками, “нырнуть” глубже в разные места в СУБД.
К тому же было бы очень хорошо иметь Flashback в Postgres — это такой механизм в Oracle, который позволяет «перемотать» базу к определённому состоянию, к какой-то заданной точке во времени.
Пожалуй, что-то подобное было бы неплохо иметь и в PostgreSQL.
Какие направления в PostgreSQL тебе наиболее интересны?
Мне особенно интересно резервное копирование. Много раз сталкивался с тем, какое количество нюансов нужно учитывать в этом процессе. Очень пристально изучал утилиты pg_probackup и pg_BackRest. Некоторыми открытиями в области их применения делюсь с коллегами. К примеру, из любопытства проводил тесты, чтобы определить, каким образом можно ускорить процесс копирования и переноса баз данных. Нашел способ сделать эти операции быстрее и рассказал в своем последнем докладе.
Хотелось бы попробовать заниматься разработкой в PostgreSQL?
На текущий момент передо мной огромный пласт информации для изучения. Нужно здорово поработать, чтобы стать первоклассным специалистом. Если в процессе появится возможность поделиться с коллегами полезными идеями, сделаю это с радостью.
Какие учебные пособия, ресурсы тебе действительно помогли и ты готов посоветовать другим для изучения PostgreSQL?
На первом месте — официальная документация PostgreSQL. Здесь собраны ответы на все вопросы, нужно внимательно прочитать, возможно не один раз.
Из книг особенно запомнилась “Mastering PostgreSQL 11” Hans-Jürgen Schönig.
Существуют ли гуру PostgreSQL, за чьей деятельностью ты наблюдаешь?
Регулярно смотрю выпуски Postgres-вторников с Ильей Космодемьянским и Николаем Самохваловым. Стараюсь попадать на прямые эфиры Postgres TV.
Мне удобно пользоваться RSS-подписками — читаю интересные личные и корпоративные блоги:
https://planet.postgresql.org/
https://iusoltsev.wordpress.com/
Чем тебя привлекает работа в компании, которая занимается поддержкой баз данных?
Давно наблюдал за DBA из Data Egret, смотрю доклады ребят с конференций, выступления на митапах. Подкупает, что это опытные профессионалы, к которым можно обратиться за советом, в связке с которыми можно развивать собственные компетенции.
Когда решаешь одни и те же вопросы, круг задач сильно ограничен, и ты приходишь к выводу, что уже отстаешь, роста нет. Потому работа в такой компании, как Data Egret, это возможность расширять свой опыт и безусловный стимул к дальнейшему развитию в профессии.
Как считаешь, Postgres может быть использован как главное решение для бизнеса? Почему?
Насчет главного не уверен, поскольку у Oracle до сих пор очень большая часть рынка — так сложилось исторически.
Этот факт вполне объясним: в некоторых местах нет ресурсов, чтобы перейти на PostgreSQL, у ряда компаний разработка только на Oracle, а кто-то не может мигрировать на Postgres, потому что вся система заточена под Oracle. Нужно иметь ввиду, что если в компании уже есть другая БД, то имеется и специалист по ней, потому при выборе БД для нового проекта, чаша весов склоняется к уже знакомой СУБД.
Я считаю, что доступ к исходникам, наличие грамотной документации и открытое комьюнити — шаг к тому, чтобы увеличить долю в рынке.
С какими сложностями, на твой взгляд, может столкнуться бизнес при переходе с коммерческой базы на PostgreSQL?
Мой опыт специфичен, во время миграции встречались подводные камни, приходилось что-то придумывать, и это срабатывало. По теме миграции довольно много информации, докладов в сети — именно с их изучения я когда-то начинал готовиться к переходу на PostgreSQL — чужой опыт может быть очень полезен.
Какие тулзы для PostgreSQL используешь? IDE, текстовые редакторы, какой shell? Кастомизируешь ли все под себя?
Главный инструмент — это psql.
Для себя определил следующие правила, которые позволяют значительно уменьшить возможность совершения человеческой ошибки. Я переопределяю строку приглашения в ней, для мастеров — строка приглашения — красная, для реплик — жёлтая, для тестовых серверов — зелёная. Ты заходишь на сервер и сразу понимаешь, где тебе нужно быть ОЧЕНЬ осторожным.
Это пример переопределения .psqlrc:
\setenv PAGER 'less'
\setenv LESS '-iMSx4 -FX'
\timing on
\set PROMPT1 '%[%033[1;31m%]%n@%/%R%#%[%033[0m%] '
\set PROMPT2 '%[%033[1;31m%]%n@%/%R%#%[%033[0m%] '
Помимо psql, мне очень нравится pgCenter от Алексея Лесовского — отличная утилита, которая очень помогает.
Если рассматривать утилиты для бэкапов, то pg_probackup — очень мощный инструмент, и у меня на изучение его возможностей ушло довольно много времени. Разработчики живут в России, и с ними можно было обсудить все возникающие проблемы. Когда я только внедрял эту утилиту, встретил несколько проблем, и по каждой из них обратная связь была очень быстрая и качественная.
Интересным выглядит инструмент pg_profile, который позволяет получать отчёты типа ash-отчётов от Oracle. Иногда бывает очень полезным посмотреть на то, что показывает эта утилита.
Текстовый редактор — либо vim, либо Notepad++, а шелл стандартный — bash.
Всё под себя не кастомизируешь, потому что ты работаешь на серверах не один, но, к примеру, идея раскрашивать строку приглашения в psql — очень полезная. На моей памяти было несколько случаев, когда люди вводили команды не туда, куда хотели бы, и ни одного (известного мне) после того, как мы внедрили этот стандарт.
Как часто посещаешь конференции? Интересно ли это тебе?
Стараюсь выбираться на ключевые мероприятия каждый год (до начала пандемии это получалось гораздо лучше, конечно).
Очень интересно слушать других, обмениваться опытом. Часто можешь узнать о таких аспектах, которые и в голову не приходили, проникаешься идеями, про которые раньше не думал вовсе. Какие-то мысли коллег позволяют глубже понимать официальную документацию PostgreSQL.
Живые конференции имеют безусловное преимущество для меня: можно пообщаться с коллегами, обсудить интересующую тему, в неформальной обстановке обрастаешь связями и знакомствами.
В онлайн-формате явный плюс в том, что гораздо меньше волнуешься, выступая в качестве докладчика, если сидишь за собственным компьютером.
Расскажите, как устроено твое рабочее место? Какие гаджеты ты готов рекомендовать коллегам?
С удаленной работой пришлось плотно познакомиться с началом пандемии. Однозначно было понятно, что рабочее пространство должно быть организовано максимально комфортно. Не представляю себе работу DBA без двух мониторов и удобного кресла. Выбор и того, и другого огромный, так что каждый сможет найти подходящий вариант.
Из необычного пользуюсь эргономичной клавиатурой от Microsoft и вертикальной мышкой Delux.
Какие книги любишь читать?
В основном читаю техническую литературу. Особенно нравится работа “Mastering PostgreSQL 11” Hans-Jürgen Schönig.
Если говорить о неспециализированной публицистике, то очень заинтересовал фанфик “Гарри Поттер и методы рационального мышления”.
Между делом читаю книги по методу Ильи Франка — изучаю таким образом английский язык.
Чем предпочитаешь заниматься в свободное время?
Мне интересны активности на свежем воздухе: беговые лыжи, походы, туризм.
Иногда участвую с друзьями в квизах, это очень интересно.
Появились вопросы к Александру? Пишите в коментах!