Что на самом деле делает администратор базы данных (DBA)?

17.08.21

База данных - Администрирование СУБД

От переводчика: публикация составлена по материалам BrentOzar.com (Brent Ozar).

Сайту BrentOzar.com 20 лет - отметим это событие очередным постом, который мог бы опубликовать десять или двадцать лет назад или в будущем, спустя десять лет…

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

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

В должностные обязанности DBA входит:

  • Контроль, что резервное копирование всех серверов баз данных выполнено таким образом, чтобы оно соответствовало целям точки восстановления предприятия (RPO).
  • Тест резервных копий, чтобы убедиться, что мы сможем выполнить задачи по времени восстановления бизнеса (RTO).
  • Устранение неполадок в работе службы баз данных по мере их возникновения, включая нерабочие часы и выходные дни
  • Настройка утилит мониторинга, чтобы свести к минимуму ложные сигналы тревоги
  • Выбор: следует ли использовать кластеризацию, доставку журналов, зеркальное отображение, Windows Azure или другие технологии
  • Установка и настройка новых серверов баз данных
  • Исправление существующих серверов баз данных
  • Развертывание сценариев изменения базы данных, предоставляемых сторонними поставщиками
  • При возникновении проблем с производительностью, поиск наиболее эффективного способа повышения производительности, включая покупку оборудования, изменения конфигурации сервера или изменения индекса/запроса
  • Документация среды баз данных компании
  • Снижение затраты компании на хостинг за счет настройки производительности, консолидации и изменения размеров

Почему так важен администратор базы данных?

Когда база данных выходит из строя, бизнес останавливается. Если вы продаете вещи онлайн, и ваш веб-сайт выходит из строя, это чрезвычайная ситуация. Даже если он не работает – если он просто замедляется – это тоже может быть чрезвычайной ситуацией. DBA помогают предотвратить эту проблему.

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

Где работают DBA?

Поскольку DBA занимаются защитой важных данных, вы найдете их везде, где важны данные – и в наши дни это везде! Однако в большинстве компаний, имеющих всего 1-2 базы данных, недостаточно работы, чтобы занять штатного сотрудника. В таких магазинах вы найдете человека, который тратит часть своего времени на администрирование баз данных. Мы называем этих людей “случайными DBA” – они не собирались становиться администраторами, но они просто унаследовали некоторые обязанности.

Чем крупнее компания, тем больше у нее будет баз данных. Для крупных национальных компаний характерно иметь целые команды DBA.

Какова типичная зарплата DBA?

Согласно нашим ежегодным данным Обследования профессиональной заработной платы, DBA в Соединенных Штатах получают в среднем 112 880 долларов США. Более подробные данные - в оригинальной статье.

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

Могут ли DBA работать из дома?

Они могут – и давайте посмотрим правде в глаза, сейчас все равно все работают дома, – но большинство компаний предпочитают, чтобы их DBA появлялись в офисе. Существует определенный уровень паранойи вокруг позиции DBA, потому что DBA защищают один из самых ценных активов компании: свои данные. DBA часто участвуют в специальных совещаниях из-за чрезвычайных ситуаций, и из-за степени серьезности этих чрезвычайных ситуаций менеджеры хотят видеть лица и запирать людей в комнатах.

Некоторые компании готовы нанимать DBA на удаленке, но их довольно мало, и они находятся далеко друг от друга. Когда они это делают, обычно это происходит потому, что:

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

Но это скорее исключения, чем правило.

Что такое DBA по сравнению с аналитиком данных?

Аналитик данных пишет запросы, чтобы получить ответы на основе данных, в то время как DBA следит за тем, чтобы ответы возвращались быстро.

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

DBA обычно обладает меньшими знаниями в области бизнеса. Они знают больше о системах, в которых хранятся данные, таких как Microsoft SQL Server, Postgres, MySQL, Oracle... DBA будет знать, какие пользователи чаще всего выполняют какие запросы, и они могут даже помочь аналитикам данных создавать более качественные запросы, но обычно они не пишут новые запросы с нуля.

Это немного сбивает с толку, потому что некоторые компании просто используют термин DBA для всего. “Если они работают в базе данных, то они администраторы баз данных”, - ха-ха-ха.

В чем разница между младшим DBA и старшим DBA?

Младший DBA выполняет почти все свои задачи впервые. Он полагается на Google практически во всех задачах, которые ему необходимо выполнить.

Старший DBA провел пару/несколько лет, работая младшим DBA. Он привык выполнять общие задачи, такие как настройка резервных копий, устранение неполадок, управление безопасностью и реагирование на запросы конечных пользователей. Это не значит, что они все еще не выполняют задачи в первый раз – они часто это делают, и они полагаются на Google, чтобы помочь им разобраться в происходящем. Но, по крайней мере, в половине случаев они делают то, что уже делали раньше, и вместо того, чтобы гуглить концепции, они ищут наиболее эффективный способ сделать это в масштабе, например, автоматизировать его с помощью PowerShell.

