О мэйнфреймах и не только

— Как и для чего создавалась московская лаборатория IBM?

Международную систему IBM R&D образует сеть исследовательских лабораторий и сеть лабораторий разработки. В первых ведется изучение перспективных потребностей рынка и поиск концепций новых продуктов. На определенном этапе идеи из исследовательской лаборатории переходят в лабораторию по разработке, где уже создается новый продукт. Российская лаборатория систем и технологий IBM – это лаборатория по разработке, где мы занимаемся созданием продуктов для коммерческой реализации. Но у нас ведется и ряд исследований, например, российская лаборатория взаимодействует с несколькими исследовательскими организациями IBM в мире.

Лаборатория в Москве была открыта в 2006 году, и тому было две основные причины. Прежде всего, это желание корпорации расширить свое присутствие на быстрорастущем российском рынке. Вторая причина – стремление воспользоваться колоссальным потенциалом выпускников инженерных специальностей российских университетов. Этим славились советские вузы, но и сейчас ситуация не изменилась, что наглядно демонстрируют результаты чемпионата мира по командному программированию АСМ ICPC, который проводится при поддержке IBM. Ежегодно среди его призеров значительную часть составляют представители России и стран СНГ. Мы заинтересованы в приеме на работу студентов такого уровня.

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

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

— Лаборатория принимала активное участие в разработке последней модели мэйнфреймов zEnterprise, которую в IBM характеризуют как революционную.

Над zEnterprise работали 5 тыс. человек в 18 лабораториях IBM по всему миру, и мы были одной из них, сотрудничая с лабораториями IBM в США, Германии и других странах. Примерно 65 наших сотрудников были заняты в этом проекте, работая над различными его аспектами, в частности над сетевой системой, которая обеспечивает подключение серверов-лезвий к zEnterprise. Ключевая особенность новой системы состоит в том, что zEnterprise позволяет управлять из единой точки как одним целым различными типами систем: z System, серверами-лезвиями на платформе Intel и на базе процессора Power7. Мы разработали систему сетевого управления, которая обеспечивает соединения между всеми этими компонентами.

Кроме того, в московской лаборатории проводилось тестирование для zEnterprise — перед началом поставок системы мы выполнили финальное тестирование всего стека программного обеспечения, микрокодов и аппаратных средств. У нас также проводилось так называемое эмуляционное тестирование — с помощью специальной программы, эмулирующей полный стек аппаратного обеспечения, микрокодов и системного ПО, была протестирована инфраструктура ввода/вывода. Кроме того, мы тестировали последовательность включения системы, поскольку включение такого сложного комплекса – это не просто нажатие кнопки «Пуск», а процесс, растянутый во времени.

В нашей лаборатории также писались программы моделирования работы реальных приложений на zEnterprise. Например, у нас есть системы имитации потоков транзакций крупного банка или брокерской системы. С их помощью мы проводили исследование zEnterprise в банковской среде с огромными объемами транзакций при использовании СУБД DB2, компонентов IBM WebSphere и Tivoli. Кроме того, мы занимались совершенствованием поддержки на zEnterprise системы виртуализации z/VM, которая обеспечивает одновременную работу сотен и тысяч приложений на одной платформе. Усовершенствования касались возможностей управления производительностью z/VM.

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

— Что послужило стимулом для открытия других направлений разработок помимо мэйнфреймов?

Мы занимаемся разработками и тестированием ОС z/OS, z/VM и z/VSE, однако клиент никогда не покупает только операционные системы, поэтому одна из ключевых задач нашей лаборатории – поддержка специалистов по продажам в локальном офисе IBM. Это означает, что клиенту IBM, который покупает СУБД DB2 или систему передачи сообщений MQ, должна быть гарантирована помощь русскоговорящего инженера, хорошо разбирающегося в этих продуктах. Поэтому мы начали развивать соответствующие квалификации в лаборатории и сейчас ведем проекты для пяти программных семейств: WebSphere, Tivoli, Information Management, IMS и Rational. Помимо получения дополнительных навыков, позволяющих лучше поддерживать заказчиков IBM в России, развитие этих направлений открыло больше возможностей для карьеры разработчиков лаборатории. Они могут теперь менять области приложения своих сил.

— Работы в лаборатории сосредоточены только на программном обеспечении?

Наше главное направление – операционные системы и связующее ПО, но есть и некоторый объем разработок, связанных с оборудованием. Наиболее значительной работой в этой области было участие в проекте Roadrunner, завершенном в июне 2008 года. Это первый в мире компьютер петафлопсного уровня, обеспечивающий выполнение более квадриллиона операций в секунду, в два раза обогнавший суперкомпьютер IBM BlueGene. Roadrunner установлен в Национальной лаборатории в Лос-Аламосе. Для этой системы мы написали средство одновременной многоадресной сетевой загрузки (multicast network boot) нескольких сотен серверов-лезвий. Эта работа очень близка к проектированию аппаратного обеспечения. Кроме того, мы участвовали в разработке специального процессора для одного из клиентов IBM в России. Задача состояла в интеграции нескольких специальных плат внешних поставщиков и технологий IBM.

— Всегда ли исследовательский проект в лаборатории IBM должен стать источником разработки нового продукта?

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

В своей исследовательской работе мы сотрудничаем в основном с двумя исследовательскими центрами IBM – лабораторией в Цюрихе и Watson Research Center в США. Ведущей областью исследований в Цюрихе являются наномолекулярные технологии. Мы работаем над совместным проектом с участием МГУ, где установлен компьютер BlueGene. Цель этого проекта – исследовать поведение наномолекулярных переключателей. Возможно, в будущем это приведет к появлению принципиально новых компьютерных устройств, но когда это произойдет, через год или через несколько лет, сейчас трудно предсказать. Еще один проект с использованием BlueGene в МГУ – поиск возможностей оптимизации массово-параллельной обработки.

Watson Research Center – крупнейшая лаборатория IBM, совместно с ней мы ведем несколько интересных исследовательских проектов. Один из них связан с совершенствованием технологий геологической разведки. При поиске нефти и газа используется метод глубинной акустики, при котором с аппарата, погружаемого глубоко под воду или в толщу земли, передаются гигантские объемы данных. Речь идет о сотнях терабайтов, и требуются недели для анализа этих данных. Соответственно, предприятия нефтегазовой отрасли идут на значительные расходы для реализации такого анализа. Идея проекта состоит в том, чтобы разработать алгоритм, который позволит кардинально сократить время на анализ этих данных, с нескольких недель до нескольких часов, что в конечном итоге обеспечит снижение стоимости разведки.

Еще один проект, осуществляемый совместно с Watson Research Center, направлен на решение задачи перемещения приложений с одной платформы на другую. Мы разрабатываем программный инструмент обнаружения и анализа, который просматривает целевую платформу и определяет все интерфейсы с ПО связующего слоя – базой данных, системой передачи сообщений, которые на ней выполняются. Это средство позволит практически полностью автоматизировать процессы миграции, исключив участие в них системного администратора и упростив написание новых приложений. С Watson Research Center мы также ведем совместные исследования в сфере облаков. Исследовательский центр обладает облачной платформой Research Cloud Computing (RC2), на которой выполняется множество проектов. Мы участвуем в оптимизации инфраструктуры управления этими проектами с целью максимального использования потенциала облачной платформы.

Другой проект – реализация модели SaaS c помощью средств виртуализации, доступных на облачной платформе. У нас есть разработчики, которые хорошо разбираются в этой проблематике и участвуют в этом проекте на регулярной основе. Еще одна наша исследовательская работа связана с социальными сетями и ведется совместно с академическим сообществом. Цель – создать социальную сеть, которая объединит студентов и факультеты университетов, чтобы дать им возможность совместно работать над научными проектами, находить нужную информацию, вести блоги, имеющие отношение к такой исследовательской деятельности, а также находить гранты для поддержки исследований. Сегодня это уже происходит, но в основном по личной инициативе студентов или преподавателей. Мы хотим придать этим процессам более организованный характер, чтобы сделать такого рода поиск более эффективным. Вместе с нами уже начали работать над этой технологией два университета в США.

— Какие наиболее сложные проблемы ставит перед лабораториями IBM облачная парадигма?

Наиболее серьезная проблема – управление ресурсами в облаке. Клиенты могут развернуть частное облако или гибридное, с доступом в публичное облако. При этом возникает ключевой вопрос: как управлять всеми этими ресурсами, не усложняя для клиента работу с облаком? В проекте, над которым мы работаем совместно с рядом лабораторий IBM в США, проводятся исследования по объединению продуктов из семейств Rational и Tivoli с целью добиться лучшей управляемости облачной среды для клиента. Rational, помимо средств разработки, включает в себя решения по управлению портфелями различных элементов. Технологии Tivoli направлены главным образом на работу с системными ресурсами: управление доступом, управление событиями, прогнозирование сбоев и реакция на проблемы. Мы ищем сейчас возможности объединения этих средств для эффективного управления облаком.

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

— Какие требования предъявляются к кандидатам на работу в лаборатории?

Как правило, мы смотрим, чтобы специалист имел высшее образование в области компьютерных наук, математики или инженерии. Нам также важно, чтобы кандидат хотел заниматься программированием, поскольку это очень напряженная, отнимающая много сил работа. К нам приходят выпускники ведущих российских университетов, не только из Москвы, но и из регионов. Время от времени мы также нанимаем специалистов, которые уже работают на ИТ-рынке, если этого требуют определенные задачи наших проектов. В процессах разработки может возникнуть потребность в знании разных языков, как научных, так и коммерческих. Что-то лучше подходит для создания системного ПО, что-то для приложений, это зависит от области специализации проекта. Но во всех случаях нам нужны люди, способные мыслить логически.

Мы очень активно принимаем в лабораторию стажеров из числа студентов последнего года обучения или даже моложе. Для студентов это великолепная возможность познакомиться с реальными проектами. Работая у нас, они получают багаж знаний и навыков по продуктам IBM, знакомятся с нашей командой и имеют значительные шансы впоследствии попасть в лабораторию на работу. И еще один хороший источник кадров – люди, которых рекомендуют наши сотрудники. Как показывает опыт, они, как правило, предлагают очень квалифицированных кандидатов.

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

Мы не рассчитываем на то, что новые сотрудники будут иметь все необходимые квалификации. Они умеют программировать на Java, или С++, или Ruby, но нам нужны специалисты, которые обладают не просто навыками программирования, но прежде всего большим желанием заниматься разработкой. Если это так, мы вместе с ними сможем многого добиться, а необходимое обучение по конкретным продуктам и технологиям IBM сотрудник проходит по ходу работы.

Что касается влияния на университетские программы, то, поскольку базовым направлением лаборатории остаются мэйнфреймы, мы поддерживаем вузовское обучение в этой области. Лаборатория тесно сотрудничает с МГТУ им. Баумана, где установлен мэйнфрейм System z, есть соответствующая учебная программа, а специалисты лаборатории читают там лекции. Вместе с еще тремя вузами этот университет создал нечто подобное социальной сети по формированию навыков работы с System z.

— Глобальная стратегия IBM реализуется под лозунгом разумной планеты. Ведутся ли в российской лаборатории какие-либо работы для реализации этой концепции?

Smart Planet – инициатива, которая охватывает множество различных областей. От разумного города с улучшенным контролем трафика до технологий разумного контроля климата. Связь этой глобальной концепции с конкретными проектами нашей лаборатории в основном опосредованная. Можно сказать, что мы работаем над системами, которые могут использоваться в решениях для разумной планеты. Но мы сейчас обсуждаем с одной из американских исследовательских лабораторий IBM возможность участия в проекте, который имеет непосредственное отношение к идее разумной планеты. Это работы в области предсказаний погоды. Имеется в виду нечто гораздо большее, чем просто определение погоды на завтра. На самом деле достоверные долгосрочные прогнозы погоды могут оказывать колоссальное влияние на бизнес. Мы обсуждаем возможность реализации проекта по разработке алгоритмов эффективного анализа данных с метеорологических сайтов и лучшего предсказания погоды на отдаленную перспективу.

