Методологии построения распределенных систем

Вычислительные технологии

Том 11, Специальный выпуск, 2006

МЕТОДОЛОГИИ ПОСТРОЕНИЯ РАСПРЕДЕЛЕННЫХ СИСТЕМ*

А. М. Федотов Институт вычислительных технологий СО РАН, Новосибирск, Россия e-mail: fedotov@ict.nsc.ru

This paper is based on the presentation given at the 10th Conference on Distributed Systems, which has been organized by the Siberian Branch of RAS. We started with electronic publications and finally arrive to the distributed systems. A brief review on the technologies designed to implement the distributed systems for the purpose of organization and the access control to the information-computing resources used in the Siberian Branch of RAS is presented. This technology relies on the worldwide accepted grid concept.

Введение

Информационные технологии оказывают огромное влияние на все области человеческой деятельности, связанные с накоплением и обработкой информации. За относительно небольшое время существования информационно-коммуникационных технологий накоплен очень большой объем разнообразных данных, представленных исключительно в электронной форме. Возникают задачи обеспечения доступа (в том числе и удаленного) пользователей к разнородным информационным ресурсам, защиты авторских прав на цифровые и преобразованные из традиционных типов в электронные документы, систематизации большого объема разнородных типов документов.

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

* Работа выполнена при частичной финансовой поддержке Российского фонда фундаментальных исследований (гранты № 06-07-89060, № 06-07-89038), президентской программы "Ведущие научные школы РФ" (грант № НШ-9886.2006.9) и интеграционных проектов СО РАН (№ 34 и № 115).

© Институт вычислительных технологий Сибирского отделения Российской академии наук, 2006.

Стремительное развитие глобальных информационных и вычислительных сетей ведет к изменению фундаментальных парадигм обработки данных, которые можно охарактеризовать как переход к поддержке и развитию распределенных информационно-вычислительных ресурсов [1]. Технологии использования распределенных информационно-вычислительных ресурсов получают все больший приоритет в информационном обществе. При этом наблюдаются переход к исключительно распределенной схеме создания, поддержания, хранения ресурсов1 и в то же время — стремление к виртуальному единству посредством предоставления свободного доступа к любым ресурсам сети через ограниченное число "точек доступа". Постулируется принцип формирования в ресурсах "Сети" единого, математически однородного поля компьютерной информации, которое способно стать универсальным и машинонезависимым носителем данных, унифицированных программ и глобально распределенных вычислительных процессов. Эта идея фактически заложена в основу так называемых grid-технологий. На первый взгляд может показаться, что это новейший прорыв в технологиях использования вычислительной техники и телекоммуникаций.

На самом деле идея создания универсальной системы доступа к информационным ресурсам, распределенным в мировом пространстве, далеко не нова. Она была сформулирована еще на заре компьютерной эры. Здесь следует вспомнить Вэннивера Буша2, который в своей работе "As We May Think" (1945) описал концепцию гипертекста. В дальнейшем принципы распределенной обработки информации стали активно развиваться с появлением первых суперЭВМ второго поколения — советской (российской) БЭСМ-6 и американской ILLIAC-IV. Именно на этих машинах впервые поставлены эксперименты и создано соответствующее программное обеспечение по использованию распределенных информационно-вычислительных ресурсов. В дальнейшем технология массированного счета перенесена на "мэйнфреймы" третьего поколения. Недаром один из лозунгов создателей grid-технологий — "Вперед (назад) к мэйнфреймам".

Второй этап развития технологий использования распределенных информационных ресурсов можно связать с появлением сети Интернет. Здесь следует вспомнить распределенную систему службы доменных имен (DNS) и распределенную поисковую систему WAIS'.

В 1989 году в CEEN'e перед сотрудниками лаборатории ЕСР (Electronics & Computing for Physics) поставлена задача по разработке системы, позволяющей обеспечить доступ к любым сведениям, содержащимся в сети, и объединению всех имеющихся в ней источников информации, для сотрудников, приезжающих из различных уголков мира, т. е. созданию универсальной технологии доступа к распределенной разнородной информации. Таким образом родилась технология "World Wide Web" ("Всемирная паутина"). Создаваемая система должна не только поддерживать произвольные гипертекстовые ссылки, но предоставлять поиск по распределенным в сети базам данным, но, что самое главное, быть многопользовательской, платформенно-независимой системой. Дальнейшее развитие технологии WWW немного подкорректировало начальные установки, и из

