научная статья по теме СИСТЕМА РАСПРЕДЕЛЕННОГО ХРАНЕНИЯ И АНАЛИЗА ГЕНОМНОЙ ИНФОРМАЦИИ Биология

Текст научной статьи на тему «СИСТЕМА РАСПРЕДЕЛЕННОГО ХРАНЕНИЯ И АНАЛИЗА ГЕНОМНОЙ ИНФОРМАЦИИ»

МОЛЕКУЛЯРНАЯ БИОЛОГИЯ, 2004, том 38, № 1, с. 104-109

== КОМПЬЮТЕРНАЯ ГЕНОМИКА =

УДК 577.08.23

СИСТЕМА РАСПРЕДЕЛЕННОГО ХРАНЕНИЯ И АНАЛИЗА ГЕНОМНОЙ ИНФОРМАЦИИ

© 2004 г. А. А. Черный*, К. А. Трушкин, В. А. Боковой, А. К. Яновский1, Н. В. Твердохлебов2, А. В. Жучков1, Ю. П. Лысов

Институт молекулярной биологии им. В.А. Энгелъгардта Российской академии наук, Москва, 119991 Телекоммуникационный центр "Наука и общество", Москва, 119911 2Институт химической физики им. Н.Н. Семенова Российской академии наук, Москва, 119911

Поступила в редакцию 01.09.2003 г.

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

Ключевые слова: биологические базы данных, распределенные вычисления.

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

Еще 15 лет назад данные о секвенированных последовательностях были в основном на магнитных лентах. Несколько позже данные стали распространять по подписке на оптических носителях (CDROM). В Европейской молекулярно-био-логической лаборатории (EMBL) подготавливали раз в квартал выпуски банков данных и рассылали по почте. Для обеспечения информационной поддержки российских исследователей, работавших по программе "Геном человека", нами совместно с лабораторией A.A. Миронова разработан специальный формат хранения генетической ин-

Принятые сокращения: ЛВС - локальная вычислительная сеть; ЕМБЬ - Европейская молекулярно-биологическая лаборатория.

* Эл. почта: black@eimb.ru

формации - CAN-формат (Compressed Amino Acids and Nucleotides format) [1], а также библиотека программных средств, необходимая для работы с данными в этом формате. Программное обеспечение включало в себя собственно процедуры компрессии данных, создание индексированных словарей по описательной части документов, а также процедуры быстрого поиска и анализа данных, хранящихся в "сжатом" виде. Разработанные процедуры включены в созданный ранее пакет программ DNA-SUN [2], что позволило производить поиск и анализ информации, содержащейся в преобразованных базах данных нуклеотидных

Рис. 1. Рост объемов банка данных нуклеотидных последовательностей (EMBL) за последние 20 лет.

(в формате БМБЬ) и аминокислотных последовательностей (8"Ш88РЯОТ) на доступных РС-ком-пьютерах. Использование САК-формата обеспечило более чем двукратное сокращение объема, занимаемого данными, без уменьшения, а зачастую и с увеличением, скорости доступа к информации и возможностям ее анализа. Такое сокращение объема позволяло нам после получения из БМБЬ очередного выпуска баз данных производить компрессию и индексирование, а затем переработанные данные вместе с программами поиска и анализа передавать на магнитных носителях (а в последствии на СБЯОМ) в различные лаборатории, ведущие исследования по программе "Геном человека".

На сервере в Центре информации о структуре генома человека, наряду с компрессированными банками данных аминокислотных и нуклеотид-ных последовательностей, мы размещали также ряд иных генетических баз данных, получаемых по подписке. Кроме того, на одном из компьютеров локальной вычислительной сети (ЛВС) мы дублировали нативный формат хранения данных с процедурами анализа информации, поступающими вместе с банками данных на СБЯОМ из БМБЬ, и отсутствующими в БКА-БиК.

Чтобы обработать удаленные запросы, поступающие от исследователей, эпизодически обращающихся к банкам данных, мы разработали программное обеспечение для поиска в банках генетической информации с использованием мощностей выделенных компьютеров, подключенных к ЛВС Института. Запрос от пользователя, полученный по ЛВС или по электронной почте, попадал на файл-сервер, обрабатывался на выделенных рабочих станциях ЛВС, задействованных в обработке запросов, а результат возвращался пользователю по электронной почте. В то время в Национальном центре биотехнологической информации (КСБ1) Национального института здоровья США (МИ) уже производили обработку поступающих по электронной почте запросов с использованием высокопроизводительных компьютеров, однако, для многих российских исследователей эта услуга была малодоступна в связи с высокой стоимостью зарубежного траффика. Появление в России такой системы обработки запросов являлось основой для создания и широкого использования различных дополнительных средств анализа, отсутствовавших на сервере КСБ1.

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

решения задач на основе исполнения удаленного запроса специально выделенными компьютерами называется распределенными кластерными вычислениями или мета-компьютингом. В настоящее время кластерные вычисления получили широкое распространение во всем мире. Более подробную информацию о современном состоянии распределенных вычислений можно найти, например, на сайте http://parallel.ru/.

В 1995 г. появилась операционная система Windows-95, которая уже поддерживала реальную многозадачность (операционная система Windows NT тогда уже существовала, но попадала под эмбарго). Примерно в это же время, благодаря созданию браузеров, принципиально изменились возможности Интернет-доступа - появилась удобная возможность оформления запросов непосредственно со страницы WEB-сервера. Хотя к этому моменту Интернет в виде электронной почты и пересылки существовал уже несколько лет, появление браузеров привело к взрыву в развитии Интернета - в конце 1994 г. в США количество WWW-серверов удваивалось примерно раз в месяц. Все это в совокупности переводило возможности вычислительных систем на качественно новый уровень - исполнение запросов в режиме "on line". В это время, используя открывшиеся новые возможности, мы приступили к созданию распределенной системы обработки запросов, которая, изменяясь и развиваясь, действует с конца 90-х годов.

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

Распараллеливание проводимых расчетов обеспечивается специальным форматом обмена данными и заданиями, а также двумя основными созданными нами блоками программ: а) блоком "диспетчер", координирующим исполнение запроса на станциях вычислительного кластера; б) блоком разбиения на подзадачи, позволяющим

106

ЧЕРНЫЙ и др.

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

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

Блок разбиения на подзадачи поддерживает многоуровневое иерархическое разбиение исполняемого задания на серию подзадач, обеспечивающее оперативное получение конечного результата на основе использования общей мощности вычислительного кластера. Этот блок позволяет: а) при исполнении промежуточного задания получать на выходе серию новых заданий, подготовленных к исполнению и передаваемых в качестве отдельных задач блоку "диспетчер". Такое разбиение одной задачи на серию подзадач может производиться на различных уровнях вложенности с появлением иерархического семейства требующих исполнения заданий; б) поддерживать режим предпочтительности

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком