textarchive.ru

Главная > Документ


основанный на протоколе HTTP администратор распределения ресурсов GRAM — используется для распределения вычислительных ресурсов, контроля и управления вычислением на этих ресурсах;

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

  • аутентификация и связанные с ней сервисы безопасности GSI (Grid Security Infrastructure);

  • распределенный доступ к информации о структуре и состоянии, который основан на протоколе облегченного доступа к каталогам LDAP (Lightweight Directory Access Protocol); этот сервис используется для определения стандартного протокола инфор­мации о ресурсе и связанной с ним информационной модели;

  • удаленный доступ к данным через последовательный и параллельный интерфейсы GASS (Global Access to Secondary Storage), включая интерфейс к GridFTP;

  • построение, кэширование и размещение выполнимых программ GEM (Globus Executable Management);

  • резервирование и распределение ресурсов GARA (Globus Advanced Reservation and Allocation).

    Globus прошел в своем развитии этапы своего первого воплощения в I-WAY, первой версии GT1 и текущей версии GT2. Протоколы и сервисы Globus изменялись по мере его развития. Главный акцент перешел от поддержки высокопроизводительных приложений к более охватывающим (pervasive) сервисам, которые могут поддерживать виртуальные организации. Эволюция Globus продолжается введением Открытой архитектуры сервисов Grid (OGSA) [13].

    3.3. Брокеры ресурсов и планировщики Grid. В этом разделе различаются следующие виды систем.

    3.3.1. Пакетные и планирующие системы. Имеется несколько известных систем, где основное внимание уделено планированию ресурсов и пакетному выполнению заданий. Следует заметить, что все пакетные системы начали свое существование как системы управления заданиями или задачами на локально распределенных вычислительных платформах [14]. К ним относятся следующие.

    • Condor [15] — это пакет программ для выполнения пакетных заданий на платформах UNIX, особенно когда они бывают незагруженными. Главными особенностями Condor явля­ются автоматическое нахождение ресурсов, распределение работ, установка контрольных точек и миграция процессов. Эти характеристики реализованы без модификации ядра UNIX. Однако пользователю необходимо подключать библиотеки Condor к исходному тексту. Condor контролирует все действия с участием вычислительных ресурсов, к которым принадлежат все доступные Condor компьютеры. Пул ресурсов является динамическим — компьютеры попадают в него, как только перестают использоваться, и покидают, когда получают задания.

    • Переносимая пакетная система PBS (Portable Batch System) [16] — это пакетная организация очереди заданий и управления рабочей нагрузкой, первоначально разработанная для NASA. Работает на ряде платформ UNIX от кластеров на суперЭВМ. Планировщик заданий PBS позволяет локальным узлам устанавливать их собственную дисциплину планирования во времени и пространстве. PBS адаптирован к различным вариантам политики администрирования и обеспечивает расширяемую аутентификацию и модель защиты. PBS имеет графический интерфейс пользователя при регистрации заданий, отслеживании их выполнения и для других административных функций.

    • Платформа Sun Grid Engine (SGE) [17] основана на программном обеспечении, разработанном фирмой Genias, известном как Codine/GRM. В SGE задания находятся в зоне ожидания, а очереди на серверах обеспечивают сервисы для заданий. Потребитель вводит задание в SGE и объявляет профиль необходимых требований для его выполнения. SGE определяет заданию соответствующую очередь и распределяет его либо с высшим приоритетом, либо с самым длинным временем ожидания, пробуя запускать новые задания на наиболее соответствующей или наименее загруженной очереди.

    • Средство распределения нагрузки LSF (Load Sharing Facility) — это коммерческая система от Platform Computing Corp [18]. LSF возникла из системы Utopia, разработанной в Университете Торонто, и в настоящее время является наиболее широко используемой коммерческой системой для управления выполнением заданий. LSF включает распределенный механизм разделения нагрузки и программное обеспечение для организации очередей заданий, которое управляет, контролирует и анализирует ресурсы и рабочие нагрузки на сети разнородных компьютеров, имея при этом возможности обеспечения отказоустойчивости.

    3.3.2. Брокеры памяти хранения.Брокер памяти хранения SRB (Storage Resource Broker) [19] был разработан для обеспечения универсального доступа к распределенной памяти хранения запоминающих устройств. SRB под­держивает репликацию файлов, и это может происходить как в автономном (offline), так и оперативном (on-the-fly) режимах. Взаимодействие с SRB осу­щест­вляется через графичес­кий интерфейс пользователя. Серверы SRB могут быть объединены. Каждым SRB управляет администратор с полномочиями создавать группы пользователей. Главная особенность разработки состоит в поддержке метаданных, связанных с распределенной файловой системой, таких, как место нахождения, размер и информация о дате создания, а также метаданных уровня приложений (или предметно-зависи­мых), специфичных для конкретного содержания, которое не может быть обобщено для всех наборов данных. В отличие от традиционных сетевых фай­ловых систем SRB является привлекательным для приложений Grid, которые работают с большими объемами данных, превышающими вместимость индивидуальных запоминающих устройств, и потому используют метаданные со всеми преимуществами репликации файлов.

    3.3.3. Брокеры ресурсов Nimrod/G и GRACE.Nimrod/G — это брокер для Grid, который выполняет управление ресурсами и планирование независимых приложений [20]. Он состоит из четырех компонентов: генератора независимых заданий, планировщика, диспетчера и агента ресурсов. Генератор независимых заданий позволяет подключать определяемые пользователем планировщики, настраиваемые приложения или решатели задач в качестве компонентов приложений по умолчанию. Диспетчер использует Globus для развертывания компонентов Nimrod/G на удаленных ресурсах и управления выполнением назначенных заданий. Планировщики Nimrod/G имеют способность предоставлять ресурсы Grid и сервисы в зависимости от их возможностей, стоимости и доступности. Планировщики обеспечивают обнаружение ресурсов, отбор, планирование и выполнение заданий пользователей на удаленных ресурсах. Пользователи могут устанавливать конечный срок, к которому следует получить результаты, и брокер Nimrod/G пробует находить наилучшие ресурсы, доступные в Grid, и использовать их для удов­летворения пользовательских требований и минимизации затрат на выполнение задания.

    Nimrod/G поддерживает определяемый пользователем конечный срок выполнения и бюджетные ограничения для планирования оптимизаций и управ­ляет спросом и предложением ресурсов в Grid, используя набор сервисов торговли ресурсамиGRACE(Grid Architecture for Computational Economy) [21]. Имеются четыре алгоритма планирования Nimrod/G [22]:

    • оптимизация стоимости исполь­зует самые дешевые ресурсы, гарантирующие выполнение требования крайнего срока при наименьшей стоимости;

    • оптимизация времени реализует все возможные ресурсы для скорейшего параллельного выполнения задания;

    • оптимизация время – стоимость подобна стоимостной оптимизации, но при множестве ресурсов одинаковой стоимости применяется стратегия оптимизации времени;

    • консервативная по времени стратегия подобна оптимизации времени, но гарантирует каждому необработанному заданию минимум расходов на одно задание.

    Брокер Nimrod/G с этими стратегиями планирования использовался в решении крупномасштабных вычислительных приложений, таких, как моделирование калибровки камеры ионизации [20] и молекулярного моделирования при создания лекарств [23].

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

    Портал HotPage [24] разработан для одноточечного входа в компьютерные ресурсы и упрощения доступа к распределенным ресурсам, которые представляются и как части интегральной системы Grid и как индивидуальные компьютеры.

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

    Интерактивный Web-сервис Hot­Page также предлагает безопасные транзакции для доступа к ресурсам и позволяет пользователю исполнить команды выполнения, трансляции и запуска программ. Другим ключевым сервисом является информирование о статусе ресурсов и поддержка простых механизмов назначения заданий ресурсам. Информация о статусе включает: загрузку (процент использования) центрального процессора; карту процессорного узла; резюме использования очереди; текущую информацию об очереди для всех участвующих платформ.

    Другим примером портала Grid является GridPort [25] — переналаживаемый портальный инструментарий, который использует инфраструктуру HotPage. Двумя ключевыми компонентами GridPort являются сервисы Web-портала и прикладные API. Модуль Web-портала работает на Web-сервере и обеспечивает безопасное подключение к Grid. Прикладные API обеспечивают Web-интерфейс, который помогает пользователям разрабатывать заказные приложения без необходимости знать инфраструктуру портала. GridPort разработан для выполнения портальных сервисов и клиентских приложений на отдельных Web-серверах. Модули инструментария GridPortal использовались для разработки научных порталов в таких областях приложений, как моделирование фармакинетики, моле­кулярного моделирования, кардиофизиологии и томографии.

    Инструментарий сотрудничества порталов Grid [26] — это пример развитой формы сотрудничества между несколькими научными агентствами США, целью которой является поддержка общего набора компонентов и утилит для упрощения разработки порталов и интероперабельности различных порталов при использовании той же самой инфраструктуры ядра (а именно Grid Security Infrastructure (GSI) и Globus). Возможности портала следующие:

    • передача файлов, загрузка в удаленный (file upload) и в локальный компьютеры (file download), передача файлов третьих лиц (перемещение файлов между различными системами хранения данных);

    • запрос баз данных о специ­фи­кации ресурса/задания;

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

    В целом, портальные архитектуры основаны на трехъярусной модели, где клиентский браузер безопасно сообщается с Web-сервером по безопасным протоколам и подключениям. Web-сервер имеет доступ к различным сервисам Grid, использующим соответствующую инфраструктуру (например, Globus). Инструментарий Globus Toolkit обеспечивает механизмы для надежной передачи заданий цензору Globus (gate­keeper), запрашивая информацию об аппаратных и программных средствах через LDAP и безопасной инфраструктуре через GSI.

    3.5. Интегрированные системы.По мере появления компонентов второго поколения Grid ряд международных групп начали проекты по их объединению в когерентные системы. Эти проекты были направлены на конк­ретные высокопроизводительные при­ло­жения из широкого круга приме­нений.

    Одним из первых примеров такого рода систем был Cactus [27] — среда решения задач с открытым кодом. Cactus имеет модульную структуру, которая допускает выполнение параллельных приложений на широком диапазоне архитектур и возможность совместной разработки кода распределенными группами разработчиков. Cactus разработан в академической исследовательской среде, где физики и компьютерщики вместе работали над моделированием черных дыр. Cactus является входной системой ко многим внутренним сервисам параллельной файловой системы ввода/вывода HDF5 (универсальной библиотеки для хранения и форматирования файлов научных данных), научной библиотеки PETSc (набора программ и структур данных для параллельного решения научных задач, моделируемых дифференциальными уравнениями в частных производных с использованием MPI) и продвинутых инструментальных средств визуализации. Портал содержит опции для компиляции и развертывания приложений на распределенных ресурсах.

    Аналогичный eвропейский проект DataGrid [28], выполняемый в CERN, финансируется Европейским Союзом с целью создания крупномасштабной вычислительной и информационной сети ресурсов Grid для анализа данных научно-исследовательских работ. Первичным пилотным проектом для DataGrid явился Большой коллайдер адронов (Large Hadron Collider — LHC), который должен работать в CERN в 2005–2015 гг. и осуществить прорыв в изучении энергии, напряженности и частоты столкновений в пучках частиц. Этот рывок стал необходимым для поставки некоторых экспериментов с ранее неизвестными частицами, такими, как бозоны и сверхсимметричные кварки и лептоны. Главной проблемой, стоящей перед проектом, являются средства коллективного использования огромного количества данных, распределенных по инфраструктуре компьютерных сетей. DataGrid основывается на находящихся на стадии становления технологях Grid, которые, как ожидается, позволят развертывать крупномасштабные вычислительные среды, состоящие из распределенных коллекций файлов, баз данных, компьютеров, научных приборов и устройств.

    Целями проекта DataGrid являются:

    • реализация промежуточного ПО для администрирования структуры Grid, включая оценку, тестирование и интеграцию существующих средств промежуточного ПО и разработку новых средств программного обеспечения;

    • развертывание крупномасштаб­ной системы испытаний;

    • обеспечение демонстрационных приложений промышленного качества.

    Работа сосредоточена на распределенной обработке крупномасштабных приложений в области физики вы­соких энергий, биоинформатики, наук о земле. DataGrid разрабатывается на основе Globus и включает следующие компоненты:

    • Язык описаний заданий (JDL) — сценариев для описания параметров заданий.

    • Интерфейс пользователя (UI) — посылает работу брокеру ресурсов RB и принимает результаты.

    • Брокер ресурсов (RB) — находит и выбирает целевой вычислительный элемент (Computing Element — CE).

    • Сервис представления заданий (JSS) — представляет задание целевому CE.

    • Регистрация и бухгалтерский учет (L&B) — запись информации о статусе заданий.

    • Информационная служба Grid (GIS) — индекс информации о состоянии структуры Grid.

    • Каталог репликаций — список наборов данных и их дубликатов, находящихся на запоминающих элементах (Storage Elements — SE).

    Еще один европейский проект UNICORE (UNIform Interface to COm­puter REsources) [29] — это проект, финансируемый Министерством образования и науки Германии. Цели разработки UNICORE включают единый и легкий в использовании графический интерфейс пользователя, открытую архитектуру, основанную на понятии абстрактного задания, целостную (непротиворечивую) архитектуру защиты, ми­нимальную зависимость от локальных административных процедур, эксплуатацию существующих и находящихся на стадии становления технологий, основанных на стандарте Java и Web-технологиях. UNICORE обеспечивает интерфейс для подготовки заданий и безопасного их представления на распределенные ресурсы суперЭВМ.

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

    Главные компоненты UNICORE: агент подготовки заданий (JPA); контроллер монитора заданий (JMC); сервер https UNICORE, также называемый шлюзом (Gateway); супервизор сетевых заданий (NJS); графический интерфейс пользователя, основанный на Java-аплетах, с интерактивной справкой и средством помощи.

    Клиент UNICORE дает возможность потребителю создавать, представлять и управлять заданиями с любой рабочей станции или персонального компьютера, подключенных к Inter­net. Клиент соединяется с UNICORE через шлюз, который подтверждает подлинность клиента и пользователя перед контактированием с серверами UNICORE, которые в свою очередь управляют представленными UNICORE заданиями. Задания, предназначенные для локальных компьютеров, выполняются на их пакетных подсистемах, те же, которые будут выполнены на удаленных узлах, передаются на просмотр шлюзу. Все необходимые передачи данных и синхронизации выполняются серверами. Серверы также сохраняют информацию о статусе и результатах работы, передавая их клиентам по запросу пользователя. Компоненты третьей стороны, такие как Globus, могут быть интегрированы в структуру UNICORE для расширения его функциональности.

    UNICORE широко используется и разрабатывается для проекта Euro­Grid [30], финансируемого Европейской Комиссией. Этот проект направлен на изучение возможностей и специфических требований использования Grid в таких научных и промышленных направлениях, как биология, метеорология и автоматизация проектирования. Цели проекта Euro­Grid включают поддержку инфраструктуры программного обеспечения EuroGrid, разработку программных компонентов и прототипов программ распределенного моделирования в различных прикладных областях (биомолекулярное моделирование, прогноз погоды, интегрированное моделирование в автоматизации конструирования, структурный анализ и обработка данных в реальном масштабе времени).

    WebFlow [31] — еще одно вычислительное расширение модели Web, которое может быть использовано как основа для распределенной широкомасштабной обработки. Главная цель построения WebFlow состояла в том, чтобы сформировать единый «бесшовный» каркас для опубликования и многократного использования вычислительных модулей на Web так, чтобы конечные пользователи с помощью браузера сети могли участвовать в создании распределенных приложений, использующих модули WebFlow как визуальные компоненты, а редакторы как визуальные средства установления подлинности. WebFlow имеет трехъярусную основанную на Java архитектуру, которая может рассматриваться как визуальная система потока данных. Входные аплеты используются для авторизации, визуализации и управления средой. WebFlow использует основанный на сервлетах промежуточное ПО для управления и взаимодействия с прикладными модулями, такими, как унаследованные коды для баз данных или высокопроизводительного моделирования.

    WebFlow аналогичен Web; Web-страницы можно сравнить с WebFlow-модулями, а гиперсвязи, которые связывают Web-страницы, — с межмодульными каналами потоков данных. Разработчики содержимого WebFlow создают и публикуют модули, подсоединяя их к Web-серверам. Интеграторы приложений используют визуальные инструментальные средства, чтобы связать выходы исходных модулей со входами модулей назначения, формируя таким образом распределенные вычислительные графы (или вычислительные Web) и публикуют их как составные объекты модулей WebFlow. Пользователь инициирует эти вычислительные Web, переходя по соответствующим гиперссылкам, настраивая вычисление в терминах доступных параметров или используя высокоуровневые инструментальные средства для визуальной авторизации графов. Прикладные модули WebFlow реализованы с используованием Globus Toolkit, в частности MDS, GRAM и GASS.

    3.6. Одноранговые вычисления.Одним из подходов к решению проблем масштабирования является децентрализация. Традиционная клиент-серверная модель может стать узким местом в повышении производительности и единственным источником отказов, хотя все еще остается превалирующей, потому что децентрализация несет с собой собственные проблемы. Тем не менее одноранговые (Peer-to-PeerP2P) вычисления [32] (в Napster [33] и Gnutella [34]) и Internet-вычис­ления (в SETI@home [8] и Entropia [35]) являются примерами весьма общих вычислительных структур, которые поль­зуются преимуществом глобально распределенных ресурсов.

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

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

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

    3. Системы P2P должны работать с разнородными ресурсами, использу­ющими различные компоненты работы с сетями и операционные системы.

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

    Идеи Р2Р начинают привлекать и больших производителей. В 2001-м г. Sun Microsystems возвестила о начале про­екта JXTA [36] с открытым кодом для инфраструктуры и приложений P2P.

    Таким образом, второе поколение базового программного обеспечения для Grid в своем развитии перешло от ранних систем типа Globus-GT1 и Legion, специализированных для конкретных потребностей больших и высокопроизводительных приложений, к более универсальным и открытым средам, таким, как Globus-GT2. Вместе с базовым программным обеспечением во втором поколении также разработан ряд сопровождающих инструментальных средств и утилит для сервисов верхнего уровня, которые охватили планировщиков ресурсов и брокеров, а также предметно-ориентированные интер­фейсы пользователей и порталы. В течение этого периода появилась и техника одноранговых систем.

    4. Эволюция Grid: третье поколение

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

    Если традиционно Grid описывался в терминах крупномасштабных данных и вычислений, то в фокусе третьего поколения оказались новые и более общие понятия. В частности, если термины “распределенное взаимодействие” и “виртуальная организация” были приняты в основополагающей работе по исследованию Grid второго поколения [37], то для третьего поколения стало характерным более целостное представление вычислений Grid. Оно затрагивает не только технологию вычислений, но и всю инфраструктуру и приводит к новому понятию Е-науки (новые способы ведения исследований и организации труда уче­ного). Как заметил J. Fox [38], ожидаемое использование вычислительных средств с массовым параллелизмом — только часть появляющейся панорамы Grid, у которой имеется намного больше поль­зователей.



  • Скачать документ

    Похожие документы:

    1. 1 Паралельні та розподілені обчислення

      Документ
      ... системита мережі ОКР «спеціаліст» ОНУ 2012 1.Паралельні тарозподілені обчислення ... Механізм синхронізації паралельних процесів, семафор ... MPI. Модель MPI-програми. Розподілені операції технології MPI. ...
    2. Роль і місце бухгалте рського обліку контролю й аналізу в розвитку економічної науки та практики збірник матеріалів міжнародної науково-практичної конфер енції 14 травня 2010 р удк 657 22

      Документ
      ... і, що використовуються для обчислення кількості працюючих та фінансових показників, зг ... і бути чітко визначені тарозподілені обов’язки окремих прац ... складових. Для вітчизняної системи обліку характерне паралельне існування бухгалтерського і податкового ...
    3. П ерелік дисциплін які виносяться для вступу на освітньо-кваліфікаційний рівень магістра зі спеціальності « комп’ютерні системи та мережі»

      Документ
      ... системита мережі» ● Периферійні пристрої ● Системне програмне забезпечення ● Паралельні тарозподілені обчислення ● Основи алгоритмізації та ... програмування ● Комп’ютерні системи ● ...
    4. П ерелік дисциплін які виносяться для вступу на освітньо-кваліфікаційний рівень магістра зі спеціальності « комп’ютерні системи та мережі»

      Документ
      ... системита мережі» ● Периферійні пристрої ● Системне програмне забезпечення ● Паралельні тарозподілені обчислення ● Основи алгоритмізації та ... програмування ● Комп’ютерні системи ● ...
    5. «молода наука-2010» збірник матеріалів університетської науково-практичної конференції студентів та молодих учених

      Документ
      ... собою загальну характеристику системи формування, розподіленнята використання кадрів [1]. ... Уточнень потребує чинна методика обчислення показників рентабельності сільськогосподарського ... програмами, щоквартально, тапаралельно публікувати рейтинг ...

    Другие похожие документы..