1 Эффективная эксплуатация информационных ресурсов возможна только в том случае, когда они постоянно поддерживаются авторами, т. е. на основе технологий использования распределенных информационно-вычислительных ресурсов, которые получили название grid-технологий.

2Вэннивер Буш (Vannevar Bush) (1890-1974) — основатель Национального научного фонда (NSF) США, создатель "дифференциального анализатора" (1930) — релейной машины, способной решать дифференциальные уравнения, руководитель работ по созданию первых ЭВМ.

3WAIS — World Area Information System — мировая распределенная информационная система.

системы доступа к разнородным ресурсам она превратилась во всемирную "презентационную" систему [2].

Исторически все развитие информационных технологий (и вычислительной техники) — ответ на требования общества4.

На сегодняшний день наиболее эффективным способом решения проблем организации доступа к распределенным информационно-вычислительным ресурсам является организация информации о них в информационные системы, облаченные в форму электронных библиотек (ЭБ)Ь. Электронные библиотеки - это распределенные каталогизированные информационные системы, позволяющие хранить, обрабатывать, распространять, анализировать, а также организовывать поиск в разнообразных коллекциях электронных ресурсов6. В этом отношении в рамках концепций grid электронная библиотека определяется как интегрированная единая среда распределенных ресурсов. Отметим, что в grid-подходе привлекает прежде всего возможность реализации концепции объединения разнородных, распределеных федеративных коллекций.

1. Концепция grid

Основная задача, поставленная разработчиками grid-технологий, — это объединение всех ресурсов сети Интернет в единую интегрированную среду распределенных ресурсов, которая составит информационно-вычислительную инфраструктуру будущего Конечную цель grid можно определить как исходно распределенную систему, которая сводит воедино данные, вычислительные мощности и ресурсы для представления данных. Единый интерфейс должен предоставлять доступ ко всем необходимым ресурсам так, словно мы имеем дело с одним огромным "метакомпьютером". Концепция grid основана на трех "китах": сетевые коммуникации, виртуальные организации и промежуточное программное обеспечение ("middleware"). Здесь мы не будем касаться коммуникаций — их роль понятна. Остановимся на двух других "китах".

С нашей точки зрения, виртуальные организации — это группа пользователей, принявшая определенный набор соглашений о правилах описания ресурсов. Использование распределенных ресурсов в интегрированной среде опирается на унификацию систем метаданных, описывающих как сами ресурсы или данные, так и правила доступа к ним. Внутри виртуальной организации должны быть обеспечены: регистрация (каталогизация) ресурсов организации; интероперабельность ресурсов в глобальной программно-аппаратной инфраструктуре; диспетчеризация, включая идентификацию доступных ресурсов, статистику использования и загрузки ресурсов и пр.; система безопасности и контроля доступа, в том числе гибкое регулирование объема прав и привилегий пользователей; обращение к наборам данных в удаленных архивах, включая протоколы, которые необходимо использовать для работы с гетерогенными источниками данных; библиотеки программных комплексов и др. Интеграция сетевых сервисов и информационно-вычислительных ресурсов в корпоративных распределенных информационно-вычислительных системах (КРИВС) с

4Здесь можно вспомнить задачи управления зенитным огнем, ядерный проект, авиационную технику — это основные этапы развития первого и второго поколений вычислительной техники.

5Понятие электронной библиотеки заключается в том, что любой ресурс должен быть стандартным образом каталогизирован, снабжен метаданными и уникальным идентификатором.

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

множеством управляющих серверов требует создания единой корпоративной распределенной справочной системы, которая по своей сути есть виртуальная организация. В основу такой системы может быть положена уже хорошо зарекомендовавшая себя в сети служба каталогов, функционирующая в соответствии рекомендациями ГП 7 Х.5008. В этом смысле в рамках Сибирского отделения РАН виртуальная организация должна представлять собой интегрированную информационную систему Отделения (а может быть, и РАН в целом), поддерживающую единый (возможно распределенный) каталог всех ресурсов, созданный в соответствии с международными рекомендациями (стандартами)9. Данный подход уже хорошо зарекомендовал себя в области построения распределенных каталогов обычных библиотек.

