«УДК 51:46: 681.3 № гос. рег. 01200956693 Инв. № УТВЕРЖДАЮ Директор ТОИ ДВО РАН академик _В.А. Акуличев 20 марта 2012 г. ОТЧЕТ О НАУЧНО-ИССЛЕДОВАТЕЛЬСКОЙ РАБОТЕ по теме: РАЗРАБОТКА МАТЕМАТИЧЕСКОГО И ПРОГРАММНОГО ...»
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ УЧРЕЖДЕНИЕ НАУКИ
ТИХООКЕАНСКИЙ ОКЕАНОЛОГИЧЕСКИЙ ИНСТИТУТ ИМ. В.И.ИЛЬИЧЕВА
ДАЛЬНЕВОСТОЧНОГО ОТДЕЛЕНИЯ РОССИЙСКОЙ АКАДЕМИИ НАУК
(ТОИ ДВО РАН)
УДК 51:46: 681.3
№ гос. рег. 01200956693
Инв. №
УТВЕРЖДАЮ
Директор ТОИ ДВО РАН академик _В.А. Акуличев 20 марта 2012 г.
ОТЧЕТ
О НАУЧНО-ИССЛЕДОВАТЕЛЬСКОЙ РАБОТЕ
по теме:
РАЗРАБОТКА МАТЕМАТИЧЕСКОГО И ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
WEB-, ГИС-, GRID-ОСНОВАННЫХ СИСТЕМ ПОДДЕРЖКИ
ОКЕАНОЛОГИЧЕСКИХ ИССЛЕДОВАНИЙ
(заключительный) Руководитель НИР:зав. отделом информационных технологий канд. техн. наук В.К. Фищенко Владивосток
СПИСОК ИСПОЛНИТЕЛЕЙ
Зав. отделом В.К. Фищенко канд. техн. наук (реферат, введение, разделы 1, 2, заключение) Науч. сотр. А.В. Голик (разделы 1.1, 2.1, 2.2) Науч. сотр. В.И. Ростов (раздел 1.2) Науч. сотр. Е.Г. Кисленок (разделы 2.2, 2.3) Науч. сотр. А.Е. Суботэ (разделы 2.1, 2.2) Мл. науч. сотр. И.С. Олейников (разделы 1.2, 2.3, 2.4) Ст. инженер А.А. Гончарова (разделы 2.2, 2.4) Зав. лабораторией А.А. Набиуллин канд. хим. наук (раздел 3) Мл. науч. сотр. Д.А. Машковский (раздел 3.2) Ст. инженер А.Р. Аблякимов (разделы 3.2, 3.3) Вед. инженер Р.Н. Губанов (раздел 3.2) Вед. инженер М.Р. Чичкин (раздел 3.2)РЕФЕРАТ
Отчет 157 с., 105 рис., 14 таблиц, 84 источника.
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ, ГИС-ТЕХНОЛОГИИ, WEB-ТЕХНОЛОГИИ, GRIDТЕХНОЛОГИИ, ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ВЫЧИСЛЕНИЯ, ЭЛЕКТРОННЫЕ АРХИВЫ
И ДЕПОЗИТАРИИ, БИБЛИОМЕТРИЯ
Объектом исследования являются Web, ГИС, Grid-технологии, как средства комплексной поддержки океанологических исследований.Цель работы – разработка математического и программного обеспечения основанных на применении Web, ГИС, Grid- технологий распределенных информационно-аналитических систем, обеспечивающих сбор, хранение, визуализацию и аналитическую обработку океанологических данных.
Исходная идея состоит в том, что прогресс в области океанологических исследований в ближайшем будущем все в большей мере будет определяться использованием современных информационных технологий, которые позволят ученым получать, хранить и применять для получения нового научного знания все большие объемы данных о разнообразных параметрах состоянии океана и взаимодействующих с ним литосферы и атмосферы, использовать наиболее современные математические методы анализа данных и моделирования природных процессов, координировать процесс исследований между территориально разнесенными научными группами и специалистами. Фактически, информационные технологии будут все в большей мере содействовать интеграции научных данных, методов их анализа и интеллектуальных ресурсов для организации эффективной работы над крупными научными проектами. На сегодняшний день такими ключевыми технологиями «интеграции» научного процесса являются Web, ГИС и Grid технологии.
В отчетный период специалистами отдела Информационных технологий ТОИ ДВО РАН были исследованы возможности технологий Web, ГИС и Grid для поддержки научных исследований и на их основе разработаны несколько информационно-аналитических систем для поддержки исследований в области океанологии и наук о Земле. Кроме этого был разработан и размещен в сети ДВО РАН депозитарий полнотекстовых научных публикаций в области океанологии и наук о Земле, который также может быть отнесен к классу информационных систем, основанных на технологии Web. Все представленные в отчете информационные системы и электронный депозитарий в той или иной мере использовалась научными специалистами ТОИ и других институтов ДВО РАН при проведении работ по научным проектам.
СОДЕРЖАНИЕ
Обзор современных информационных технологий, содействующих Grid-технологии, распределённые и суперкомпьютерные вычисления…………….Концепция Grid, архитектура OGSA………………………………………………….
Система организации распределённых вычислений Condor ……………………….
Инструментальный пакет разработки Grid-приложений Globus Toolkit …………..
Web-ГИС технологии…………………………………………………………………..
Разработанные в ТОИ ДВО РАН информационно-аналитические системы поддержки океанологических исследований…………………….. Океанологическая информационно-аналитическая система ДВО РАН …………… Общие сведения об ОИАС ДВО РАН………………………………………………… Разработка и реализация технологии поддержки высокопроизводительных 2.1. ОИАС и информационно-вычислительные ресурсы сети ДВО РАН.……………...
Потребности ОИАС в высокопроизводительных вычислениях…………………….
Принципиальная схема организации распределённых и суперкомпьютерных 2.1.2. Исследование эффективности разработанной технологии поддержки 2.1. распределенных и суперкомпьютерных вычислений в составе ОИАС……………. Исследование технологии распараллеливания потока задач между 2.1.3. распределенными ресурсами (на примере задачи предобработки спутниковых Исследование технологии решения вычислительно сложных задач с помощью 2.1.3. распределенных вычислений (на примере задачи фильтрации изображений Исследование технологии решения вычислительно сложных задач с помощью 2.1.3. суперкомпьютеров (на примере задачи моделирования трёхмерных случайных Подсистема «Мониторинг залива Петра Великого» в составе ОИАС……………...
Концепция развертывания Grid-инфраструктуры оперативного научного 2.2. мониторинга природных процессов и полей на побережье и акваториях залива Информационный слой «Мониторинг залива Петра Великого» в составе ОИАС… Сейсмоакустические исследования…………………………………………………… Гидросферные исследования…………………………………………………………..
Магнитометрические исследования…………………………………………………..
Исследование откликов землетрясений на МЭС м.Шульца………………………… Метеоизмерения………………………………………………………………………...
Краткосрочные научные эксперименты……………………………………………… Видеомониторинг акваторий…………………………………………………………..
Grid-портал ЦКП ДВО РАН «Биологическая безопасность дальневосточных 2. Web-ГИС система «Чукотское море»………………………………………………… Электронный депозитарий публикаций по океанологии и наукам о О проблеме разработки и поддержки архивов электронных документов………….
Депозитарий полнотекстовых электронных документов по океанологии и наукам 3. Общие сведения о депозитарии………………………………………………………..
Интерфейс пользователя при работе с ресурсами электронного депозитария……..
О возможной взаимосвязи степени использования электронного депозитария с 3.2. публикационной активностью научных подразделений ТОИ ДВО РАН…………. Библиометрический анализ информационных потоков в океанологии и других 3. Список использованных источников……………………………………...……………………
ВВЕДЕНИЕ
Эффективность исследований в океанологии, и, в целом, в области наук о Земле, в значительной мере определяется степенью использования научными специалистами современных информационных технологий и математических методов анализа данных. Так многократно возросшие объемы и многообразие видов данных, которые привлекают океанологи, геологи, геофизики и другие специалисты при исследовании тех или иных пространственно-временных процессов и явлений на земной поверхности или в океане, обусловили необходимость применения современных систем управления базами данных. Для анализа данных, имеющих географическую привязку, а таковыми являются практически все данные в науках о Земле, чрезвычайно актуально использование технологий геоинформационных систем. Большие массивы потенциально полезных данных выставляются в Интернете, что делает актуальным использование современных Web-технологий, в частности, автоматических поисковых систем. В последние годы в мире отмечается тенденция к организации распределенных мониторинговых экспериментов, данные которых должны поступать с мест регистрации в исследовательские центры и обрабатываться в режиме реального времени. Это с особой остротой ставит вопрос о развертывании и использовании эффективной телекоммуникационно-вычислительной инфраструктуры, обеспечивающей оперативную передачу и обработку данных мониторинговых экспериментов.Полученные данные в конечном итоге должны быть проанализированы и интерпретированы специалистами с целью формулирования нового научного или прикладного знания об объекте исследования. На этом этапе следует использовать программные средства, реализующие те или иные математические методы обработки и анализа данных. В последнее время арсенал математических методов существенно расширился. В частности, новый качественный скачок в технологии обработки сигналов и полей обеспечили методы, основанные на применении вейвлетных разложений. Многие актуальные для исследователей задачи автоматической классификации, распознавания образов, моделирования и прогноза могут решаться с использованием технологий искусственных нейронных сетей. В качестве отдельного научного направления сформировалась технология Data Mining, интегрирующая в себе обширную совокупность математических методов, направленных на автоматический поиск закономерностей и отклонений от закономерностей в больших массивах данных. Важным инструментом исследования пространственно-временных процессов и явлений являются программные системы математического моделирования этих явлений. Модели, наилучшим образом воспроизводящие поведение реальных данных, позволяют лучше понять механизмы, обусловливающие возникновение и развитие тех или иных природных феноменов. Необходимость проведения достаточно сложной математической обработки больших массивов объемов информации и применения сложных математических моделей, в частности, моделей нелинейной динамики, обусловила потребность в использовании высокопроизводительных вычислительных средств.
Несмотря на то, что мощности современных персональных компьютеров весьма высоки и быстро растут год от года, всегда остается актуальным применение технологий высокопроизводительных вычислений, в частности, технологий распределенных и суперкомпьютерных вычислений. Эти технологии обеспечивают ученым конкурентоспособные преимущества на временной период в несколько лет перед специалистами, полагающимися лишь на возможности персональных рабочих станций.
Вполне понятно, однако, что ученый, профессионально специализирующийся в той или иной конкретной области знаний в науках о Земле, как правило, не обладает в достаточной мере знаниями в области современных информационных технологий и математических методов, чтобы эффективно реализовать все их преимущества в своей профессиональной деятельности.
Организовать обучение предметных специалистов новым информационным технологиям – не всегда лучший выход, поскольку многие технологии, те же технологии параллельного программирования, очень сложны и непривычны для восприятия. Такое обучение может потребовать неоправданно большого времени и усилий от специалиста в ущерб его основной работе.
Мы полагаем, что наиболее перспективным путем решения проблемы является создание распределенных информационно-аналитических систем, способных по запросам своих пользователей оперативно предоставлять непосредственно на рабочие места все необходимые специалисту данные совместно с программными методиками, наиболее эффективными для проведения аналитической обработки запрошенных данных. Фактически, возможности современных информационных технологий, реализованных в таких системах, будут предоставляться пользователям неявным образом. При этом интерфейс пользователя с системой и программами обработки должен быть максимально упрощен и адаптирован к технологиям, применяемым специалистом в своей предметной области. От пользователя должны быть скрыты технологические особенности реализации системы, он не должен отвлекаться на «несущественные детали», а должен, получив нужную информацию и аналитический инструментарий, полностью сосредоточиться на своей профессиональной сфере.
Очевидно, что наиболее логичным решением является создание таких информационноаналитических систем в виде Web-порталов, функционирующих в глобальной сети Интернет либо локальной сети научного учреждения или научного центра. Web-портал обеспечивает единую точку доступа территориально распределенных пользователей к информационным ресурсам, которые также могут быть территориально разнесены. Однако в «стандартных» Web-системах, как правило, недостаточно проработаны вопросы защиты информации, оптимизации процессов пересылки данных по телекоммуникационным каналам и ряд других вопросов. Как правило, в таких системах размещают информацию, являющуюся результатом обработки, обобщения некоторых исходных данных о состоянии природы, выполненного конкретными людьми или научными группами. Эта информация, безусловно, является полезной для ученых потенциальных пользователей Web-системы, поэтому закономерно, что Интернет-технологии получили самое широкое распространения в научных учреждениях. Вместе с тем ученым хотелось бы иметь системы, которые были бы полезны на этапе непосредственно исследовательской, «оперативной» работы. В них ученые безбоязненно размещали бы исходные, «необработанные»
данные удаленных научных экспериментов, возможно, в режиме реального времени, другие специалисты получали бы эти данные на своих рабочих местах и проводили их аналитическую обработку с использованием алгоритмов, которые бы разрабатывали и предоставляли в пользование третьи специалисты. Эти системы обеспечивали бы возможность выполнения некоторых особо трудоемких задач аналитической обработки либо моделирования природных процессов на территориально разнесенных высокопроизводительных вычислительных комплексах. Учитывая возможность и целесообразность привлечения к «оперативной» работе над комплексной научной проблемой специалистов разных научных направлений, такие системы должны обеспечивать согласованную работу участников «интердисциплинарных» научных групп со всеми информационными, аналитическими и вычислительными ресурсами над задачами общего научного проекта.
Подобный подход к интеграции территориально разнесенных информационных, аналитических, вычислительных и интеллектуальных ресурсов заложен в технологии Grid наиболее современной на сегодняшний день информационной технологии, активно разрабатываемой в России и мире (Фостер, 2002). Название этой технологии основано на ассоциации с процессом взаимодействия человека с энергетической сетью (по-английски Grid’ом) в повседневной жизни: чтобы разогреть обед, человек включает электроплиту в розетку и получает необходимую порцию энергии, нисколько не заботясь о том, откуда и каким именно образом эта энергия будет предоставлена. Grid – территориально распределенная инфраструктура, находящая и использующая информационные, вычислительные, аналитические, телекоммуникационные ресурсы, необходимые для обслуживания запросов своих клиентов.
Существует точка зрения, что технология Grid со временем вытеснит Интернет и все остальные ИТ-технологии, поскольку просто включит их в себя.
Другой активно развивающейся технологией, содействующей интеграции научных исследований, является технология разработки и применения геоинформационных систем, функционирующих в сети Интернет – Web-ГИС систем. ГИС часто определяют как информационные системы, предоставляющие пользователям эффективные средства для ввода, хранения, визуального отображения и анализа разнообразной информации, имеющей географическую (картографическую) привязку, см., например, работу (Коновалова, 1997).
Реализации ГИС в виде Web-системы обеспечивает возможность одновременной работы большого числа научных специалистов с едиными информационными, изобразительными и аналитическими ресурсами геоинформационной системы.
информационно-аналитических систем, основанных на применении Web, ГИС и Grid-технологий.
Помимо того, что все эти системы реально применяются в ТОИ и других институтах ДВО РАН при проведении исследований, полагаем важным сам опыт реализации подобных систем, который может быть использован исследователями, специализирующимися в области океанологии и наук о Земле, при создании новых систем.
В первой главе отчета описываются основные идеи и подходы технологий Grid и Web-ГИС.
Во второй главе описываются разработанные в ТОИ ДВО РАН с их помощью информационноаналитические системы. В третьей главе описывается депозитарий полнотекстовых научных публикаций, разработанный в лаборатории Научно-технической информации ТОИ ДВО РАН.
Депозитарий реализован в виде отдельного Web-портала, его ресурсы активно используются специалистами ДВО РАН, специализирующимися в области океанологии и. в целом, в области наук о Земле.
Результаты данной научно-исследовательской работы существенно использовались при выполнении нескольких госбюджетных и хоздоговорных научно-исследовательских работ, проводившихся в Тихоокеанском океанологическом институте ДВО РАН в период с 2009 по годы. Отдельные результаты, полученные при разработке и пробной эксплуатации информационно-аналитических систем, докладывались на отечественных и международных научных конференциях, публиковались в различных изданиях [1-44].
1 Обзор современных информационных технологий, содействующих интеграции научных исследований Появление и широкое распространение к началу 1990-х годов персональных компьютеров способствовало тому, что вычислительная техника и информационные технологии в целом вошли в стандартный инструментарий научного исследования практически во всех отраслях знания, включая океанологию. Эффективность применения ИТ прежде всего определяется тем, что персональный компьютер предоставил ученому: 1 – возможность на своем рабочем месте и дома накапливать данные предметной области; 2 – возможность накапливать эффективные программные средства анализа данных; 3 – возможность проведения анализа данных с использованием вычислительных ресурсов. Последующий этап интерпретации результатов аналитической обработки данных и формулирования на этой основе нового научного знания, мы считаем, в большей мере должен осуществляться самим ученым на основании его личного опыта и научной интуиции.
Таким образом, персональный компьютер, начиная с 1990-х годов, стал мощным средством поддержки научных исследований. С тех пор информационные технологии еще более развились и поэтому закономерен вопрос, каким должен быть следующий этап в их использовании учеными?
Очевидно, что эффективность исследований можно еще более повысить, если: 1 – предоставлять на рабочее место специалиста все необходимые информационные ресурсы (прежде всего, данные научных экспериментов), имеющиеся в научной организации, стране, мире; 2 – предоставлять наиболее эффективные средства аналитической обработки и визуализации данных, имеющиеся где-либо в локальных и глобальных компьютерных сетях; 3 – предоставлять для проведения анализа данных территориально распределенные вычислительные ресурсы, многократно превосходящие вычислительные возможности одного ПК; 4 - организовывать согласованную работу территориально распределенных специалистов над фундаментальными научными проблемами. Иными словами, следующий этап в использовании ИТ должен быть основан на интеграции информационных, аналитических, вычислительных и интеллектуальных ресурсов.
Если говорить о науках о Земле, в частности, об океанологии, то на сегодняшний день можно отметить два направления реализации такой интеграции.
Первое направление - интеграция ресурсов территориально распределенных ГИС-проектов, поддерживающих единые обменные стандарты. Оно развивается международным сообществом разработчиков и пользователей ГИС, объединившихся под эгидой консорциума OGC (Open Geospatial Consortium). На сегодняшний день в науках о Земле успешно функционируют несколько интеграционных проектов, основанных на иcпользовании технологии OGC.
Второе направление – использование технологии Grid, изначально предназначенной для поддержки интеграционных проектов с большим частником участников, согласованно использующих территориально разнесенные информационные и вычислительные ресурсы.
1.1 Grid-технологии, распределённые и суперкомпьютерные вычисления использованием информационных технологий, таких как СУБД, ГИС, Интернет и других. В последнее время в научной среде резко возрос интерес к так называемым Grid-технологиям, которые по некоторым оценкам придут на смену Интернету, и при этом объединят в себе возможности всех других IT-технологий.
1.1.1 Концепция Grid, архитектура OGSA Впервые концепция Grid была описана американскими учеными Яном Фостером, Карлом Кессельманом, Джефри Ником и Стивом Тукке в [45, 46]. Эта идея зародилась в контексте важной, но относительно узкой проблемы построения сверхмощных вычислительных установок.
В 80-х годах для этого в основном применялись суперкомпьютерные технологии; полученный опыт оказался не только положительным. Пришло понимание, что при высокой цене построенные архитектуры обладают ограниченной масштабируемостью и не успевают за развитием элементной базы. В то же время, для решения ряда задач (прогнозирование природных явлений, обработка данных о высокоэнергетических ядерных реакциях, эволюция галактик и т. п.) требовались вычислительные мощности принципиально нового уровня.
Идея объединения вычислительных технологий с коммуникационными дала в 90-х годах толчок метакомпьютингу как способу соединения суперкомпьютерных центров. В основополагающей работе [47] метакомпьютинг определяется как «использование мощных вычислительных ресурсов, прозрачно доступных посредством коммуникационной среды». В дополнение к прозрачности существенны также такие характеристики, как бесшовность, масштабируемость и глобальность. Таким образом, в парадигме метакомпьютинга предлагалось, скрыв коммуникации, использовать подключенные к сети компьютеры как единый вычислительный ресурс. Основной акцент делался на то, что потенциальный пользователь может получить практически неограниченные мощности для выполнения вычислений и хранения данных.
Начатые в этом направлении работы (Globus [48], Legion, а также ряд других) привели к обобщению идеи метакомпьютинга. Выяснилось, что для программной поддержки распределенной среды необходимо решить широкий круг проблем: связи, безопасности, управления заданиями, доступа к данным, информационного обеспечения. Все они, имея прямые аналоги в операционных системах, потребовали пересмотра в условиях ненадежной, открытой и распределенной глобальной среды. Более того, ее архитектура должна быть расширяемой и способствующей наращиванию функциональности при сохранении работоспособности. Повидимому, именно последнее обстоятельство и привело к современной трактовке понятия Grid.
Речь уже не идет о мощных вычислительных ресурсах метакомпьютинга; в качестве процессорных ресурсов теперь рассматриваются также рабочие станции и ПК. Если организация располагает, скажем, тремя тысячами настольных ПК, то за время их регулярного простоя потерянная производительность может измеряться терафлопами. Однако действительная сила нового определения Grid скрывается за самим словом «ресурсы», которые понимаются предельно широко: это, пожалуй, все, что участвует в компьютерной обработке данных. К ресурсам следует отнести коммуникации, системы хранения, хранилища данных, информационные системы, а также программные фонды. Так, если приложение анализа данных понимать как ресурс, то это означает возможность удаленного доступа к нему без установки на компьютер пользователя.
Выход за рамки задач высокопроизводительных вычислений выявляет реальное содержание Grid как инфраструктуры для поддержки любой глобально распределенной обработки, для множества типов приложений: электронного бизнеса, распределенного производства, исследования данных, системы обработки высокой пропускной способности (high throughput computing, HTC), и, конечно, распределенного суперкомпьютинга. В отличие от метакомпьютинга, для многих приложений, в том числе и с большим объемом вычислений, но с «хорошими»
свойствами (грубо гранулированные, конвейеризуемые), не требуются высокопроизводительные коммуникации; в этом случае в качестве коммуникационной среды может выступать Internet.
В реализации Grid представляет собой инфраструктуру, которая состоит из находящихся в разных местах ресурсов, соединяющих их телекоммуникаций (сетевые ресурсы) и взаимосогласованного по всей инфраструктуре связующего (middleware) программного обеспечения (ПО), поддерживающего выполнение дистанционных операций, а также выполняющего функции контроля и управления операционной средой. Grid создается владельцами ресурсов, выделяющими их в общее пользование. Владельцы и потребители, действующие на основании определенных правил предоставления/потребления ресурсов, образуют виртуальную организацию (ВО).
Grid является средой коллективного компьютинга, в которой каждый ресурс имеет владельца, а доступ к ресурсам открыт в разделяемом по времени и по пространству режиме множеству входящих в ВО пользователей. Виртуальная организация может образовываться динамически и иметь ограниченное время существования.
Таким образом, следуя [46], можно определить Grid как пространственно распределенную операционную среду с гибким, безопасным и скоординированным разделением ресурсов для выполнения приложений в динамически образующихся виртуальных организациях.
В настоящее время у нас в стране и за рубежом уже разрабатывается большое число частных Grid-проектов. Для того, чтобы эти проекты можно было впоследствии интегрировать в единую национальную или общемировую научную Grid-среду, необходимо использовать единые открытые стандарты разработки. Такие стандарты были предложены на четвертом международном форуме Global Grid Forum в феврале 2002 Globus Alliance и корпорацией IBM в виде набора спецификаций OGSA (Ореn Grid Service Architecture) [49].
Основные положения стандарта архитектуры ПО Grid - OGSA следуют объектноориентированной модели и рассматривают в качестве основного объекта Grid службу.
Посредством удаленного обращения к методам службы приложение получает определенный вид обслуживания. Таким образом унифицируются различные функции: доступа к вычислительным ресурсам, ресурсам хранения, базам данных и к любой программной обработке данных.
Архитектура Grid-служб решает важнейшую проблему распределенной среды – проблему интероперабельности - путем стандартизации способа описания интерфейсов служб. В этом отношении OGSA опирается на стандарты Web-служб, в частности на SOAP, WSDL и WSI [50].
унифицированный для всех служб набор методов и соответствующих интерфейсов: обнаружения, динамического создания, управления временем жизни, уведомлений и т.д.
Переход на архитектуру OGSA важен, во-первых, поскольку становится возможным поддержка как научных (E-science), так и производственных приложений (E-business), функционирующих в пространственно распределенной среде Grid. Распределенные приложения, реализованные в виде Grid-служб, обладают четко определенными интерфейсами и могут взаимодействовать между собой по стандартным протоколам. Для прикладного уровня реализация взаимодействия в большой степени автоматизирована и скрыта от разработчика.
Во-вторых, инструментарий для Grid - Globus Toolkit стал расширяемым. Предыдущие его версии содержали ограниченный набор служб (GRAM, GRIS, GIIS, GridFTP). Реализации этих служб были практически независимы друг от друга и имели немного общих методов (за исключением методов протокола безопасности Grid Security Infrastructure), поэтому их разработка, модернизация во многом дублировалась и усложнялась. Архитектура OGSA и инфраструктура OGSI образовали общий контекст, в котором создание новых служб существенно упростилось.
Общие положения способа построения Grid на базе локальных систем управления распределенными ресурсами выглядят следующим образом.
• Модель служб OGSA рассматривается как будущий стандарт всей информационной индустрии, на основе которого будут строиться пространственно распределенные приложения.
Через посредство служб приложения получают унифицированный дистанционный доступ к ресурсам ВО.
• Связующее ПО Grid «склеивает», то есть делает доступными потребителям, географически разнесённые, принадлежащие разным административным доменам ресурсные пулы.
• Средства Grid для сбора и хранения информации снабжают ВО метаданными о ресурсах, услугах и условиях их предоставления. OGSA определяет формат описаний и способ хранения метаданных в реестрах. На основе метаданных работают различные коммунальные службы Grid.
• Защита в ВО базируется на стандарте инфраструктуры безопасности (PKI) Grid, основанном на сертификатах X.509 [51]. PKI поддерживает однократную регистрацию пользователей, которая действует повсеместно, на всех ресурсных пулах.
Благодаря использованию архитектуры OGSA, пакет Globus Toolkit позволяет объединять Grid-ресурсы в масштабах предприятий, городов, регионов и даже стран. Однако в рамках отдельной организации на данном этапе развития нам представляется более удобным использовать локальные системы управления распределёнными ресурсами. В качестве такой системы в ТОИ ДВО РАН было принято решение использовать Condor. Применение данного продукта позволяет с одной стороны использовать свободные компьютеры локальной сети, и с другой стороны в случае необходимости отправлять сложные задания на высокопроизводительные кластеры. Это возможно благодаря разработчикам Condor, которые большое внимание уделяют вопросам совместимости и взаимодействия с пакетом Globus.
1.1.2 Система организации распределённых вычислений Condor Система распределенных вычислений Condor (http://condorproject.org) [52] была создана группой разработчиков Университета Wisconsin-Madison, где и была более 10 лет назад развернута первая конфигурация. Система свободно распространяется в загрузочных модулях для платформ, указанных в таблице 1.
Помимо того, что Condor может управлять специализированными кластерами из рабочих станций, он также может, и в этом его ключевая особенность, задействовать обычные компьютерные ресурсы, доступные в любой лаборатории или офисе. Иногда еще Condor называют «охотником за свободными станциями» – вместо того чтобы запускать задания на своей машине, пользователь обращается к системе, которая ищет временно свободные машины в сети и запускает на них задания. Когда машина перестанет быть свободной (вернувшийся с обеда пользователь нажал клавишу или кнопку мыши, либо машина получила команду выгрузки ОС), Condor прерывает выполнение заданий, осуществляет миграцию на другую свободную машину и перезапускает задание на ней с прерванного места. Если нет свободных машин, то задание помещается в очередь и ждет свободных ресурсов. Предусмотренный в Condor механизм управления заданиями, предполагает ведение очередей, составление расписаний, схему приоритетов и классификацию ресурсов, позволяет пользователю быть в курсе дел о состоянии своих заданий Таблица 1 - Платформы, поддерживаемые системой Condor Sun SPARC Sun4m,Sun4c, Sun UltraSPARC Solaris 8, 9, 10 (using the Solaris 9 binaries) Silicon Graphics MIPS (R5000, R8000, IRIX 6. R10000) При этом Condor не требует включения машин в состав сетевых файловых систем, таких как NFS или AFS, а все станции могут размещаться на разных доменах. Кроме обычного режима обработки контрольных точек с запоминанием состояния Condor может периодически сохранять текущее состояние, что особенно полезно для обеспечения надежности работы в случае сбоя компьютеров из пула или страховки от более прозаических вещей вроде неожиданного выключения станции без операции «shutdown».
Кроме выполнения миграции на свободные машины Condor обеспечивает управление распределенными ресурсами. Condor полностью автоматизирует процесс распределения заданий, используя для этого объектную технологию ClassAds [52]. Данная технология работает подобно газетному рекламному классификатору. Все машины, доступные пулу Condor объявляют (рекламируют) свои возможности в рубрике «Предложение»: объем памяти на диске, тип и быстродействие процессора, объем виртуальной памяти, средняя загрузка и т.п. С другой стороны, пользователь описывает потребности своего задания в рубрике «Запрос ресурсов». Condor работает в роли брокера, удовлетворяющего заявки из рубрики «Запрос ресурсов» ресурсами, представленными в рубрике «Предложение». Одновременно система обеспечивает ведение нескольких уровней приоритетов рассмотрения заявок: приоритет назначения ресурсов, приоритет использования и приоритет среди машин, удовлетворяющих одинаковым заявкам.
Система не требует использовать какое-либо специальное ПО и способна выполнять обычные UNIX и Windows-программы, пользователю может понадобиться только пересобрать свою задачу с библиотеками Condor. Если этого не сделать, часть возможностей системы будет не доступна. Права хозяев рабочих станций, включенных в пул Condor ни в коей мере не ущемляются – они могут использовать свои машины без каких-либо ограничений и при этом с их стороны не требуется специальных усилий по дополнительному администрированию.
Аппаратная архитектура системы включает три типа компьютеров (рисунок 1), объединенных в единый пул Condor: центральный менеджер (Central Manager), выполняющие машины (Execute Machine), запускающие машины (Submit Machine).
Рисунок 1 - Архитектура системы распределенных вычислений Condor Центральный сервер - один компьютер в пуле должен выполнять функции менеджера, собирающего информацию о всех машинах и выступающего в роли брокера между имеющимися ресурсами и пользователем.
Выполняющая машина - любая машина в пуле, в том числе центральный сервер и запускающая машина, может быть сконфигурирована для выполнения заданий Condor.
Запускающая машина - любая машина из пула, с которой осуществляется запуск задания.
При запуске заданий в Condor (версия 6.6.9) можно использовать шесть различных режимов работы: «Standard», «Vanilla», «PVM», «MPI», «Grid» и «Java». Режим «Standard» обеспечивает максимально возможные средства миграции и надежности выполнения задания, однако, при его использовании имеются некоторые ограничения на тип запускаемых программ, в частности на данный момент нет возможности использовать этот режим для запуска Windows-программ. Режим «Vanilla» предоставляет более бедные возможности, но и не накладывает на программы существенных ограничений. Режим «PVM» предназначен для программ, использующих интерфейс Parallel Virtual Machine, а «MPI» нужен для программ, работающих под MPICH. Режим вычислительных ресурсах, доступных посредством стандартных протоколов пакета Globus.
На данный момент утилиты для управления с командной строки - это основное стандартное средство управления системой. С помощью команды «condor_submit» пользователь размещает свое задание в Condor, указывая выполняемый файл, имена файлов потокового ввода/вывода для клавиатуры и экрана (stdin и stdout) и адрес email для оповещения о завершении задания. Можно также указать сколько раз надо выполнять программу, какие данные при этом надо использовать, какой тип машины требуется для запуска задания, имя выполняемой задачи, исходные рабочие каталоги, командную строку. На основе данной информации создается новый объект ClassAd, который передается демону condor_schedd, выполняемому на запускающей машине.
В процессе выполнения задания пользователь может наблюдать за ходом работы с помощью команд «condor_q» и «condor_status» и, возможно, модифицировать задание. Если потребуется Condor может также посылать уведомления о всех изменениях состояния задания: обработка контрольной точки, миграция на другую машину, размещение в очередь ожидания и т.п. Полный список доступных машин можно получить по команде «condor_status -submitters»:
% condor_status –submitters Для идентификации выполняемых работ можно использовать команду «condor_q»:
-- Submitter: myhst.mydmn : : myhst.mydmn
ID OWNER SUBMITTED RUN_TIME ST PRI SIZE CMD
Колонка ST (status) показывает состояние задания в очереди: «U» – выполнение без контрольных точек; «R» – выполнение в данный момент; «I» – выполнялось ранее, а сейчас в контрольной точке и ожидания свободной машины. Эту же информацию можно получить в файле состояния «log».Каждому пользователю назначается определенный приоритет, который изменяется системой автоматически с целью обеспечить справедливый доступ к распределённым ресурсам. В результате такого подхода при стандартных настройках задачи, запущенные человеком, редко пользующимся услугами системы, будут обработаны раньше и быстрее, чем задания активного пользователя.
После завершения работы Condor уведомляет пользователя сообщением email, сообщая ему число процессоров, задействованных при счете и общее время нахождения задания в пуле. Можно удалить задание, не дожидаясь завершения (команда «condor_rm»).
Альтернативный не так давно появившийся способ управления системой Condor – это использование современной технологии web-служб (web-services). В этом случае ClassAd с описанием задания в XML-формате напрямую передаётся демону condor_schedd с удалённой машины при помощи современного протокола SOAP [50]. Кроме этого, аналогично можно посмотреть список заданий в очереди, узнать текущее состояние компьютеров-клиентов системы, прервать, приостановить или продолжить выполнение того или иного задания. Что радует, список доступных таким образом функций постоянно расширяется. Такой подход позволяет удобно организовать удалённый доступ к распредлённым ресурсам, управляемым системой. Одно из его несомненных достоинств – это использование в качестве транспорта стандартных протоколов сети Интернет, а именно HTTP.
Отметим, что возможность управления системой Condor с помощью SOAP-запросов появилась не так давно и сейчас всё ещё находится в стадии разработки, в связи с этим она обладает несколько ограниченной функциональностью по сравнению с утилитами командной строки.
Задания, находящиеся в очереди и имеющие одинаковый приоритет и требования к аппаратным ресурсам, в общем случае могут выполняться не в том порядке, в каком они были добавлены в очередь. Если задачи независимы, это не доставляет особых проблем. Однако иногда важно указать порядок выполнения заданий, например, в случае, когда одна задача использует результат работы нескольких других заданий. Специально для этого в системе Condor есть специальное средство – мета-планировщик DAGMan [52] (Directed Acyclic Graph Manager). Он позволяет очень гибко задавать порядок выполнения задач - в виде ориентированного ациклического графа, где в узлах располагаются описания заданий или указания по перемещению данных между компьютерами сети.
Изначально разработка Condor носила исследовательский характер и только совсем недавно, под влиянием возрастающего интереса к распределенным вычислениям (метакомпьютингу) разработчики получили достаточное финансирование, позволяющее существенно развить функциональность системы и повысить ее надежность. А пока в текущих версиях имеется ряд существенных ограничений.
В задании нельзя указывать вызовы fork(), exec(), system() – допускается работа только одного процесса. Нельзя организовать взаимодействие процессов через семафоры, конвейеры и разделяемую память. Не поддерживаются такие функции как таймеры, будильники и ждущие процессы: alarm(), getitimer() и sleep(). Несмотря на то, что в Condor поддерживаются сигналы и их дескрипторы имеются зарезервированные сигналы SIGUSR2 и SIGT-STP, которые нельзя использовать в коде пользовательских программ.
Condor поддерживает следующие способы аутентификации пользователей: GSI, Kerberos, File System, Windows, Anonymous. Есть возможность ограничивать доступ как на уровне пользователей, так и на уровне узлов.
По умолчанию, система Condor конфигурируется так, чтобы позволить любому желающему видеть состояние работы в пуле, однако, при необходимости этот режим можно изменить, предусмотрев, например, различные уровни доступа. В системе можно установить следующие уровни доступа: READ, WRITE, ADMINISTRATOR, OWNER, NEGOTIATOR.
READ - машины с таким доступом могут только читать информацию из Condor, например:
статус пула, очередь заданий и т.п., ничего не меняя. WRITE – доступ для записи, что означает возможность обновления ClassAd и инициацию других машин на выполнение задания. Кроме того, машины с уровнем WRITE могут запрашивать демон startd для периодического выполнения записи по контрольной точке любого задания. ADMINISTRATOR – изменение приоритетов пользователя, активация или исключение машины из пула, запрос на реконфигурацию, рестарт и т.п. OWNER – уровень пользователя-владельца машины. NEGOTIATOR – специальный уровень доступа, означающий, что специальные команды работы с пулом (например опрос состояния) будут обрабатывать только если они пришли от центрального сервера. Можно указать перечень команд, разрешенных для исполнения. Уровень NEGOTIATOR автоматически назначается системой, остальные четыре уровня обычно прописываются в файле конфигурации. Права ADMINISTRATOR по умолчанию принадлежат только центральному менеджеру, OWNER – выполняющей машине.
Текущая стабильная версия Condor 6.6.9 для Windows поддерживает не все функции доступные, например, в Linux-версии. Пока не реализованы режимы Standard, PVM и Globus.
Работает только режим Vanilla, что означает отсутствие возможностей работы с контрольными точками, миграции и RSC. Доступ к разделяемым файлам по сети возможен только средствами NT Server, Novell Netware и AFS. Все файлы, необходимые для работы задания должны размещаться только на локальных дисках запускающей машины – Condor NT автоматически передает файлы на выполняющий компьютер. Имеются определенные ограничения на передачу данных между запускающей и выполняющей машиной, например можно передавать только файлы, а не каталоги.
Нельзя также выполнять задания с теми же правами как и у пользователя, работающего на запускающей машине. Вместо этого Condor динамически создает и запускает задания в специальном разделе, имеющем минимальные права доступа.
В одном пуле Condor могут сосуществовать одновременно Unix и NT машины. Единственное ограничение – задания, запущенные с NT-машины должны выполняться только на NT, аналогично и для Unix машин. При этом в гетерогенной среде может быть только один центральный менеджер Condor, работающий на любой из двух платформ.
Разделяемая файловая система в версии для NT пока не реализована, поэтому для передачи файлов используется механизм Condor File Transfer.
1.1.3 Инструментальный пакет разработки Grid-приложений Globus Toolkit Globus Toolkit - набор программного обеспечения и служб, созданный объединением Globus Alliance (Argonne National Laboratory, University of Chicago, University of Edinburgh, National Center for Supercomputing Applications).
программного обеспечения стандартом де-факто для построения Grid-систем. Последняя версия этого пакета Globus Toolkit 4 (GT4) включает средства разработки служб в соответствии со стандартом OGSA (Open Grid Services Architecture), среду их функционирования, а также базовый набор служб: управления заданиями, передачи файлов, информационного обслуживания и безопасности (см. рисунок 2). В GT4 имеется три основных функции:
управление ресурсами (Resource Management) для нахождения компьютеров, хранилищ, инструментария, сетевых ресурсов и программного обеспечения;
информационные службы (Information Services) для описания этих ресурсов;
управление данными (Data Management), позволяющее пользователям иметь доступ и обрабатывать информацию, сгенерированную ресурсами.
В четвёртой версии Globus Toolkit большинство служб в соответствии с архитектурой OGSA основано на технологии Stateful Web Services (web-службы с сохранением состояния) [53], которая представляет собой расширение широко используемой в настоящее время Web Services. Основное отличие заключается в возможности сохранения пользовательских переменных (объектов) в виде ресурсов на сервере. Важная особенность технологии Stateful Web Services и архитектуры OGSA в целом заключается в том, что применяемый для отправки запросов и получения результатов протокол SOAP использует в качестве транспорта стандартный протокол сети Интернет – HTTP. В виду распространённости этот протокол чаще всего разрешён на всевозможных firewall’ах и прокси-серверах, таким образом упрощается организация взаимодействия между Grid-сервисами, работающими на компьютерах в различных локальных сетях. Другая характерная особенность – это разделение интерфейсов и программного кода служб. Интерфейсная часть описывается отдельно с помощью специального языка WSDL (Web Services Description Language). Такое решение позволяет обеспечить взаимодействие клиентской программы и веб-службы независимо от языков, использованных при их разработке, и среды, в которой они функционируют. Это помогает реализовать такое важное для Grid-технологий свойство как многоплатформенность.
Компоненты Globus Toolkit 4 в зависимости от выполняемых функций можно поделить на 5 категорий:
Common runtime – набор основых библиотек и средств, используемый остальными компонентами;
Information services - информационные службы, предназначены для обнаружения и мониторинга ресурсов;
Execution management - управление выполнением заданий, предназначены для запуска, мониторинга, управления, планирования и координации программ пользователей;
Data management - управление данными, предназначены для управления массивами данных, в том числе большими;
Security – безопасность, для организации контролируемого доступа к Grid-ресурсам, защищённой передачи данных.
Рассмотрим более подробно службы, входящие в каждую из групп.
Security. На самом нижнем уровне компоненты инфраструктуры безопасности реализуют форматы полномочий (credentials) и протоколы, которые обеспечивают защиту сообщений, аутентификацию, делегацию и авторизацию. В стандартной конфигурации GT4 предполагается, что каждый пользователь и сервис имеют пару ключей в соответствии со стандартом X.509.
Используемые протоколы позволяют любым двум объектам Grid-сети проверять полномочия друг друга, создавать защищённый канал для обмена сообщениями, создавать и пересылать делегированные полномочия, которые позволяют удалённому компоненту в течение ограниченного периода времени действовать от имени пользователя. Механизмы авторизации используются для определения возможности выполнения конкретных операций.
Утилиты из комплекта GT4, а также доступные из внешних источников, обеспечивают генерацию, хранение и извлечение ключей и соответствующих им полномочий, а также решают сопутствующие вопросы, такие как поддержка групп безопасности.
Data management. Одной из особенностей Grid-систем является необходимость управлять большими объёмами данных, физически расположенных на одном или нескольких устройствах, предоставлять доступ к этим данным, объединять их. «Проблема данных» очень обширна и сложна, и не может быть решена с помощью какой-либо одной программы в более-менее общем смысле. В состав GT4 входит несколько компонент, которые могут использоваться индивидуально или в комплексе с другими компонентами для разработки интересных решений.
Компонент GridFTP предоставляет библиотеки и утилиты для надёжной, безопасной, высокопроизводительной память-память и диск-диск передачи данных. Он представляет собой ряд расширений к популярному протоколу FTP и в связи с этим может взаимодействовать с обычными FTP-клиентами и серверами.
Компонент RLS (Globus Replica Location Service) - это высокомасштабируемая и надёжная система для обслуживания и предоставления доступа к информации о местонахождении реплицированных файлов и наборов данных.
Компонент DAI (Globus Data Access and Integration), разработанный в рамках программы UK eScience, предоставляет доступ к реляционным и XML-данным.
Execution management. Компонент GRAM (Globus Resource Allocation and Management) предназначен для использования в ситуациях, когда важны возможности запускать произвольные программы, осуществлять мониторинг задач, управлять полномочиями, закачивать/скачивать с сервера файлы и взаимодействовать с локальными менеджерами задач (scheduler). GRAM обеспечивает такую функциональность за счёт создания специального объекта ManagedJob для каждого полученного задания. Используя указатель на этот объект, клиент может узнавать текущее состояние задачи, завершать задачу, "подключаться" к задаче, чтобы получать извещения об изменениях её состояния, просматривать информацию, выводимую задачей. Клиент также может передавать этот указатель другим клиентам, которые в случае успешной авторизации могут выполнять все перечисленные действия.
Information services. Мониторинг и обнаружение – две жизненно важные функции распределённых систем, особенно когда система располагается на нескольких пространственно разделённых компьютерах разных организаций, так как в таком случае вряд ли найдётся человек, детально представляющий себе архитектурах обеих систем. Мониторинг позволяет выявить и диагностировать многие проблемы возникающие в подобных конфигурациях. Служба обнаружения позволяет нам найти службы или аппаратные ресурсы с нужными свойствами. Обе задачи требуют возможности собирать информацию со множества источников, возможно распределённых.
Вследствие важности этих функций, механизмы мониторинга и обнаружения реализованы на базовом уровне GT4 следующим образом:
1) GT4 предоставляет стандартизированные механизмы для связи записей о ресурсах с объектами сети и для доступа к этим записям либо в режиме запроса, либо в режиме 2) GT4 предоставляет 3 службы-агрегатора, которые собирают свежую информацию о состоянии зарегистрированных источников;
3) GT4 предоставляет ряд веб-интерфейсов, утилиты командной строки и интерфейсы вебслужб, которые позволяют пользователю опрашивать ресурсы и просматривать собранную информацию.
Геоинформационные системы (ГИС) представляют собой информационные системы, предоставляющие пользователям эффективные средства для ввода, хранения, визуального отображения и анализа разнообразной информации, имеющей географическую (картографическую) привязку. Применение ГИС особенно актуально для научных учреждений, занимающихся исследованием различных аспектов состояния окружающей среды на больших по протяженности территориях. При этом, помимо того, что каждый сотрудник получает в распоряжении широкий набор апробированных инструментальных средств для визуализации и анализа своих данных, появляются новые возможности для организации междисциплинарного взаимодействия разных научных групп, объекты исследований которых находятся в одних и тех же географических районах. Очевидно, в наиболее полной мере преимущества ГИС-технологий могут быть реализованы при использовании многопользовательских ГИС, допускающих одновременную работу с единым массивом данных большого числа специалистов. Однако, вплоть до последнего времени такие системы были очень дороги, что сдерживало их применение в научных учреждениях страны.
Ситуация переменилась в конце 1990-х годов, когда в научных учреждениях стали разворачиваться высокоскоростные локальные вычислительные сети, имеющие доступ к глобальной сети Интернет. В это же время стало интенсивно развиваться новое направление в ГИС-проблематике - ГИС на основе технологий Интернет/Интранет, или Web-ГИС. Фактически такие системы представляют собой Web-сервера, позволяющие пользователям со своих персональных компьютеров с помощью стандартного Web-интерфейса выполнять операции, присущие обычным ГИС. Производительность и функциональные возможности таких ГИС быстро становятся сравнимыми с возможностями традиционных ГИС, по крайней мере, при работе в локальной сети учреждения (Интранет-сети). Преимущества же ГИС/Интернет-систем очевидны: они дешевле, допускают многопользовательскую работу, их интерфейс прост и привычен пользователям. Архитектуры ГИС/Интернет систем благодаря универсальности лежащих в их основе Web-технологий открыты для постепенного наращивания функциональных возможностей.
Все возможные виды Web-ГИС системы по их архитектуре можно разделить на два класса [54]: серверные системы и системы клиент-сервер. Структура серверной схемы приведена на рисунке 3. По запросу пользователя географическая информация (ГИ) выбирается из удаленной БД и обрабатывается на ГИС сервере. Затем картографический результат преобразуется в растровое изображение и пересылается пользователю. Просмотр данных осуществляется с помощью стандартных Web-браузеров. Эта технология, по-видимому, обеспечивает наиболее простой подход к публикации ГИ в сети Интернет: на сервере можно использовать настольные ГИС, поскольку отсутствует прямой доступ к базе банных, то данные достаточно просто защитить от несанкционированного доступа. Вместе с тем имеется ряд принципиальных ограничений:
значительные времена ожидания на каждой транзакции при передаче большого растрового изображения от сервера к клиенту, низкая интерактивность при обслуживании динамических запросов и при выполнении операций, ограниченный интерфейс пользователя, ограниченное качество графики, обусловленное передачей данных в наиболее типовых форматах GIF и JPG.
Схема клиент-сервер (рисунок 4) позволяет обеспечить неограниченную интерактивность картографического исследования, пространственно-временной обработки и анализа ГИ. Часто клиентская часть сетевой ГИС реализуется в виде программы на языке Java и включается в Webстраницу. При загрузке такой страницы система автоматически загружается на компьютер пользователя и начинает работу с данными, получаемыми от геосервера.. Такие программы называются апплетами. Апплеты могут работать на всех платформах, на которых установлены стандартные средства сети Интернет. При этом быстродействие выполнения всех ГИС функций определяется только параметрами компьютера пользователя Рисунок 4 - «Клиент-серверная» схема реализации Web-ГИС систем Подобные Web-ГИС системы в начале 2000-х готов стали активно разрабатываться в различных научных учреждениях, прежде всего, специализирующихся в области наук о Земле.
Вместе с тем разными организациями предпринимались попытки создания и продвижения универсальных инструментальных систем проектирования и реализации Web-ГИС систем. Со временем определились лидеры: Web MapServer [55] и GeoServer [56]. На Web-сайтах этих систем (см. рисунки 5,6) содержится вся необходимая информация и программные компоненты, позволяющие пользователям создавать, настраивать и сопровождать собственные Web-ГИС системы. В настоящее время значительная часть реально действующих Web-ГИС разработана с использованием этих инструментальных пакетов.
Как правило, Web-ГИС система, разрабатываемая в научной организации, разворачивается на одном из компьютеров в локальной сети организации, и на этом же компьютере разворачиваются базы данных, которыми оперирует система. Это обеспечивает высокую скорость обслуживания запросов пользователей внутри сети.
Рисунок 5 - Начальная страница сиcтемы MapServer - http://mapserver.org/ Рисунок 6 - Начальная страница системы GeoServer - http://geoserver.org Хорошая идея – создавать в организации комплексные Web-ГИС системы, оперирующие всеми пространственно координированными данными, представляющими интерес для сотрудников института. Вместе с тем, многие потенциально полезные для учреждения данные могут быть размещены в других Web-ГИС системах, развернутых в этом же учреждении, других научных учреждениях либо где-нибудь еще в сети Интернет. В связи с этим актуальна задача интеграции ресурсов территориально разнесенных Web-ГИС. Она может быть реализована в том случае, если все взаимодействующие системы поддерживать некоторый набор единообразных стандартов и обменных сервисов.
Общие принципы и стандарты в области разработки программного обеспечения картографических веб-сервисов разрабатываются и декларируются международной некоммерческой организацией Open Geospatial Consortium (OGC), официальный сайт организации - www.opengeospatial.org [57]. Она была основана в 1994 году и на момент создания включала только восемь членов. С 1992 по 2004 год их число возросло до 250, и на сегодняшний день в OGС представлены крупнейшие коммерческие, академические и государственные организации, занимающиеся разработкой или исследова ниями в области геоинформационного ПО (в том числе Boeing, Oracle, ESRI, MapInfo, Intergraph, Google). Одной из первых разработок OGC были стандарты GML - Geography Markup Language - языка группы XML, предназначенного для описания географически привязанных объектов. GML может быть использован и как язык моделирования, и как язык передачи геопространственной информации в Интернет.
вебсервисов:
1. Web Map Service ( www.opengeospatial.org/standards/wms ) :
определяет параметры запроса и предоставления картографической (геопространственной) информации в виде графического изображения или набора объектов;
описывает условия получения и предоставления информации о содержимом карты (например, свойства объекта в определенном месте на карте);
характеризует условия получения и предоставления информации о возможностях сервера по представлению различных типов картографической информации.
2. Web Feature Service ( www.opengeospatial.org/standards/wfs ) :
определяет условия получения и обновления пространственно привязанной информации клиентской частью приложения с использованием Geography Markup Language (GML);
описывает стандартный интерфейс доступа к данным и манипуляции с географическими объектами с помощью HTTP протокола.
3. Web Coverage Service ( www.opengeospatial.org/standards/wcs ) :
расширяет возможности WMS для предоставления растровой географической информации;
в отличие от WMS, Coverage Service служит для представления свойств и значений в каждой конкретной точке географического пространства, а не для создания готовых картинок, а также позволяет проводить интерпретацию данных не на сервере, а на клиентской части приложения.
На рисунке 7 демонстрируется базовая идея - использование при построении многослойных отображений информационных слоев Web- ГИС проектов, поддерживающих спецификации WMS и WFS. Слева отображена основная Web- ГИС, развернутая в локальной сети научной организации. Пользователь, руководствуясь некоторыми собственными соображениями, заказал многослойное отображение на некотором участке земной поверхности. При его построении 4 слоя были созданы из данных, хранящихся в локальных БД основной системы.
Недостающие слои многослойного отображения были подгружены из удаленных Web-ГИС с использованием обменных спецификаций WMS/WFS.
Рисунок 7 - Схема построения многослойных отображений с использованием данных удаленных Web-ГИС систем, поддерживающих обменные спецификации WMS и WFS На рисунке 8 демонстрируется отличие спецификаций WMS и WFS. При выполнении WMS запроса принимающей ГИС передается растровый образ запрошенного у удаленной ГИС информационного слоя. При попытке масштабирования построенного таким образом многослойного отображения растровые образы данных могут выглядеть искаженно (левая картинка). При выполнении WFS запроса осуществляется полноценная передача векторных графических объектов вместе с атрибутивной информацией по каждому объекту. При масштабировании таких отображений на принимающей данные ГИС визуальные артефакты уже не возникают (картинка справа). Кроме того, атрибутивные данные переданного WFS слоя могут подвергаться математической обработке совместно с атрибутивными данным собственных слоев, например, могут оцениваться корреляционные связи между данными, расположенными на территориально разнесенных ГИС-серверах.
Рост популярности картографических веб-сервисов порождает все большее число модификаций существующих языков и стандартов передачи пространственных данных, которые разрабатываются консорциумом OGC и другими организациями.
Рисунок 8 - Различие спецификаций WMS (слева) и WFS (справа) при визуальном отображении переданных с удаленного ГИС-сервера информационных слоев 2 Разработанные в ТОИ ДВО РАН информационно-аналитические системы поддержки океанологических исследований В отчетный период в ТОИ ДВО РАН поддерживались и совершенствовались ранее разработанные информационно-аналитические системы, основанные на применении Web, ГИС и Grid технологий, а также разрабатывались новые.
2.1 Океанологическая информационно-аналитическая система ДВО РАН 2.1.1 Общие сведения об ОИАС ДВО РАН В отделе Информационных технологий ТОИ ДВО РАН в 2001 году был разработан и выставлен для апробации в корпоративной сети института рабочий макет геоинформационной системы по Северо-западной части Тихого океана. ГИС была реализована в форме Web-проекта, что обеспечило коллективный доступ всех заинтересованных сотрудников института к ее информационным и аналитическим ресурсам. Со временем рабочий макет ГИС пополнялся новыми данными, средствами их визуального отображения и аналитической обработки. По мере развития компьютерной сети ДВО РАН ресурсы ГИС становились доступными специалистам других институтов ДВО РАН. Начиная с 2006 года, данный проект позиционируется как океанологическая информационно-аналитическая система (ОИАС) ДВО РАН, основанная на Web, ГИС и Grid-технологиях.
ОИАС предоставляет непосредственно на рабочие места научных специалистов в институтах Дальневосточного отделения РАН: 1 - обширные массивы данных о состоянии морского дна, водной среды и атмосферы на акваториях дальневосточных морей; 2 - наглядные средства их совместной картографической и общенаучной визуализации; 3 - эффективные программные методики анализа данных и моделирования; 4 распределенные и аналитических задач особо высокой вычислительной сложности. Концепцию ОИАС поясняет рисунок 9.
Работа пользователей с ресурсами ОИАС ведется с помощью единообразного интуитивно понятного веб-интерфейса, скрывающего технические детали организации доступа к ресурсам.
Основной массив данных хранится на базовом сервере ОИАС, кроме этого организованы интерфейсы к нескольким удаленным хранилищам данных в сети ДВО, в частности, данным спутниковых наблюдений и сейсмоакустическим данным. Разработана и используется система мониторинга актуальных океанографических ресурсов Интернета, новая информация их которых по мере поступления автоматически скачивается на основной сервер ОИАС и становится доступной пользователям системы. С 2007 года в ОИАС действует основанная на Grid-сервисах технология доступа к оперативным данным удаленных научных экспериментов.
Рисунок 9 - Концепция ОИАС - предоставление распределенных в сети ДВО РАН информационных, аналитических и вычислительных ресурсов научным специалистам ДВО РАН, заинтересованным в исследовании дальневосточных морей России В ОИАС действует специальная система распределения прав доступа пользователей к данным, программным и вычислительным ресурсам, призванная привлечь к участию в проекте ОИАС вместе со своими ресурсами большее число специалистов и научных групп. Пользователи, не прошедшие регистрацию, имеют доступ к очень ограниченному подмножеству ресурсов. После прохождения регистрации пользователю назначается одна из четырех базовых «политик доступа».
Политика 1 – предназначена для внешних по отношению к сети ДВО РАН интернетпользователей, предоставляет доступ только к «открытым» данным.
Политика 2 – предназначена для сотрудников «дружественных» по отношению к ДВО РАН организаций, список таковых устанавливается администратором ОИАС по согласованию с ведущими специалистами, об изменениях в списке информируются владельцы данных (сейчас это институты РАН и вузы Владивостока).
Политика 3 – для сотрудников институтов ДВО РАН.
Политика 4 – для сотрудников ТОИ ДВО РАН.
В каждый момент времени пользователь может проверить «профиль» своей персональной политики. Последний представляет собой список всех информационных слоев ОИАС с указанием уровня доступа к слою на различных уровнях абстракции данных (считывание данных, редактирование данных, просмотр картографических проекций с максимальным разрешением, просмотр Preview-образов), а также электронные адреса владельца данных.
При желании получить расширенный доступ к некоторым данным пользователь может напрямую электронным письмом обратиться к владельцам данных. Для последних в ОИАС реализован специальный интерфейс, позволяющий просматривать статистику обращений к персональным данным и возможность редактирования уровня доступа к ним для зарегистрированных в системе пользователей. Таким образом, базовый профиль персональной политики пользователя со временем может трансформироваться, причем, как правило, в сторону увеличения прав доступа. В отношении программных средств аналитической поддержки ОИАС, придаваемых различным видам данных, реализуется подобная же система разграничения прав доступа.
Специалисты, желающие представить в ОИАС свои информационные или аналитические ресурсы, сопровождают их описанием назначения, описанием условий использования и контактной информацией для личного согласования условий доступа. Кроме этого указывается номер базовой политики, которая должна применяться по отношению к размещаемому ресурсу.
Таким образом, условия доступа полностью регламентируются владельцами размещаемых ресурсов, а программное обеспечение ОИАС гарантирует соблюдение установленных правил доступа.
На рисунке 10 представлено основное окно ОИАС при работе зарегистрированного в системе пользователя. В нем представлен перечень web-ссылок, назначение которых поясняется ниже.
«Интерактивная карта» - вызов картографического сервиса ОИАС.
«Архив океанологических данных» - вызов информационного окна с метаданными ОИАС (информацией об имеющихся данных: их назначении, структуре, владельцах, условиях доступа и т.д.) «Аналитическая поддержка” – вызов окна подсистемы аналитической поддержки ОИАС. В нем пользователь может получить информацию о программах аналитической обработки данных, хранящихся в ОИАС, скачать эти программы на свой компьютер для последующего использования.
«Мониторинг залива Петра Великого» - вызов подсистемы оперативного мониторинга залива Петра Великого (будет описана в раздел 2.2 настоящего отчета).
Рисунок 10 - Основное окно ОИАС при работе зарегистрированного пользователя «Видеомониторинг» - вызов подсистемы оперативного видеонаблюдения акваторий залива Петра Великого. Эта же ссылка представлена внутри вышеупомянутой системы научного мониторинга залива.
«Моделирование» - вызов подсистемы численного моделирования океанических процессов в морях и прибрежных акваториях дальневосточного региона. Предполагается, что пользователи ОИАС смогут подготавливать и запускать на выполнение различные модельные задачи.
Подсистема находится в стадии разработки, в настоящее время проводятся работы по реализации в ОИАС системы моделирования гидродинамичекских процессов в заливе Петра Великого на базе популярной системы моделирования ROMS (Regional Ocean Modeling System) [58].
«Обучающая система» - вспомогательная подсистема, в которой описывается порядок работы пользователей с основными элементами ОИАС.
«Административная панель управления» - вспомогательная подсистема для пользователей, наделенных правами администратора (используется для регистрации в ОИАС новых типов данных и аналитических программ, для редактирования политик доступа к данным и т.д.) «Электронная библиотека» - вызов электронной библиотеки, сопровождающей ОИАС.
Обычные пользователи могут запрашивать, скачивать либо читать на экране компьютера полнотекстовые научные статьи по различным разделам океанологии и информационных технологий. Пользователи с правами администратора библиотеки могут вносить в нее новые полнотекстовые публикации.
«Grid-портал "Биологическая безопасность ДВ морей РФ"» - вызов информационноаналитической системы, разработанной для поддержки Целевой комплексной программы ДВО РАН "Биологическая безопасность ДВ морей РФ". Будет описана в раздел 2.3 отчета.
«Проект CEARAC "Мониторинг нефтяных загрязнений методами дистанционного зондирования"» - вызов информационной системы, разработанной совместно с отделом Спутниковой океанологии ТОИ ДВО РАН.
«Проект SIMP "Слики, как индикаторы морских процессов"» - вызов информационной системы, разработанной совместно с отделом Спутниковой океанологии ТОИ ДВО РАН.
«Дополнительные ссылки» - вызов информационного окна со ссылками на другие интернет-проекты, которые могут представлять интерес для пользователей ОИАС.
Картографический сервис ОИАС подобен применяемым в обычных ГИС, в частности, допускает конструирование пользователем произвольных многослойных отображений различных видов данных. Пользователю предоставляются удобные средства навигации в картографическом окне, изменения масштабов, выбора требуемых географических регионов. Отображение информации осуществляется в виде накладывающихся информационных слоев, выбираемых пользователем. Слои сгруппированы в тематические группы. Имеется т.н. группа основных слоев (географические названия стран и морей, очертания берегов, батиметрия); климатология; геология и геофизизика, данные морских научных экспедиций, спутниковые данные по тепловой излучательности поверхности океана; данные спутниковой радиометрии поверхности океана.
Большинство информационных слоев помимо пространственной привязки имеет временную привязку (т.е. слои представлены данными, изменяющимися по годам и месяцам, среднемесячными либо среднесезонными данными). Соответственно в ОИАС реализованы механизмы организации запросов к этим слоям с учетом временных критериев. Всего в настоящее время в ОИАС поддерживаются 40 информационных слоев общим объемом около 1 Tб. Кроме этого для авторизованных пользователей имеется возможность организации и поддержки средствами ОИАС собственных информационных слоев. Права на просмотр этих слоев принадлежат их автору, но при необходимости могут передаваться другим пользователям ОИАС.
мимо визуального отображения пространственно-координированной информации пользователю предоставляется возможность получить атрибутивную информацию по любой географической точке региона в специальном информационном окне. При необходимости пользователь, обладающий соответствующими правами доступа, может получить требуемую информацию по указанному географическому региону в виде файла данных либо растрового изображения.
Работу пользователя с картографическим сервисом ОИАС поясняет рисунок 11. На нем представлены конфигурации окон системы при отображении карты донных осадков в Японском море, карты расположения гидрологических CTD станций, выполненных в 1958 году (данные берутся из интегрированной в ОИАС БД WOD 2001, поддерживаемой Национальным центром океанографических данных США), запросе и отображений данных спутниковых наблюдений поверхности океана. Кроме этого, в окне вверху справа приведен пример обработки запрошенных спутниковых данных с помощью одной из программ системы аналитической поддержки ОИАС.
На нем с помощью процедур математической морфологии на спутниковом снимке локализуется и автоматически описывается крупный нефтяной разлив.
Рисунок 11 - Примеры рабочих окон ОИАС при работе пользователя с ее ресурсами Как упоминалось ранее, проект ОИАС является развитием проекта корпоративной океанологической ГИС Тихоокеанского океанологического института ДВО РАН и в текущем варианте он унаследовал основные элементы ранее созданной ГИС. Эта ГИС была подробно описана в отчете ТОИ [59] и в нашей статье [60]. Поэтому далее приведем только новые результаты, связанные с совершенствованием этой ГИС, реализацией в ней элементов ГИС и Gridтехнологий.
Ранее отмечалось, что ОИАС относится к классу Web-ГИС систем. В последние годы такие системы активно разрабатываются у нас в стране и мире. В начале 2000-х годов международным консорциумом OGC была предложена технология взаимодействия территориально разнесенных Wеb-ГИС проектов, основанная на использовании трех базовых обменных сервисов – WMS (Web Map Service), WFC (Web Feature Service), WCS (Web Coverage Service). Использование этих сервисов позволяет, например, при составлении пользователем многослойного покрытия для некоторого географического района наряду со слоями основной ГИС накладывать информационные слои удаленных Web-ГИС систем. В ОИАС ДВО РАН поддерживаются два сервиса OGC технологии - WMS и WFS. Проведены тестовые эксперименты по организации OGC-взаимодействия с несколькими внешними ГИС-проектами, подтвердившие способность ОИАС участвовать в интеграционных проектах, основанных на применении данной технологии.
На рисунке 12 демонстрируются возможности интеграции информационного слоя «Батиметрия»
демонстрируется процедура подключения информационных слоев ОИАС к ГИС-проекту, создаваемому с использованием профессионального инструментального пакета MapInfo. На рисунках 12 в-г показаны примеры подключения информационных слоев ОИАС, соответственно, к Web-ГИС по Чукотскому и Берингову морям, разрабатываемой в ТОИ ДВО РАН на основе инструментальной среды MapServer, к двум популярным Интернет-системам визуализации географических данных NASA World Wind и Google Earth.
В отчетный период проводились работы по реализации в ОИАС ряда Grid-сервисов с целью оптимизации управления территориально разнесенными данными и поддержке некоторых аналитических задач технологиями высокопроизводительных вычислений.
вычислений в ОИАС ДВО РАН По мере наращивания объемов информационных баз данных ГИС-сервера ОИАС и количественного роста и усложнения функций обработки данных всё более актуальной становится проблема критического возрастания требований к вычислительным ресурсам системы. Её суть в том, что единственный ГИС-сервер будет не способен обеспечить оперативную обработку в реальном времени интенсивного потока запросов, который может возникнуть при широком использовании данного ресурса сотрудниками институтов ДВО РАН. Наиболее оптимальным и перспективным решением этой проблемы нам представляется использование активно развивающейся сейчас технологии Grid, основанной на использовании распределённых вычислительных ресурсов, в том числе суперкомпьютерных.
Рисунок 12 - Примеры подключения информационного слоя «Батиметрия»
ОИАС к четырем удаленным программным системам, поддерживающим протокол WMS Далее приведен обзор архитектуры ОИАС, возникающие в ней потребности в высокопроизводительных вычислениях, имеющиеся в сети ДВО РАН телекоммуникационные и вычислительные ресурсы, которые могут быть привлечены к удовлетворению этих потребностей, и архитектуры разработанной в ходе выполнения дипломного проекта технологии поддержки распределенных и суперкомпьютерных вычислений в составе ОИАС ДВО РАН.
2.1.2.1 ОИАС и информационно-вычислительные ресурсы сети ДВО РАН Ядром ОИАС является ГИС-сервер, который принимает посредством протокола HTTP запросы внешних клиентов и обрабатывает их (обращается к базам данных, извлекает нужные данные и формирует их графические образы, которые пересылаются клиенту и визуализируются в окне браузера). Специализированная обработка данных по запросам пользователей осуществляется на отдельном вычислительном сервере либо на компьютере самого пользователя как Active-X приложение. В случае интенсивного потока заданий они становятся в очередь, что увеличивает время отклика системы на запросы пользователей и приводит к сбоям в работе системы.
Базовый сегмент сети ДВО РАН соединяет высокоскоростными (1 Gbit) оптоволоконными каналами локальные сети 6 институтов (ИАПУ, ТОИ, ИБМ, ТИГ, ИПМТ, БПИ) - всего около 1500 компьютеров класса Pentium. Как правило, эти компьютеры интенсивно загружены ограниченную часть рабочего времени (10 - 15%) и могут потенциально рассматриваться как ресурсы для проведения распределенных вычислений. Очевидно, не все пользователи согласятся на такое использование, однако представляется реальным в перспективе задействовать распределенные кластеры, включающие до 100-200 компьютеров.
В настоящее время в ИАПУ ДВО РАН имеются 3 суперкомпьютерных комплекса с параллельной архитектурой (http://www.cc.dvo.ru/claster.html ):
МВС-1000/17 (17 процессоров, производительность 1.26 TFlOPS);
МВС-15К (42 процессора, производительность 1.5 TFlOPS);
SMH11 (320 процессоров, производительность 18 TFlOPS ) Кроме этого в Вычислительном центре ДВО РАН также развернут кластеры, ресурсы которых могут использоваться специалистами ДВО РАН (http://hpc.febras.net). Потенциально имеется доступ к другим суперкомпьютерам в магистральной сети науки и образования RBNET.
2.1.2.2 Потребности ОИАС в высокопроизводительных вычислениях В результате анализа существующей архитектуры ОИАС были выделены следующие три группы практических потребностей, требующих использования распределенных и суперкомпьютерных ресурсов.
Необходимость обработки интенсивного потока не очень сложных задач, обусловленного запросами пользователей и необходимостью решения ряда служебных задач ОИАС.
Необходимость проведения пользователями аналитической обработки повышенной трудоемкости, которая может несложно разбиваться на сравнительно независимые подзадачи.
Необходимость решения задач особо высокой вычислительной сложности, таких как задачи обработки трехмерных данных, моделирования сложных гидродинамических процессов и т.д.
2.1.2.3 Принципиальная схема организации распределённых и суперкомпьютерных вычислений в ОИАС ДВО РАН В результате изучения потребностей ОИАС в высокопроизводительных вычислениях, имеющихся в сети ДВО РАН информационно-вычислительных ресурсов и особенностей выбранных в качестве основных инструментальных средств разработки Condor и Globus Toolkit была разработана принципиальная схема организации распределённых и суперкомпьютерных вычислений в ОИАС (см. рисунок 13)
ТОИ ДВО РАН ИАПУ ДВО РАН
SOAP GRAM
Рисунок 13 - Принципиальная схема организации РСВ в ОИАС ДВО РАН В ТОИ ДВО РАН в качестве основной системы для организации распределённых вычислений было решено использовать систему Condor.Как основной сервер на данном этапе использовалась виртуальная машина VMware с установленной операционной системой ASPLinux 9.2. В дальнейшем при увеличении нагрузки в результате роста числа клиентов и интенсивности потока заданий возможен перенос всего программного обеспечения сервера на отдельный компьютер. Выбор операционной системы обусловлен нижеприведёнными фактами. Изначально система Condor разрабатывалась для ОС семейства UNIX, Windows-версии появились относительно недавно и, не смотря на активное развитие, к сожалению, до сих пор не поддерживают ряд интересных и полезных функций.
Например, нет возможности сохранять на диск образы задач в процессе их выполнения (checkpointing) и, как следствие, нельзя перенести запущенное задание с одного компьютера на другой (migration). ASPLinux 9.2 был выбран как бесплатный отечественный аналог дистрибутива RedHat 9, одного из наиболее распространённых в мире. Чтобы обеспечить взаимодействие с Webсервером ОИАС по протоколу SOAP, а также с GT4 на кластере в ИАПУ ДВО РАН, на сервер была установлена Condor 6.7.7. Характеристики сервера и перечень установленного на нем ПО приведены в таблицах 2,3.
Таблица 2 - Основные технические характеристики Condor-сервера.
Таблица 3 - Установленное программное обеспечение.
Для упрощения процедуры установки системы на клиентские компьютеры на базе оригинального установочного пакета Condor 6.6.9 разработан специальный, оптимизированный под реализованную архитектуру. Его основные достоинства - простая инсталляция и меньший размер - 1 Мб (оригинал - 16 Мб). Установка системы рассчитана на неподготовленного пользователя и сводится к указанию адреса основного сервера и рабочего каталога. Размер дистрибутива уменьшен за счёт исключения неиспользуемых сервисов и компонент системы (отправка заданий, просмотр и управление очередью, просмотр доступных ресурсов и ряда других). Для создания программы установки был использован свободно распространяемый продукт NSIS (Nullsoft Scriptable Install System). Важная особенность реализованной архитектуры использование клиентами общего конфигурационного файла, расположенного на сетевой папке сервера. Указанный подход значительно упрощает администрирование системы. Следует отметить, что при этом сохраняется возможность индивидуальной подстройки за счет переопределения переменных в конфигурационном файле на компьютере клиента.
На данном этапе в качестве клиентов использовались компьютеры лаборатории Комплексного анализа океанологической информации со следующими характеристиками:
Athlon 2400 / 256 Mb;
В дальнейшем предполагается установка системы на часть компьютеров сотрудников института, предположительное количество - порядка 50 штук.
Серверная часть Condor'а развернута на базе одного из компьютеров сети, расположенного в одном сегменте с базовым сервером ОИАС. Фактически, запускающая машина только одна – это базовый сервер ОИАС. Он в соответствии со своим назначением принимает и обрабатывает запросы от пользователей ОИАС. При этом, если возникает необходимость в обработке нескольких задач, то сервер ОИАС посредством специального протокола SOAP передает запросы Condor-серверу, который распределяет задачи между выполняющими машинами. Результаты обработки возвращаются ОИАС-серверу, который пересылает их пользователям в нужном виде.
Несмотря на то, что удалённый доступ к суперкомпьютерным ресурсам ИАПУ ДВО РАН можно было бы организовать исключительно средствами Condor, было принято решение для этой цели использовать пакет Globus Toolkit как наиболее распространённый и соответствующий архитектуре OGSA. В результате на один из компьютеров кластера был установлен GT 4.0.0. Для решаемых задач этого оказалось достаточно, благодаря установленному на всех компьютерах кластера пакету Lam-MPI и настроенной должным образом NFS. Использования сетевой файловой системы NFS позволяет в значительной мере упростить размещение на серверах кластера запускаемых файлов задачи и исходных данных. Эта процедура сводится к обычному копированию в сетевую папку. Технология MPI, реализованная в данном случае пакетом прикладных программ и библиотек Lam-MPI [61], как часть своей основной функции организации распределённого межпроцессного взаимодействия - предоставляет удобный способ запуска программ сразу на нескольких компьютерах. То есть, в нашем случае формально задача средствами GT4 запускается на одном компьютере, но фактически - на всех или на указанном числе серверов кластера. Характеристики GT-сервера и перечень установленного на нем ПО приведены в таблицах 4,5.
Пакет Globus спроектирован с расчётом на использование в самых сложных и самых общих конфигурациях Grid-систем. Соответственно в его состав входит множество компонент для реализации всего многообразия функций. Но в данном относительно простом случае оказалось достаточно следующих базовых служб: GRAM, RFT, GridFTP, GSI.
Для обеспечения безопасности функционирования системы и ограничения доступа были задействованы стандартные механизмы, предоставляемые Globus Toolkit. В качестве центра сертификации (Certificate Authority) на данном этапе применялся SimpleCA, этот компонент специально предназначен для быстрой упрощённой установки и настройки подсистемы безопасности GSI. В дальнейшем в ходе развития системы возможен переход на использование существующего центра сертификации института. С помощью удобных утилит из состава SimpleCA были сгенерированы пары ключей и подписаны соответствующие сертификаты пользователей и хостов. Таким образом, был разрешён доступ к установленной системе ограниченному кругу лиц.
Таблица 4 - Основные технические характеристики сервера с GT4.
Таблица 5 - Установленное программное обеспечение.
Для организации взаимодействия между установленными системами используется CondorG [52] - специализированная программа из дистрибутива Condor. Иногда её ещё образно называют "окном в Grid". Она предоставляет возможность пользователю Condor обращаться к Gridресурсам, используя те же средства и синтаксис, что и в случае с локальными массивом рабочих станций. А именно обеспечивается выполнение следующих функций:
отправка задания, включая пересылку на удалённый ресурс исполняемого файла, входных данных и результата;
проверка текущего статуса отправленного задания;
отмена задания;
извещение об основных событиях в ходе выполнения задания (например, о нормальном завершении программы или о возникшей ошибке);
ведение подробных журнальных файлов, которые в случае необходимости могут быть использованы для изучения истории выполнения задачи и диагностики возникающих В ходе настройки Condor-G пришлось установить на сервер с системой Condor некоторые базовые компоненты пакета GT4, а именно GridFTP, GSI, GRAM. Указанные протоколы используются для осуществления взаимодействия с удалёнными Grid-ресурсами. Можно предположить, что разработчики Condor-G отказались от реализации указанных протоколов собственными силами для обеспечения наиболее полной совместимости с пакетом GT4.
2.1.3 Исследование эффективности разработанной технологии поддержки распределенных и суперкомпьютерных вычислений в составе ОИАС Как отмечалось ранее, было выявлено три класса возникающих в ОИАС вычислительных потребностей, решение которых требует поддержки распределенными и суперкомпьютерными ресурсами сети ДВО РАН. Это необходимость распределения интенсивного потока не очень трудоемких задач между распределенными компьютерами пользователей сети ДВО РАН, это потребность в решении вычислительно трудоемких задач, которые могут быть разбиты на сравнительно слабосвязанные подзадачи, и потребность в решении задач особо высокой вычислительной сложности, для которых необходимо привлекать суперкомпьютерные ресурсы. В архитектуре ОИАС были заложены технологические схемы, позволяющие решать в се три группы задач. В настоящей главе представлены примеры практического решения в составе ОИАС трех важных задач, соответствующих перечисленным схемам.
2.1.3.1 Исследование технологии распараллеливания потока задач между распределенными ресурсами (на примере задачи предобработки спутниковых данных) Первая тестовая задача иллюстрирует работоспособность системы распределения интенсивного потока не очень сложных вычислительных задач между свободными компьютерами корпоративной сети.
В ОИАС время от времени возникает задач приема и интеграции во внутренние базы данных об яркостной температуре поверхности океана, регистрируемых микроволновым радиометром AMSR-E. С помощью этого прибора, установленного на американском спутнике Aqua, измеряются яркостные температуры уходящего излучения Земли на частотах 6,9, 10,7, 18,7, 23,8, 36, 5 и 89,0 ГГц в вертикальной и горизонтальной поляризациях. Общее число информационных каналов – 12. Эти измерения позволяют оценивать температуру поверхности океана (ТПО) t и скорость приводного ветра W независимо от облачности.
Данные сгруппированы в файлы : 1 файл – 1 виток спутника.
Обработка одного файла включает несколько операций:
1. загрузка файла с данными;
2. распаковка;
3. преобразование внутренних форматов;
4. вырезка данных по Северо-Западной части Тихого океана;
5. интерполяция данных в регулярную сетку с применением алгоритмов объективного 6. занесение данных в общую БД ОИАС.
На рисунке 14а представлен фрагмент интерфейса ОИАС, в котором графически отображаются результаты предобработки двух файлов данных, а на рисунке 14б – эти же данные в текстовом формате.
Время обработки одного файла 5-10 минут. Количество файлов для обработки - порядка 1000.
Для снижения нагрузки на основной ОИАС сервер задача предобработки таких массивов AMSR-E данных была реализована с использованием описанной выше технологии распределения интенсивного потока задач. Для исследования ее эффективности были проведены эксперименты на ограниченном массиве данных, включающем 50 файлов. Результаты о полном времени обработки данных при различных конфигурациях Condor сведены в таблице 6.
Таблица 6 - Результаты тестов задачи по предобработке спутниковых данных Количество компьютеров На рисунке 15 эти же данные о зависимости времени решения задачи от числа используемых Condor-компьютеров представлены в графическом виде. На графике очевидна тенденция к уменьшению полного времени обработки тестового массива данных по мере использования большего числа выполняющих машин.
Рисунок 14 - Представление обработанных AMSR-E –данных Рисунок 15 – Зависимость времени решения задачи от числа компьютеров в Condor-сети 2.1.3.2 Исследование технологии решения вычислительно сложных задач с помощью распределенных вычислений (на примере задачи фильтрации изображений большого размера) вычислительно трудоемких задач, которые могут быть разделены на подзадачи, не требующие интенсивного обмена данными. Это задача пространственной фильтрации изображений большого размера. На вход задачи поступает исходное растровое изображение. Каждая точка выходного изображения получается путем применения некоторой процедуры F к точкам входного изображения, расположенным в окне конечного размера.
{Xi,j}, i = 1..N; j = 1..M, где N, M – количество точек по вертикали и горизонтали. Выходное изображение получается после фильтрующего преобразования общего вида:
где F – линейная или нелинейная функция от значений точек в окрестности рассчитываемой точки радиусом r. (см. рисунок 16). В настоящее время реализованы один универсальный линейный фильтр и три нелинейных фильтра.
Рисунок 16 - Фильтрация изображения со скользящим окном размера (2r+1) x (2r+1) Линейный фильтр. Алгоритм в данном случае очень прост – значение в каждой точке выходного изображения точке рассчитывается как линейная комбинация значений точек входного изображения из некоторой окрестности текущей точки:
где A(k,l) – матрица коэффициентов фильтра.
Несмотря на простоту реализации, данный фильтр при использовании матрицы достаточно большого размера с соответствующими коэффициентами позволяет получать большое количество изображения либо бороться с мешающими компонентами изображения.
Медианный фильтр. Каждая точка выходного изображения рассчитывается следующим образом. Значения точек входного изображения из ближайшей окрестности заносятся в массив, который сортируется по возрастанию, и в качестве результата берётся значение, оказавшееся в середине упорядоченного массива:
Такой фильтр во многих случаях позволяет эффективно удалять импульсные помехи на изображении, но при этом он достаточно медленный, так как для каждой точки изображения размером равным количеству точек в фильтрующем окне.
Фильтр Уоллиса. Данный нелинейный фильтр был предложен в работе [62] для повышения контраста и улучшения зрительного восприятия изображения. Рабочая формула фильтра следующая:
Здесь Amax – параметр нейтрализации локальных выбросов;
Dd – требуемое значение стандартного отклонения результирующего изображения;
Md – требуемое значения математического ожидания;
D(k,l) – значение стандартного отклонения в фильтрующем окне;
M(k,l) – значения математического ожидания в окне;
p – параметр контрастирования границ.
Удаление тренда. Часто на изображениях присутствуют медленные тренды, которые затрудняют восприятие более высокочастотных компонент изображения. Для удаления трендов в литературе предлагается большое число процедур. Нами была реализована процедура, предложенная в работе [63].
Здесь D – значение стандартного отклонения для всего изображения;
M – значения математического ожидания для всего изображения;
D(k,l) – значение стандартного отклонения в фильтрующем окне;
M(k,l) – значения математического ожидания в окне;
- параметр выравнивания дисперсии.
Данная процедура позволяет не только устранять тренды, но и выравнивать дисперсию (средний локальный разброс) на изображениях, что бывает полезно в некоторых случаях.
Применение процедуры целесообразно перед проведением контрастирования изображения.
Таким образом, описанные процедуры фильтрации могут использоваться для решения задач улучшения восприятия либо реставрации различного рода изображений. Если размеры фильтрующего окна достаточно велики и велико само изображение, то процедура фильтрации на одном компьютере может выполняться очень долго. В связи с этим была разработана следующая схема распределённой обработки больших изображений (см. рисунок 17) Фильтрация изображения разбивается на 3 этапа:
1. Разбиение исходного изображения на некоторое количество полос.
2. Параллельная обработка получившихся полос на различных компьютерах с помощью выбранного алгоритма фильтрации.
3. Объединение отфильтрованных полос в результирующее изображение.
На 1-м этапе, чтобы обеспечить корректную обработку точек на границах, разбиение на полосы производится с запасом, равным радиусу окна фильтрации. На внутренних границах полосы дополняются точками соседних полос, внешние границы изображения расширяются за счёт зеркального отображения крайних r (где r – радиус окна фильтрации) точек.
Рисунок 17 - Схема параллельной фильтрации болшеразмерных изображений На 3-м этапе перед объединением искусственно добавленные приграничные точки полос отбрасываются, и в результате получается изображение исходного размера.
Каждый этап фильтрации выполняется отдельной программой на отдельном процессоре (компьютере корпоративной сети). Для удобства работы пользователей к задаче был разработан и размещён в системе аналитической поддержки ОИАС веб-интерфейс. Ниже приведены снимки экрана с рабочей версией интерфейса, в дальнейшем планируется его оптимизация и доработка.