Количество лет опыта не имеет никакого отношения к тому, является ли кто-то младшим или старшим. Я видел много людей с 10 – летним опытом, но они все еще младшие-потому что они все еще делают точно то же самое, что делали 10 лет назад, так же, как они делали это тогда. Они не изучали, как автоматизировать более распространенные задачи или как выполнять более сложные.

Какие инструменты используют DBA?

При администрировании одного SQL-сервера они обычно используют среду SQL Server Management Studio. Это бесплатный инструмент от Microsoft, которому более десяти лет, и он с самого начала был написан как основная консоль для сервера баз данных. Довольно редко можно увидеть, как DBA используют сторонние инструменты для управления серверами только потому, что SSMS так долго отсутствовала и охватывает так много функций. Я проводил здесь большую часть своего времени.

При администрировании большого количества SQL-серверов DBA используют PowerShell, обычно с помощью DBAtools.структура ввода-вывода. Вы можете начать изучать это с помощью книги "Изучение сценариев PowerShell" за месяц обедов.

Для написания нового кода Microsoft хочет, чтобы мы использовали Azure Data Studio. Это похоже на Visual Studio Code, кроссплатформенное приложение, предназначенное для написания новых материалов с нуля. Он может выполнять некоторые административные задачи, но на самом деле он ориентирован на разработчиков. Я провожу здесь немного времени, потому что пишу запросы как для Microsoft SQL Server, так и для Amazon RDS Aurora Postgres, и Azure Data Studio работает с ними обоими.

Какое обучение готовит вас к получению первой работы DBA?

Компании почти никогда не нанимают DBA без опыта работы. Чтобы получить этот опыт, есть два общих карьерных пути.

Сначала устроитесь на работу разработчиком и потратьте много времени на запросы SQL Server. По мере выполнения вашей работы вы в конечном итоге будете создавать новые объекты SQL Server, такие как таблицы, индексы и хранимые процедуры. Затем вы можете постепенно стать “специалистом по базам данных” в офисе и, если это имеет смысл для вашей карьеры, постепенно перейти на специальную роль администратора базы данных.

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

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

Если вы хотите начать с начала, у меня есть бесплатные курсы YouTube по основам администрирования баз данных и бесплатный класс для старших DBA.

Могут ли новички устроиться на работу DBA?

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

Когда вы находите компании, нанимающие новичков в качестве удаленных DBA, они обычно обучают сотрудника основным должностным обязанностям DBA. Будьте осторожны здесь: эти работы чрезвычайно низкооплачиваемы, и после этого они, вероятно, не дадут вам отличную работу DBA. Вам придется уйти из компании, чтобы найти работу получше, но когда вы возьмете “опыт”, который вы получили в этой компании, и попытаетесь использовать его для получения следующей работы в DBA, вы, скорее всего, будете разочарованы. Компания учила вас минимальному минимуму вещей, просто чтобы выставить счет за ваше время, и на самом деле это не воспринимается как реальный опыт DBA.

Достаточно ли сертификатов администрирования баз данных, чтобы получить работу?

В мире Microsoft SQL Server нет: программы сертификации Microsoft, такие как помощник администратора базы данных Azure, просто не точно отражают то, что делают администраторы баз данных. Они отражают то, чему Microsoft хочет научить DBA, потому что Microsoft хочет, чтобы люди проповедовали облачные сервисы Microsoft внутри своей компании.

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

Можете ли вы быть DBA без высшего образования?

Абсолютно точно – я сам бросил колледж. Тем не менее, вы должны быть готовы потратить годы на разработку и системное администрирование, прежде чем получить работу DBA.

Я бы не стал использовать себя в качестве примера “правильного способа” получить работу DBA. Это возможно – просто на это уходит много - много времени. Я бы также сказал, что я DBA, потому что я вышел из разработки! У меня не хватало терпения постоянно изучать новые языки и фреймворки, а также отлаживать во всех видах различных браузеров. Администрирование баз данных было проще для меня, поэтому я остановился на этом.

Если у вас нет ученой степени, наберитесь мужества: вместо этого просто получите работу разработчика или системного администратора. Это будет проще (не просто, просто проще, чем сразу переходить к администрированию баз данных) и продолжать заниматься тем, что вам нравится, и избегать того, что вы ненавидите.

Нужны ли DBA для «облачных» баз?

Я часто задаю этот вопрос, когда компании начинают рассматривать облачные сервисы, такие как база данных SQL Azure.