Промежуточное программное обеспечение. Для разработки распределенных информационно-вычислительных систем сегодня используются различные подходы и протоколы (например, ЕРС, DCOM, RMI, ODBC, JDBC, СОЕВА, SOAP, ebXML, WSDL, WSFL, UDDI и др.). Большая часть этих технологий ориентирована не на работу с ресурсами, а на сетевое взаимодействие программ и распределенные вычисления в гетерогенных средах. Однако ни одна из упомянутых технологий не обеспечивает универсальных способов работы с ресурсами, т. е. необходимого уровня абстрагирования от конкретных систем и платформ при сохранении высокой степени функциональности и предоставления механизма доступа к данным. Эти свойства присущи технологиям, основанным на использовании международных стандартов взаимодействия открытых систем (OSI'"). В качестве одного из примеров таких стандартов можно привести протокол ANSI Z39.50 (стандарт ISO-23950) [5].

В настоящий момент для создания вычислительной среды широко применяется программное обеспечение среднего уровня, разработанное группой крупнейших американских университетов ("академический" grid) и распространяемое в открытом коде — Globus Toolkit11 [6]. Данное программное обеспечение уже сегодня включает в себя практически все базовые инструменты, необходимые для создания реально работающих сетевых приложений, и наряду с протоколом Z39.50 и рекомендациями Х.500 может лежать в основе КРИВС, обеспечивающей распределенную обработку информации, в том числе хранение и обработку больших массивов данных.

2. Электронные библиотеки

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

7ITU — International Telecommunications Union (Международный союз электросвязи).

8Х.500 для широкого круга более известен как протокол DAP — Directory Access Protocol (протокол доступа к каталогам) — RFC1487 [4].

9Это необходимо для обеспечения требований интероперабельности ресурсов.

10OSI — Open System Interconnection — семейство стандартов и рекомендаций взаимодействия "открытых" систем.

11 Кроме "академического" grid существует множество коммерческих систем grid, например разработки фирмы ORACLE. Однако подходы, разрабатываемые коммерческими организациями, как правило, неприменимы в "академической" среде. Это связано в первую очередь с большой неоднородностью ресурсов в разных организациях.

сурсов (включая поддержку унифицированного доступа к ним) и эффективная навигация в них [7].

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

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

Развитие концепций предоставления удобного и разветвленного поиска ресурсов, распределенных по сети Интернет, привело к созданию протокола WAIS. Модель данного протокола обеспечивает функционально полный набор информационных инструментов для реализации концепции распределенной информационно-поисковой системы и распределенной системы доступа к ресурсам. Отметим, что в основе универсального протокола WAIS лежит американский стандарт ANSI Z39.50 [5]. Протокол Z39.50 — это один из протоколов семейства OSI, который описывает прикладной уровень взаимодействия распределенных информационно-поисковых систем12. Протокол определяет механизм информационного обмена в процессе обработки поисковых запросов и протокол обмена данными в системах, осуществляющих поиск. Основная область применения протокола в настоящее время — это библиотечные системы и системы научно-технической информации. Однако область применения протокола значительно шире перечисленных приложений — он может использоваться в информационно-поисковых системах общего назначения [9]. При разработке протокола подразумевалось, что он будет описывать порядок обмена информацией между пользователями информационной системы и ее ядром через сеть передачи данных. Сами системы могут управлять данными, используя разные модели данных и различные языки манипулирования этими данными. Таким образом, информационно-поисковую систему можно построить на основе любой системы управления данными, будь то обычная файловая система или объектно-ориентированная СУБД.

Сначала протокол Z39.50 использовался для создания распределенной информационной системы WAIS, которая была задумана как сетевой аналог традиционных (в начале 90-х годов) информационно-поисковых систем. WAIS позволяла пользователям сети осуществлять распределенный поиск в полнотекстовых базах данных с использованием традиционного для таких систем информационно-поискового языка, поисковые предписания которого строятся на основе ключевых слов и/или их усечений, связанных между

12В отечественной литературе за термином "Information Retrieval System" закрепилось понятие "информационно-поисковая система". Стандарт ANSI Z39.50, принятый ISO в 1998 году (ISO-23950), посвящен организации механизма поиска в компьютерных сетях распределенных информационных ресурсов с использованием "ключевых" слов (поиск по атрибутам документов).

собой логическими операторами OR или AND. В настоящий момент протокол Z39.50 в основном используется в качестве средства для создания распределенных библиотечных систем. Более того, благодаря своим свойствам абстрагирования от схем, моделей и хранилищ данных он нашел применение и в других областях информационных технологий. В частности, для Z39.50 разработаны и утверждены ISO в качестве рекомендаций схемы данных, описывающие тезаурусы, географические метаданные, ресурсы культурного наследия. Для доступа к базам данных Z39.50 посредством web-интерфейса используются так называемые шлюзы Z39.50-HTTP. С помощью определенных правил они преобразуют HTTP-запрос в запрос к серверу Z39.50, а полученные результаты отображают, как правило, в формат HTML и возвращают запросившему клиенту [10].

Еще раньше менеджерами самых разных организаций поднимался вопрос несколько другого рода: где и как хранить данные о сотрудниках, клиентах и партнерах, чтобы они были легко доступны тем пользователям и приложениям, которым они нужны? Идея создать общий стандарт для систем каталогов впервые возникла у инженеров Международного союза электросвязи (ITU) в середине 80-х годов. Для формирования этих стандартов была создана рабочая группа ITU Х.500; первая версия рекомендаций Х.500 вышла в 1988 году. Конечная цель проекта Х.500 была весьма амбициозна: создать распределенную международную систему каталогов, содержащую все данные о телефонных абонентах по всему миру. После опубликования стандарта стало ясно, что задача построения глобального каталога практически неподъемна: технология оказалась слишком сложна, а конкретные ее реализации слишком ненадежны и мало совместимы между собой. Однако в результате этой работы стала очевидной актуальность новой задачи — создание средств хранения данных о реальных объектах в относительно простой, надежной и распределенной системе.

В 1993 году группа из Мичиганского университета под руководством Тима Хауса опубликовала протокол LDAP13, работающий непосредственно над Интернет-протоколом (TCP/IP) и достаточно "легковесный", чтобы хорошо работать на обыкновенных персональных компьютерах. Вначале предполагалось, что LDAP будет использоваться именно как дополнение к существующим продуктам Х.500 для относительно маломощных компьютеров; в такой схеме клиент DAP является одновременно сервером LDAP. Производители каталогов Х.500 поддержали этот подход и включили LDAP в свои продукты, что привело к резкому росту популярности каталогов масштаба корпораций. Каталоги LDAP, сохраняя логические стандарты Х.500 (организация объектов в логическое дерево, хранение данных в виде "атрибут-значение", и т.д.), не зависимы от DAP на уровне протоколов, полностью поддерживают стандарты OSI. Еще одно существенное преимущество технологии LDAP — четкое разделение систем хранения и обмена данными.

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

13LDAP — Lightweight Directory Access Protocol — "легковесный" протокол доступа к каталогам (RFC 1487 [4]).

3. Документы

Основным объектом (ресурсом) хранения данных в электронной библиотеке (ЭБ) является документ, снабженный метаданными14. Понятие метаданных уже давно и успешно используют в таких контекстах, как информационные хранилища и системы аналитической обработки данных, электронный документооборот и управление потоками работ, управление знаниями. Метаданные позволяют описывать классы объектов, представляющие типы информационных документов, атрибуты и отношения между различными типами документов и ресурсов. Отметим, что принятые в обычных видах информационных систем типы элементов данных не в полной мере отражают потребности и интересы пользователей.

Практически во всех случаях источником информации для электронных библиотек служат как электронные, так и традиционные данные, преобразованные в электронную форму. Однако электронные библиотеки можно использовать и как систему для накопления, представления, обработки разнообразных данных. Именно с такой целью в СО РАН создан целый ряд информационных систем, как, например, атласы "Аэрозоли Сибири" [12, 13] и "Биоразнообразие животного и растительного мира Сибири" [14].

Как уже упоминалось, главным элементом электронной библиотеки является документ. Документ — это цельный информационный объект, представленный в электронном виде, имеющий некоторый стандартный набор атрибутов и допускающий однозначную идентификацию. Документом может быть статья из журнала, сам журнал, оцифрованное изображение, экспериментальные данные, программа или вычислительный алгоритм, база данных, фрагмент базы данных и т. п. Если все документы представляют собой электронное отображение стандартных элементов данных традиционных библиотек, то к ним можно применять уже существующие методы каталогизации и систематизации, как это делается во многих новых электронных библиотеках, возникших на базе традиционных библиотек. Однако для систематизации документов различной природы традиционный подход малоприменим. В этом случае используется комбинация методов формирования электронных коллекций, состоящих из электронных документов и объектного подхода к представлению всех информационных объектов ЭБ [15]. *

Электронная коллекция — это набор документов, объединенных по смысловому признаку и имеющих одинаковую структуру, например коллекция описаний всех видов растений, встречающихся в России. В этом случае каждый документ в коллекции имеет одинаковую структуру и они объединены по смыслу хранимой информации.

Объектный подход — это подход, при котором каждый информационный элемент системы представляется в виде объекта в терминах объектно-ориентированного программирования. Объект в терминах объектно-ориентированного программирования можно охарактеризовать так:

— объект имеет уникальный идентификатор;

— у объекта имеется набор атрибутов — так называемых свойств;

14Под понятием "документ" в контексте данного раздела мы понимаем следующее. В информационном пространстве все информационные ресурсы: события, факты, программы и любые другие сущности реального или виртуального мира — существуют только в форме некоторых информационных объектов. В этом смысле информационный ресурс, снабженный метаописанием, превращается в документ, который является основным "объектом", с которым оперирует любая информационная система. Таким образом, документ — это структурированное описание реальной сущности (объекта, факта или понятия, включая алгоритмы и программы и вычислительные ресурсы), которое составляет информационное наполнение системы.

— взаимодействие с объектом (например, работа с атрибутами) происходит через набор .методов объекта и только через них.

Здесь важно отметить, что объектная модель документов реализуется не на уровне внутреннего функционирования программной среды ЭБ, а на "внешнем" — пользовательском уровне, т. е. для пользователя документ (и коллекция) имеет вид объекта, а не таблицы, файла или иного типа данных. Это накладывает определенные требования на логику работы с системой, которая в корне отличается от традиционной, даже от логики работы с файлами на персональных системах и базах данных [16].

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

Главные элементы ЭБ — это сервер метаданных, который хранит информацию о структуре информационных объектов системы, и центральный диспетчер, который управляет потоками данных с учетом данных сервера метаописаний. Содержательная информация хранится в некоторой базе данных (или в нескольких), причем это осуществляется во внутреннем формате, т. е. ее нельзя использовать из базы напрямую, минуя систему. Центральный диспетчер преобразует запросы клиента в запросы базы данных, используя данные сервера метаописаний, и наоборот, ответы базы — в данные, передаваемые пользователю. Диспетчер занимается также ведением прав доступа пользователей к элементам системы, поддержкой согласованности с удаленными базами данных и другими задачами. Важно отметить, что все схемы данных генерируются динамически на основе данных сервера метаописаний и служебных баз данных, обеспечивающих целостность системы информационных объектов.

Электронная библиотека оперирует с такими типами информационных объектов, как коллекция, документ, объект.

Коллекция определяется своими параметрами (стилем, атрибутами) и структурой входящих в нее документов. Документ характеризуется своими параметрами (стилем, атрибутами) и структурой объектов, из которых он состоит. Объект определяется типом данных (в соответствии с выбранной схемой данных), которые он содержит, описанием свойств и методов объекта [15].

Таким образом, главный элемент рассмотренной схемы — структурные метаданные (т. е. формализованные описания структуры хранимой информации). Это позволяет достаточно легко строить библиотеку с распределенным хранилищем данных: связь хранилища с системой будут обеспечивать метаописания данных хранилища. Для включения нового элемента в систему достаточно создать относительно простую программу-преобразователь (провайдер данных), которая и будет служить переходным звеном между ЭБ и непосредственно хранилищем. Фактическая структура данных хранилища при этом может быть произвольной — главное, чтобы после программы-преобразователя структура информации соответствовала принятому метаописанию.

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

4. Многоуровневая архитектура

В основу работы КРИВС заложен принцип многоуровневой архитектуры, который заключается в реализации таких трех основных принципов, как:

— минимизация функциональности клиентских компонентов, оставляющая за клиентом только функции пользовательского интерфейса;

— максимальное упрощение и унификация клиентского программного обеспечения;

— освобождение серверов ресурсов (данных) от не свойственных им функций.

Такие архитектуры более разумно распределяют модули обработки данных, которые в

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

Вообще говоря, термин "многоуровневые архитектуры" не предполагает какого-либо определенного принципа построения системы. Данное понятие применяется для характеристики любых архитектур, расширяющих схему клиент-серверного взаимодействия путем введения дополнительных промежуточных компонентов. Отдельно следует отметить многоуровневые системы на основе менеджеров транзакций (модель 'I'M). Они позволяют одному серверу приложений одновременно обмениваться данными с несколькими серверами баз данных, что наиболее важно с точки зрения построения распределенной информационной системы, предназначенной для интеграции информационных ресурсов. Менеджер транзакций — это приложение, с помощью которого можно согласовать работу различных компонентов информационной системы.

Многоуровневый подход обычно применяется для решения следующих задач:

— повышение производительности системы за счет переноса части функциональности на аппаратно выделенные серверы приложений или кластеры;

— повышение структурированности программных систем за счет реализации компонентов в виде независимых модулей (объектов), допускающих повторное использование, обеспечение возможности комплектации готовой системы из таких модулей;

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

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

В рамках определенных требований мы приходим к необходимости построения информационной системы, поддерживающей ЭБ, которая будет включать пять уровней. На каждом уровне реализуется отдельный вид обработки данных:

1) хранилище данных — набор зарегистрированных баз данных, структура которых задана в системе регистрации данных;

