Назад | Перейти на главную страницу

Когда стоит получать DBA?

Сейчас я работал в нескольких технологических компаниях, от 10 до ~ 150 человек, и я никогда не встречал настоящего администратора базы данных. Насколько крупной должна стать компания, чтобы заслужить получение DBA? Каким критериям необходимо соответствовать?

(Я также разместил это на Переполнение стека. Это только в обоих местах, потому что там модератор предположил: «Это может быть один из тех редких случаев, когда стоит спросить и о SO, и о SF»)

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

Как упомянул один человек, если стоимость потери базы данных превышает зарплату администратора базы данных, тогда получите ее. Это очень хорошее место для начала. Однако если база данных не изменится так сильно и будет оснащена хорошим оборудованием, компания, вероятно, сможет годами обходиться без штатного администратора баз данных. Хитрость здесь в том, чтобы иметь хорошего местного (или удаленного) консультанта, который позаботится о том, чтобы резервное копирование было автоматическим, а другое обслуживание базы данных происходит на регулярной основе. Попросите их проверять систему несколько раз в год для проверки работоспособности и наймите их для обработки крупных проектов и обновлений серверов, и по большей части у вас все будет в порядке.

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

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

Если вы используете только стороннее программное обеспечение, я бы сказал, что это зависит от СУБД, которую вы будете использовать (Oracle, mySQL, DB2, MS SQL и т. Д.), Размер данных относительно мощности оборудования. он будет храниться в качестве стороннего программного обеспечения. Для мелочей в простых в использовании базах данных, вероятно, достаточно иметь (желающего) технического специалиста, который сделает основы. OTOH, создание разработчика, который хочет писать веб-код, и принуждение ее к резервному копированию баз данных Oracle - плохая идея.

Если вы занимаетесь собственной разработкой, я бы поинтересовался, каковы требования к масштабированию базы данных (вы создаете следующий Google или Twitter или сохраняете рецепты?). Что вы хотите, чтобы администратор базы данных делал (резервное копирование баз данных? Защищать базы данных? Участвовать в разработке? Писать код? Создавать схему базы данных? Работать над масштабированием или масштабированием? Создавать схему репликации? Взаимодействовать с поставщиками оборудования? Указывать оборудование? Создавать «стандарты кодирования»? Просто пасти кошек?).

Привлечение администратора баз данных на раннем этапе может помочь предотвратить возникновение проблем в проектах в дальнейшем, и, как правило, дешевле избежать распространенных ошибок сейчас, чем исправлять их позже.

Я бы сказал, это зависит от обстоятельств.

Поскольку это бизнес, спросите себя: «Какова цена потери этой базы данных?»

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

«Стоимость» будет трудной цифрой. Но он должен включать время восстановления, потерю производительности (на пользователя) и потерянные продажи. Такие места, как Amazon (который несколько лет назад достиг своего пика на уровне 60 продаж в секунду), могут указать определенную цифру на стоимость простоя.

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

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

Это действительно зависит от того, сколько баз данных вам нужно управлять. У нас есть администратор баз данных, и он очень хорош. У нас есть экземпляры Oracle PROD / TEST / TRAIN / DEV, которые требуют частых исправлений безопасности, регулярных исправлений и обновлений после циклов регрессионного тестирования с функциональной стороны. Помимо этого, он также управляет всем остальным в компании, использующим базы данных Oracle или SQL. Ему поручено обновлять клоны для тестирования, а также он управляет резервным копированием базы данных RMAN из Enterprise Manager.

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

Независимо от того, нужен ли вам администратор баз данных или нет, вам нужен кто-то, кто будет отвечать за серверы производства и разработки.

Вам нужно иметь определенное лицо, отвечающее за изменения в производстве.

В больших проектах с более чем 2 разработчиками вам необходимо иметь лицо, отвечающее за перенос изменений в разработку (с рабочей станции или пользовательских схем).

Если вы планируете использовать службы Reporting Services или Analysis Services, вы мощь посмотрите на администратора базы данных, который специализируется на этих технологиях.

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

когда

  1. Работа администратора базы данных находится над головой того, кто ее делает, или
  2. Человеку, который сейчас выполняет работу администратора баз данных, лучше потратить время в другом месте.

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

Попробуйте найти администратора базы данных с многопрофильным опытом, чтобы ему было чем заняться, кроме как сидеть и ждать, пока БД сломается.

Я не уверен, что администраторы баз данных вообще нужны.

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

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

Когда я узнаю, для чего он подходит, я дам вам знать.

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

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

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