Научные подробности

Анджей Аршавски: «В нашей лаборатории создан язык программирования X10, позволяющий процессорным элементам параллельной системы обмениваться данными между собой»О деталях некоторых проектов лаборатории IBM в Москве рассказывает Анджей Аршавски, эксперт по инновациям и технологиям IBM в России и странах СНГ, руководитель отдела разработки систем хранения данных Российской лаборатории систем и технологий IBM.

«Один из исследовательских проектов лаборатории связан с организацией взаимосвязи информации в серверах и системах хранения. В современном ЦОД обычно установлено много серверов разных производителей, которые работают с данными, размещенными в разнообразных системах хранения. При этом на серверах благодаря виртуализации работает множество операционных систем и множество экземпляров программ. Они пытаются осуществить доступ к данным. И все это происходит виртуально, без привязки к физическому размещению данных или ПО. В результате крайне сложно отследить взаимосвязи между информацией и системами ее обработки. Например, понять, что произойдет, если убрать конкретную систему хранения данных: какие приложения на каких серверах от этого пострадают. Существует несколько различных технологий для решения этой проблемы, которые, как правило, основаны на анализе трафика запросов-ответов, однако такой анализ не всегда способен выявить реальную конфигурацию. В нашей лаборатории совместно с исследователями из Watson Research Center создается ПО, которое по конфигурации серверов позволяет выявить все эти взаимосвязи.

В лаборатории также есть отдел параллельного программирования, который совместно с факультетом ВМиК МГУ занимается разработкой библиотек функций для параллельного программирования на мэйнфреймах. Параллельное программирование специфично для каждой предметной области, поэтому оптимизировать эти процессы сложно. В лаборатории создан язык программирования X10, который позволяет процессорным элементам обмениваться данными между собой и получать доступ к общим данным в процессе вычислений. Обычно задачи, которые решаются на суперкомпьютерах, связаны с моделированием процессов реального мира. Моделируемый мир накладывается на вычислительную сетку суперкомпьютера, и каждый процессорный элемент обрабатывает то, что происходит в выделенном ему объеме. А то, что выходит за его рамки, должно передаваться между соседними процессорными элементами, поэтому необходимо общение между ними. Для этого требуется определенная инфраструктура, библиотека функций, разработкой которой мы и занимаемся».

Инновации — основа успешного бизнеса

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

Наука о документах
Исследовательское подразделение компании Xerox берет свои истоки в Xerox PARC — созданном 40 лет назад научном центре, откуда вышел графический пользовательский интерфейс, компьютерная мышь и Ethernet. Европейский центр Xerox Research Centre Europe — одно из пяти исследовательских подразделений компании. Центр ведет разностороннюю деятельность по изучению возможностей применения компьютерных технологий при работе с информацией и документами.
 

На пересечении интеллектуальных пространств
Компания Nokia не только выпускает мобильные телефоны, но и совместно с университетами по всему миру проводит перспективные исследования в сфере ИТ. Как организована исследовательская деятельность компании и каково участие в ней российских ученых?
 

Методики принятия решений при разработке ПО
Санкт-Петербургский центр разработки программных продуктов Motorola был открыт в 1997 году и сегодня ведет разработки по четырем основным направлениям: Java-технологии; программное обеспечение для телекоммуникаций; решения и средства удаленного доступа; мультимедийные решения и технологии.
 

Идея, исследование, продукт
В основе технологий управления информацией лежит математический аппарат, а российские специалисты славятся высоким уровнем математической подготовки. Именно поэтому лаборатории HP Labs в Санкт-Петербурге, тесно сотрудничающей с ведущими университетами страны, была поручена работа в области управления неструктурированной информацией.
 

Лидер команды прагматиков
Вопреки распространенному убеждению «либо бизнес, либо наука» Дик Лампман, старший вице-президент по исследованиям компании Hewlett-Packard и директор HP Labs, уверен: можно одновременно заниматься фундаментальными исследованиями и создавать конкурентоспособные продукты для массового рынка.