2) базовые информационные структуры, объединение которых составляет содержание коллекций;

3) провайдер данных — приложение, обеспечивающее обработку унифицированных именованных запросов к коллекциям и формирование "внутреннего представления документа" (ВПД);

4) обработчик ВПД, который формирует унифицированные именованные запросы к коллекции и отбор информации в ВПД;

5) формирователь "презентационного представления документа" в соответствии с выбранным стилем — приложение, которое осуществляет визуализацию документа в удобном для пользователя виде, а также пользовательский интерфейс, с которого вводятся параметры запроса.

Данная архитектура обеспечивает взаимодействие служб:

— публикации данных, их поддержки и др.;

— поиска и представления информации;

— анализа распределенных данных.

Кроме того, такая архитектура обеспечивает поддержку:

— интероперабельности в глобальной программно-аппаратной инфраструктуре;

— диспетчеризации, включая идентификацию доступных ресурсов, статистику использования и загрузки ресурсов и пр.;

— систем безопасности и контроля доступа, в том числе гибкое регулирование объема прав и привилегий пользователей;

— использования данных в удаленных архивах (включая протоколы, которые необходимо использовать для работы с гетерогенными источниками данных, и библиотеки программных комплексов) и др.

Создаваемые технологии должны предоставлять возможности для точного и адекватного удовлетворения потребностей пользователей, формально обращающихся к одной и той же информации (документу из архива). Реализация распределенной информационной системы позволит перейти к построению интеллектуальной системы обработки запросов, главную роль в которой играет программное обеспечение, реализующее функцию управления моделями данных и метаданных (диспетчера). Полученный от приложения запрос направляется в систему обработки, которая посредством системы поиска информации разыскивает необходимые данные и после выполнения удаленных процедур (например, выделения требуемого подмножества из данного множества) возвращает затребованные данные приложению [7].

