Рубрика:
Гость номера /
Гость номера
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
Борис Барышников: «Microsoft SQL Server ничуть не уступает конкурентам»
На вопросы «Системного администратора» отвечает менеджер программ в команде разработки реляционного движка Microsoft SQL Server Борис Барышников
Борис Барышников в настоящее время занимается вопросом надежной и предсказуемой обработки запросов на сервере. Ранее Борис руководил проектом создания регулятора ресурсов Microsoft SQL Server 2008. Борис также работал над улучшениями Microsoft SQL Server с точки зрения управления памятью, настройки производительности и отказоустойчивых кластеров.
– Расскажите, пожалуйста, о себе. Где родились, учились? Как оказались в США, как попали в Microsoft?
– Вырос в Великом Новгороде, затем окончил физфак МГУ и позже уехал в Америку, где получил еще несколько образований, включая магистра по Computer Science и доктора философии по медицинской физике. Область академических исследований меня не очень привлекла. Так я оказался в компании Microsoft. Я работаю в команде, которая разрабатывает Query Processor (обработчик запросов). В компании Microsoft уже более пяти лет.
|
Борис Барышников в настоящее время занимается вопросом надежной и предсказуемой обработки запросов на сервере. Ранее Борис руководил проектом создания регулятора ресурсов Microsoft SQL Server 2008. Борис также работал над улучшениями Microsoft SQL Server с точки зрения управления памятью, настройки производительности и отказоустойчивых кластеров. |
– Вы являетесь одним из ведущих разработчиков Microsoft SQL Server 2008. В последнее время много говорят о так называемом «индусском коде». Это когда вместо высокопрофессиональных опытных программистов к разработке продукта привлекают ИТ-специалистов из развивающихся стран (очень часто из Индии, отсюда и название). Подготовка у таких разработчиков часто оставляет желать лучшего. Это не может не вызывать тревогу у системных администраторов по всему миру. Поэтому вот такой «неудобный» вопрос: при разработке Microsoft SQL Server 2008 использовался ли «индусский код»? Или весь продукт был от начала и до конца создан специалистами высокой квалификации с соответствующим опытом разработки?
– Вопрос является в достаточной степени провокационным, но я постараюсь на него ответить. К качеству любого кода любого продукта, будь он написан в США, России, Индии, предъявляются очень высокие требования. Код тестируется по определенным стандартам, которые не зависят от того, в каком именно центре разработки этот код написан. Наличие определенных процессов, систем тестирования и т.п. позволяет даже не задумываться о такого рода проблеме. У компании Microsoft есть свои центры разработки как в Индии, так и в Китае. В них ведется некоторая часть разработки Microsoft SQL Server. Работники этих центров, как правило, являются штатными сотрудниками компании.
Еще один интересный момент в этом контексте. Сам продукт Microsoft SQL Server достаточно сложен. Поэтому любой новый проект требует нетривиального опыта разработки. Практически вся разработка ведется с участием очень опытных специалистов, что также позволяет быть уверенным в качестве конечного продукта. При этом совершенно не важно, где специалисты находятся территориально.
Поэтому ваша тревога совершенно необоснованна.
– Наоми Кляйн в своей знаменитой книге «NO LOGO» (в России она известна под названием «Люди против брендов») писала, что с развитием глобальной экономики корпорации все чаще нанимают людей на короткий срок. Наоми называет средний срок контракта – 11 месяцев. Так ли это? Распространяется ли подобная практика на программистов, работающих в Microsoft? Если подобная тенденция существует, значит ли это, что код пишется «временщиками»?
– Мне сложно отвечать за всю компанию Microsoft. В SQL Server Engine, где я работаю, код пишется штатными сотрудниками. В силу причин, которые я затронул в предыдущем вопросе (требования к опыту и знанию продукта), исключено, что человек, который работает в компании всего 9-11 месяцев (т.е. по контракту), способен серьезно помочь разработке продукта. Любому новому человеку требуется некоторое время, чтобы понять суть дела, прежде чем он будет способен писать сложный код для каких-либо проектов. Привлечение специалиста по контракту в данном случае будет лишь тратой времени.
В нашей команде есть люди, которые работают по контракту. Им поручают выполнять вспомогательные функции, например, техническую поддержку разных процессов, которые используются при разработке.
– Планирует ли Microsoft выпуск кросс-платформенных продуктов, в области СУБД, в частности? Чтобы вне зависимости от ИТ-инфраструктуры одна и та же база данных могла быть развернута и в среде Windows и/или в среде UNIX-like операционных систем?
– Я не могу дать развернутый комментарий о планах выпуска нашего продукта для других платформ. Если говорить о независимости ИТ-инфраструктуры, то здесь рекомендую обратить внимание на облачные технологии (например, SQL Azure). В этом случае работа идет с интерфейсами, которые с точки зрения клиента не привязываются к той или иной операционной системе.
– Бытует мнение, что если нужна надежность и производительность, используют Oracle. Если нужна простота и невысокая стоимость, используют PostgreSQL или Firebird. В любом случае это кросс-платформенные системы. Какую нишу на рынке СУБД сможет занять Microsoft SQL 2008?
– На мой взгляд, в этом вопросе смешано несколько разных вещей. Функциональные возможности, надежность и производительность – это объективные характеристики. Однако их иногда сложно сравнивать, потому что есть факторы удобства разработки, стоимости эксплуатации и поддержки, администрирования и т.п. Естественно, мы активно изучаем, где можем уступать нашим конкурентам, и пытаемся исправить ситуацию.
Кросс-платформенность в данном случае ортогональна этому – она может являться функциональным ограничителем в первом приближении, но тут уже начинают играть факторы другого класса. Например, почему заказчику необходим Microsoft SQL Server на другой платформе? Что движет заказчиком и насколько это выгодно с точки зрения нашего бизнеса?
Мнение само по себе является характеристикой субъективной. Общаясь с клиентами, которые используют как Microsoft SQL Server, так и продукты других игроков рынка СУБД, я вижу, что Microsoft SQL Server ничуть не уступает конкурентам по своим технологическим характеристикам, в том числе и в вопросах отказоустойчивости и производительности, однако мнение руководства очень часто базируется на субъективном восприятии.
И наконец, несколько слов о нише. Нам, конечно, бы хотелось, чтобы вы использовали наши продукты максимально часто, а насколько хорошо мы с этим справляемся – покажет время.
– Зачем рядовой российской компании покупать такой недешевый продукт, как Microsoft SQL Server 2008? Не проще ли остановить свой выбор, скажем, на PostgreSQL? Даже «1С» с ним работает. Есть консоль управления наподобие Enterprise manager в Microsoft SQL Server 2000.
– Интересный и весьма непростой вопрос. С другой стороны океана (все-таки работаю в США) я иногда слышу и обратный вопрос: Microsoft SQL Server – это слишком дешевый продукт. Да-да, именно так. Заказчики спрашивают, как же продукт, который дешевле, чем у конкурентов, способен делать что-то сравнимое? Это опять же субъективный вопрос восприятия.
Что касается покупки продукта – существуют разные версии, от бесплатной до Enterprise, которые имеют различную стоимость. Используя Microsoft SQL Server, вы получаете платформу, которая универсальна вне зависимости от версии (используете вы бесплатную версию или Enterprise) с общей поддержкой и инструментами разработки. Вы можете начать работать с бесплатной версией и быть уверенным в будущем вашей платформы данных (СУБД) с развитием вашего бизнеса.
Работая в группе разработки в США, я не знаком с маркетинговой спецификой ценообразования на российском рынке, поэтому мне сложно прокомментировать этот вопрос глубже в смысле цен.
– По традиции линейка продуктов Microsoft SQL Server всегда дополняется бесплатной версией с усеченными возможностями. В Microsoft SQL Server 2000 это был Microsoft SQL Server 2000 Desktop Engine (MSDE 2000), в Microsoft SQL Server 2005 это был Microsoft SQL Server 2005 Express Edition (MSDE 2005). Имеется ли что-то подобное в Microsoft SQL Server 2008? И если да, то какими возможностями эта версия обладает и какие ограничения (в том числе лицензионные) предусмотрены?
– Да, у нас уже как минимум несколько последних релизов Microsoft SQL Server предлагаются и в редакции Express. Ограничения, как правило, включают в себя невозможность использовать ресурсы сервера полностью, например, лимитированное количество памяти и т.п.
Эту информацию мы всегда публикуем при выпуске новых версий. Например, по этой ссылке можно найти информацию о сравнении редакций: http://www.microsoft.com/sqlserver/2008/ru/ru/default.aspx.
– Многие производители современных СУБД (и не только Open Source-проекты) разрешают другим разработчикам в рамках принятых соглашений выпускать инструментарий для управления СУБД, построения отчетов и т.д. Это позволяет компании-производителю сосредоточиться на первоочередных задачах, например, на улучшении «движка» СУБД, оставив решение остальных проблем сторонним разработчикам. Microsoft планирует подобное разделение труда?
– На мой взгляд, это давно уже делается. Например, первая ссылка на tools for sql server (http://www.bing.com/search?q=tools+for+sql+server) дает SQL Server Management Products (http://www.quest.com/sql-server).
– Многие системные администраторы хотели бы стать разработчиками программного обеспечения. С чего начать, на что обратить внимание?
– Совет, наверное, один и достаточно простой – пробуйте и изучайте продукт, с которым вы работаете. Понимание того, что необходимо именно вам, придет из собственного опыта.
Алексей Бережной
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|