Чтобы получить ответ, прочитайте список должностных обязанностей в верхней части поста. Некоторые из них действительно охвачены автономными платформами облачных баз данных, но многие-нет. (Например, если вы хотите хранить резервные копии дольше 35 дней, в настоящее время это доступно только в режиме предварительного просмотра и только в некоторых центрах обработки данных Azure.) Кроме того, ценообразование на производительность начинает становиться реальной проблемой в облаке: по мере роста ваших рабочих нагрузок растут и ваши затраты. DBA теперь могут окупать себя, помогая настраивать производительность рабочих нагрузок для снижения затрат на хостинг.

Является ли DBA хорошей карьерой?

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

Однако это имеет свои недостатки:

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

За последние пару десятилетий это была солидная карьера, и для 2020-х и 2030-х годов все выглядит довольно радужно. В своем следующем посте я расскажу о том, почему базы данных еще не управляются самостоятельно, и как это повлияло на мои последние 10 лет.

Переводчик выражает благодарность Виктору Богачеву – автору и ведущему «Подготовка к 1С:Эксперту по технологическим вопросам. Основной курс» за спонсорскую помощь.

См. также

Устранение ошибки выполнения скрипта "Создать сервис RAGENT" в ЦКК

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В статье показано, как устранить ошибку выполнения скрипта "Создать сервис RAGENT" в системах 1С:Центр контроля качества или в 1С:Центр автоматизации. Будет полезна администраторам ЦКК и ЦА, которые только начали знакомство с этими системами.

18.04.2024    333    artemusII    0    

6

Долгая реструктуризация, замеры времени и очистка Ветис. Розница 2.3

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Бесплатно (free)

При подготовке к обновлению возникли проблемы на стадии тестирования и исправления базы данных, также при создании файлов РИБ для магазинов.

16.04.2024    317    xKaskadx    4    

1

Установка и получение лицензии на базовую конфигурацию 1С на Mac OS

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Установить купленную базовую конфигурацию 1С и получить лицензию на MAC OS не так просто, как кажется на первый взгляд и как хотелось бы. Официально в системных требованиях на базовую конфигурации 1С пишет всякие виндовсы и пару-тройку линуксов. МакОс там нет. В статье расскажу, как все-таки поставить на Мак базовую конфигурацию 1С.

11.04.2024    374    pahmutov    0    

2

Установка тонкого клиента 1С на Rasbian (Raspberry Pi 5)

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

После приобретения Raspberry Pi 5 решил проверить, есть ли возможность использования устройства для организации тонкого клиента. В результате столкнулся с особенностью установки 1С: Предприятие 8.3.23 на Raspbian, решением которой я хочу поделиться с сообществом.

07.04.2024    688    Bessome    4    

5

Порционный шринк базы

Администрирование СУБД Бесплатно (free)

Скрипт позволяет высвобождать место в операционную систему, занятое файлом базы MS SQL в итерациях с заданным количеством мегабайт

28.03.2024    1312    Garilia    3    

15

Создаем сценарии обслуживания SQL в Центре Контроля Качества 1С (Центр Администрирования)

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

Данная статья научит вас, как создавать скрипты обслуживания MS SQL для Центра Контроля Качества (ЦКК) или Центра Администрирования (ЦА).

20.03.2024    776    Silenser    0    

5

Поинтегрируем: сервисы интеграции – новый стандарт или просто коннектор?

Обмен между базами 1C Администрирование СУБД Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

В платформе 8.3.17 появился замечательный механизм «Сервисы интеграции». Многие считают, что это просто коннектор 1С:Шины. Так ли это?

11.03.2024    6099    dsdred    59    

86

Инструкция по установке Postgres для OLTP приложений и 1С. Часть 1. Базовая конфигурация

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

В Postgres достаточно подробная документация, и, видимо, поэтому при инсталляции Postgres для 1С большинство параметров приходится выставлять самим. Параметров в Postgres много, а составить эффективную комбинацию не так просто. Все упрощается, если рассмотреть профиль нагрузки, например, 1С это прежде всего профиль OLTP нагрузки – так устроены его метаданные (объекты). Если сосредоточиться на оптимизации профиля OLTP, понимание Postgres сразу упростится.

15.02.2024    2595    1CUnlimited    14    

28
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. triviumfan 93 23.08.21 10:05 Сейчас в теме
"Сайту BrentOzar.com 20 лет - отметим это событие очередным постом", - пост Озара от марта как бы... На дворе конец августа. У него есть и сайт, и ютуб канал и куча соцсетей. Кому интересно его творчество - следят за ним. А с переводом может справиться и гугл.
2. vasilev2015 2699 23.08.21 11:20 Сейчас в теме
(1) Переводы всегда "на любителя". Любите оригиналы - читайте оригиналы.
3. пользователь 05.12.21 15:35
Сообщение было скрыто модератором.
...
Оставьте свое сообщение