5. Схемы данных

Как только адресатом документа становится компьютер, возникает вопрос о том, в каком виде нужно представлять передаваемую информацию. Проблема заключается в том, что ни один программный алгоритм не способен смоделировать работу человеческого разума и поэтому не может самостоятельно выделить из абстрактного документа семантику передаваемой информации. Один из самых простых способов решения данной проблемы — передавать информацию по строго определенной схеме, на которую можно было бы "настроить" обрабатывающую программу. Таким образом, последняя будет заранее "знать" о том, как нужно интерпретировать данные, содержащиеся в получаемых документах [2].

Методологии ПО С ТрОбНИЯ ря спр 6Д6Л6ННЫХ СИСТ6М

13

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

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

Важно отметить, что при использовании схем данных семантика информации оказывается заключенной отнюдь не в передаваемый документ, а в сам аналитический алгоритм, который осуществляет его обработку. Алгоритм может создаваться на основе метаописа-ния документа исходя из решающих правил, присутствующих в онтологии предметной области, к которой относится данная коллекция [12].

Существует целый ряд международных рекомендаций как по использованию схем данных, так и по созданию и использованию семантических описаний (словарей, тезаурусов, онтологии) [17]. Примером могут служить рекомендации протокола Z39.50 или рекомендации консорциума W3C [18]. К сожалению, в большинстве случаев даже очень хорошее изобретение обретает популярность только при его промышленном производстве. Поэтому до тех пор, пока рекомендованные15 спецификации не обретут статус стандарта и не будут официально поддержаны крупными производителями программного обеспечения, они не станут достаточно известными, чтобы принести реальную пользу.

В 1995 г. в городе Дублин, штат Огайо, на семинаре, проводившемся Национальным центром суперкомпьютерных приложений (NSCA), предложен базовый набор из 15 полей метаданных, предназначенный для описания ресурсов, публикуемых в сети Dublin Core metadata, которые впоследствии стали фундаментом проекта Dublin Core Metadata Initiative (DCMI). В него входят такие общие свойства документов, как название, дата публикации, автор, издатель, владелец. Таким образом, в любом документе должно быть ядро метаданных, о которых заранее известно, как их следует интерпретировать. В настоящий момент все используемые схемы данных основываются на рекомендациях DCMI.

Службы виртуальных организаций. Под виртуальной организацией (ВО) пользователей в рамках излагаемого подхода понимают динамическое объединение пользователей, ресурсов, служб. Отметим, что ВО должна однозначно определить политику безопасности, доступа и выполнения обязательств по использованию ресурсов. Виртуальные организации пользователей в рамках принятой многоуровневой архитектуры получают возможность работы с информационными ресурсами (или объектами) ЭБ посредством множества сервисов (служб).

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

15Консорциум W3C имеет право лишь рекомендовать спецификацию, объявить их етандартом могут лишь организации, имеющие соответствующий статус, например ISO или ГОСТ.

Помимо доступа к ресурсам службы должны поддерживать функционирование системы безопасности, которая в рамках протокола LDAP (рекомендаций Х.509) обеспечивается сертификатами доверия сертификационного центра КРИВС.

Взаимодействие виртуальной организации с КРИВС происходит посредством множества служб (сервисов) управления и доступа к ресурсам и коллекциям. Службы реализуют интерфейсы, которые определяет операции, активизируемые путем обмена сообщениями16. Службы типизируются по возможностям, которые они предлагают. Их следует разделять на системные и прикладные (пользовательские). Системные службы составляют базовый уровень, с которым взаимодействуют прикладные службы.

Наиболее важными системными службами являются:

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

— службы, управления данными, включая мониторинг состояния ресурсов и всей виртуальной организации в целом;

— службы, управления, заданиями.

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

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

Заключение

Представлены методические рекомендации, связанные с построением распределенной информационной системы СО РАН. При разработке систем такого рода неизбежно возникает проблема представления метаданных ресурсов на основе семантических описаний (онто-логий). Использование современных подходов к хранению и представлению таких метаданных может значительно упростить процесс разработки программных систем, повысить их качество, упростить процесс интеграции систем из смежных областей. Семантические метаданные представляют собой основу для разработки алгоритмов обработки данных и интеллектуальных программных агентов.

Список литературы

[1] Жижимов О.Л., Федотов A.M., Чубаров Л.Б., Шокин Ю.И. Технология создания распределенных информационно-вычислительных ресурсов СО РАН // Системный анализ и информационные технологии: Тр. Первой Междунар. конф. САИТ-2005, 12-16 сентября 2005 г., Переславль-Залесский. Т. 2. М., 2005. С. 161-165.

16Службы описываются стандартным образом на языке WSDL, рекомендованном W3C.

[2] Федотов A.M., Гуськов А.Е. Информация в Интернете: публикация, поиск, анализ // Информационные технологии в высшем образовании. 2004. № 4. С. 17-35.

[3] The Grid: Blueprint for a New Computing Infrastructure / Ed. by I. Foster, C. Kesselman. CA. San Francisco: Morgan Kaufmann Publ., 1999.

[4] RFC1487, X.500 Lightweight Directory Access Protocol // http://rfc.net/rfcl487.html

[5] ANSI MSG Z39.50-1995. Information Retrieval (Z39.50): Application Service Definition and Protocol Specification. Z39.50 Maintenance Agency Official Text for Z39.50-1995, July 1995.

[6] Ferreira L., Berstis A7., Armstrong J. et al. Introduction to Grid Computing with Globus. IBM, 2002, а также The Globus Alliance, http://www.globus.org

[7] Шокин Ю.И., Федотов A.M., Гуськов А.Е. и др. Электронные библиотеки — путь интеграции информационных ресурсов Сибирского отделения РАН // Вестн. КазНУ. Спецвыпуск. Алматы: Казах, нац. ун-т им. аль-Фараби, 2005. № 2. С. 115-127.

[8] Шокин Ю.И., Федотов A.M. Библиотека, работающая круглосуточно // ЭКО. 2000. № 6. С. 163-172.

[9] Жижимов O.J1. Введение в Z39.50. Изд. 4-е, доп. и перераб. Новосибирск: Изд-во НГОНБ,

2003. 263 с.

[10] Жижимов O.J1., Мазов H.A., Федотов A.M., Шокин Ю.И. Сервер ZooPARK как

сервер для построения распределенных информационных систем / / Информационные технологии в высшем образовании. Алматы: Казах, нац. ун-т им. Аль-Фараби, 2005. Т. 2, № 1. С. 53-67.

[11] Федотов A.M., Шокин Ю.И. Элетронная библиотека Сибирского отделения РАН // Информационное общество. 2000. № 2. С. 22-31.

[12] Гордов Е.П., Ковалев С.П., Молородов Ю.И., Федотов A.M. Web-система управления знаниями об окружающей среде // Вычисл. технологии. Т. 10. Спецвыпуск: Тр. Между-нар. конф. и школы молодых ученых "Вычислительные и информационные технологии для наук об окружающей среде" (CITES-2005). Новосибирск, 13-15 марта 2005 г. Ч. 2. С. 12-19.

[13] Куценогий К.П., Куценогий П.К., Молородов Ю.И., Федотов A.M. Разработка структуры метаданных по атмосферным аэрозолям на основе информационной модели // Вычисл. технологии. 2004. Т. 9. Спецвыпуск: Тр. Междунар. конф. "Вычислительно-информационные технологии для наук об окружающей среде". Ч. 2. С. 25-33.

[14] Байков К.С., Ермаков Н.Б., КоропАчинский И.Ю. и др. К вопросу создания электронной библиотеки "Биоразнообразие растительного мира Сибири" // Вычисл. технологии. 2000. Т. 5, № 2. С. 134-147.

[15] Шокин Ю.И., Федотов A.M., Леонова Ю.В. Принцип динамического формирования документов в информационных системах на примере интегрированной распределенной информационной системы (ИРИС) СО РАН // Тр. Четвертой Всерос. науч. конф. "Электронные библиотеки: перспективные методы и технологии, электронные коллекции", Дубна, 1517 октября 2002 г. Дубна: ОИЯИ, 2002. Т. 2. С. 159-170.

[16] Гуськов А.Е. Модель документа веб-ориентированных информационных систем на основе RDF // Вест. IIIY. Сер. Информационные технологии в образовании. Новосибирск: IIIY.

2004. Т. 1, вып. 2. С. 28-38.

A. M. (P(\ <()/ ()/;

Gruber T.R. A translation approach to portable ontology specifications // Knowledge Acquisition. 1993. Vol. 5(2). P. 199-220.

Berners-Lee T., Hendler J., Ora Lassila. The semantic web // Scientific American, May 2001.

IIocmynuM e pedak'h'uk) 31 okiv,m6pm 2006 '¿.