По различным оценкам, в ближайшее время в научных исследованиях, которые ведутся на Большом адронном коллайдере (БАК, ЦЕРН, Швейцария), в экспериментах на коллайдере НИКА (Дубна, Россия) и комплексе FAIR (GSI, Германия), в молекулярной биологии и биоинформатике (геномное секвенирование), в вычислительной нейробиологии (например, проект по созданию цифровой модели мозга BlueBrain Лозаннского политехнического института) и проч., будут накоплены экзабайты данных. При разработке модели управления, обработки и хранения таких объемов научных данных необходимо учитывать множество факторов — в частности, наличие и возможности высокоскоростных сетей, развитие микропроцессорных технологий и систем хранения. Фундаментальной проблемой является создание географически распределенной инфраструктуры — озера научных данных (data lake) на основе суперкомпьютерных центров, ресурсных центров высокопроизводительных вычислений (гриды) и облачных центров, — позволяющей развернуть среду, в которой для конечного пользователя вычислительная инфраструктура выглядит логически единой. До недавнего времени в качестве такой инфраструктуры использовалась модель гридов, которая неплохо подходила для работы с данными, имеющими объемы до десятков петабайт, однако для обработки, анализа и хранения экзабайтов результатов научных экспериментов требуются новые алгоритмы и приложения (возможно, на основе методов машинного обучения — например, для автоматического распределения данных между носителями), а также нереляционные базы данных для хранения метаинформации.
Чтобы нивелировать различия в архитектурных решениях вычислительных центров, нужна система управления потоками заданий на обработку и анализ данных. Кроме того, для инфраструктуры озера необходима система мониторинга и контроля, а также отслеживания функционирования распределенной вычислительной инфраструктуры с использованием классических методов визуальной аналитики. Глубокий анализ процессов функционирования распределенных вычислительных инфраструктур позволит осуществлять поиск возможных причин нестабильной работы различных вычислительных задач и принимать соответствующие оптимизационные решения. Для этого потребуется совместное применение методов статистического анализа, машинного обучения и интерактивной визуальной аналитики. В отслеживании возможных отказов и принятии превентивных мер по перераспределению ресурсов поможет моделирование процессов анализа и обработки.
Работы по созданию озер научных данных ведутся сегодня как в рамках международных (WLCG, Worldwide LHC Computing Grid) и национальных проектов (IRIS-HEP, США; INDIGO, Италия/Германия), так и силами отдельных компаний (Google, Amazon, «Яндекс»). На рис.1 представлена одна из возможных архитектур озера научных данных, предлагаемых в рамках концепции физических экспериментов для этапа работы коллайдера с повышенной светимостью и энергией в 2025–2032 годах (суперБАК) [1].
Рис.1. Вариант архитектуры научного озера данных |
Основные принципы архитектуры научного озера данных:
- логическое разделение вычислительной инфраструктуры и хранения данных;
- наличие сервисов высокого уровня (управления потоками заданий, загрузкой и данными), взаимодействующих со всеми элементами инфраструктуры и управляющих использованием ресурсов;
- наличие иерархической, географически распределенной структуры из региональных озер данных различного объема с определенной сетевой топологией, внутренними механизмами балансировки, поддержки целостности и необходимой избыточности данных;
- наличие «умных» сервисов для передачи данных между всеми компонентами инфраструктуры, а также сервисов для определения и предсказания объемов вычислительных ресурсов, необходимых для выполнения потоков заданий.
В ходе эксперимента ATLAS по созданию «океана данных» компания Google предложила пилотный проект [2] на базе своих ресурсов GCE (Google Compute Engine) и облачной инфраструктуры GCP (Google Cloud Platform) с доступом из полутора сотен различных центров консорциума WLCG. В рамках этого проекта данные мигрировали между Европой и США, в зависимости от их популярности в разных регионах.
За основу архитектуры российского озера научных данных был взят опыт НИЦ «Курчатовский институт», ОИЯИ и СПбГУ, полученный при создании прототипа распределенного федеративного хранилища данных [3]. Однако сегодня ландшафт ресурсов заметно изменился: возросла роль суперкомпьютеров при решении большого числа однородных задач (ранее речь шла о выполнении больших канонических приложений, таких как моделирование климата, квантовой хромодинамики, материаловедения); выросла специализация — например, для приложений физики высоких энергий используются только вычислительные ресурсы МИФИ, ИТЭФ, НИИЯФ и МГУ, а для ряда других задач применяются специализированные центры (ВЦ МГУ, ВЦ РАН, СКИФ) и крупные центры обработки и хранения данных (НИЦ КИ, ОИЯИ). Изменился и масштаб коммуникаций: крупнейшие центры России теперь связаны с европейскими исследовательскими центрами (ЦЕРН, DESY, GSI) через академические высокоскоростные вычислительные сети (LHCOPN, LHCONE, Geant, NorduNet), в которых нижний уровень передачи данных обеспечивается сервисом FTS (File transfer service — стандарт де-факто передачи данных экспериментов БАК). При создании распределенной гетерогенной вычислительной инфраструктуры в новых условиях возник ряд проблем, связанных с иерархией хранения информации, гетерогенностью компьютерных ресурсов, необходимостью перемещения огромных массивов данных и управления ими, а также с обеспечением единого пространства имен.
Российское озерo научных данных базируется на центрах управления НИЦ «Курчатовский институт» и ОИЯИ, что в первую очередь необходимо для экспериментов на БАК и НИКА, хотя востребовано и в других исследовательских проектах — например, проводимых на реакторе ПИК (Пучковый исследовательский комплекс в ПИЯФ) для изучения нейтронов и объектов микромира, а также на коллайдере «супер чарм-тау фабрика» в новосибирском Институте им. Г.И. Будкера. Озеро может применяться и в коммерческих приложениях — например, для работы с данными географически распределенных корпораций, медицинских учреждений и пр. Для приложений физики высоких энергий узлы распределенного федеративного хранилища могут быть ассоциированы с российскими исследовательскими центрами и университетами, а само хранилище может выступать как часть глобальной федерации с ЦЕРН, DESY и GSI. Ключевое требование к узлам федеративного хранилища — наличие высокоскоростного сетевого соединения с центрами управления. Для научных приложений и ученых, участвующих в исследовательских проектах, данная инфраструктура выглядит как высокопроизводительная отказоустойчивая система хранения с единой точкой входа.
Создание такого хранилища позволит отечественным научным центрам полноценно участвовать в общей распределенной обработке данных, избавив их от необходимости разворачивать и поддерживать собственное полнофункциональное хранилище, требующее регистрации в информационных системах научных коллабораций. Сейчас необходимо регистрировать каждый отдельный сайт, независимо от его размера, а в новой модели предлагается регистрировать все озеро. Кроме того, необходим штат высококвалифицированных администраторов, разбирающихся в тонкостях организации программного стека различных научных коллабораций. Наличие отказоустойчивого централизованного сервиса управления позволит динамически перераспределять копии данных между всеми участниками федеративной системы хранения, минимизируя время доступа к данным без нарушения надежности.
Отличие российского проекта озера данных от аналогов (US data ocean, INDIGO) и прототипов (Google «data ocean») состоит в использовании высокопроизводительных ресурсов хранения данных крупнейших российских научных центров, имеющих первый уровень в иерархии WLCG. К ним относятся ОИЯИ и НИЦ «Курчатовский институт», ориентированные на мультидисциплинарные научные исследования, что позволит продемонстрировать востребованность созданной инфраструктуры для работ не только в области физики, но и в биоинформатике, материаловедении. При создании полноценного озера научных данных необходимо также следующее:
- обеспечение российским и зарубежным участникам экспериментов доступа к научным данным, включая средства автоматической репликации и балансировки данных внутри федеративного хранилища, а также инструменты оптимизации эксплуатационных затрат на обслуживание инфраструктуры, что позволит отечественным ученым получить прямой доступ к данным даже в условиях значительной географической удаленности от экспериментальных установок и от вычислительных ресурсов;
- организация единого федеративного дискового пространства, развертывание систем мониторинга и аутентификации, гарантирующих высокую доступность и безопасность ценных научных данных большого объема;
- ориентация на перспективные научные эксперименты, проводимые российскими учеными, а также на совместные эксперименты с привлечением российских установок (НИКА, ПИК, «супер чарм-тау фабрика»).
Российское озеро научных данных на начальном этапе обслуживает европейскую часть страны, это означает физическую консолидацию значительной части хранилища в нескольких центрах. Остальные ресурсы хранения, не объединенные в озере, используются для временного хранения («кэширования» данных), что позволяет уменьшить издержки на эксплуатацию центров и упрощает доступ к данным.
Компоненты российского озера научных данных
Озеро данных (data lake) — хранилища и мультифункциональные центры с ресурсами хранения в сотни петабайт, обладающие возможностями самобалансировки данных внутри озера и предоставляющие сервисы проверки целостности данных. Типы озера: серверное озеро для хранения мастер-копии данных, используемой для обработки и копирования в «кэши»; озеро для анализа данных средствами его собственной вычислительной инфраструктуры и вычислительных центров (ATLAS и ALICE); архивное озеро — хранилище для информации, не предполагающее интенсивного доступа на чтение.
Внешние ВЦ — центры, не входящие в состав распределенной вычислительной инфраструктуры, но имеющие доступ ко всем озерам данных через единую точку входа.
Суперкомпьютерные ресурсы: фабрики обработки данных — крупные вычислительные центры, имеющие прямой доступ к озеру научных данных и достаточную пропускную способность сети; суперкомпьютерные центры, используемые для обработки и анализа данных, имеющие доступ к озеру, использующие локальное кэширование либо обмен между кэшем и озером. Такой подход был продемонстрирован при обработке данных ATLAS и в проекте по исследованию ДНК мамонта [4].
Облачные ресурсы — прямой доступ к данным или возможность копирования данных из озера для обработки внутри облака.
Рис. 2. Миграция данных в пределах озера |
Для создания инфраструктуры озера данных потребуется разработка системы управления потоками заданий и системы, предназначенной для определения региона хранения нужных данных, направления потока заданий на свободные центры обработки данного региона или принятия решения о кэшировании данных с последующим привлечением к работе суперкомпьютерных центров или ресурсов из облака, в том числе и на коммерческой основе. Необходимо также провести дополнительные исследования особенностей хранения данных: распределение по носителям разных типов, связь метаданных и данных, автоматическая миграция между различными озерами (рис. 2). Оптимизация передачи данных внутри озера и распределение данных внутри него могут выполняться, например, на основе предопределенного сценария (данные равномерно распределяются внутри озера), с учетом наличия свободных ресурсов (данные поступают в хранилища с достаточным запасов ресурсов) или с помощью алгоритмов машинного обучения, использующих сведения о времени обработки данных каждого типа на вычислительном ресурсе конкретного типа.
При построении вычислительной инфраструктуры озера научных данных необходимо проработать вопросы отказоустойчивости, оптимизации размеров хранилищ и кэшей данных; установить требования к пропускной способности сетей, а также предусмотреть средства мониторинга основных компонентов инфраструктуры.
***
Создание озер научных данных актуально для всех стран, претендующих на ведущие роли в научных сообществах. Соответствующие проекты будут инициированы в 2020 году в США и Европе — это проект US Data Lake, финансируемый NSF, и программа Horizon2020 в Евросоюзе. Развертывание собственных управляющих центров, контролирующих политику распределения данных внутри озера данных, — одна из главных причин реализации соответствующего проекта и в России. Ученые из стран, которые лишь подключены к федерации с центрами управления в зарубежных научных центрах, не имеют контроля над получаемыми и хранимыми в рамках федерации данными, а их собственным центрам отводится роль разрозненных файловых хранилищ.
Литература
- A. Klimentov et al. A Roadmap for HEP Software and Computing R&D for the 2020s. arXiv:1712.06982 [physics.comp-ph], Dec 2017.
- A. Klimentov, K. De, M. Lassnig. ATLAS & Google — «Data Ocean» R&D Project, preprint CERN ATL-SOFT-PUB-2017-002, 29 Dec. 2017.
- M. Lassnig, A. Klimentov, K. De et al. ATLAS & Google — The Data Ocean Project, 23rd International Conference on Computing in High Energy and Nuclear Physics, CHEP 2018, Sofia, Bulgaria, 9–13 Jul 2018.
- Алексей Климентов, Руслан Машинистов, Алексей Пойда. От PanDA до мамонта // Открытые системы.СУБД. — 2017. — № 3. — С. 36–37. URL: www.osp.ru/os/2017/03/13052703 (дата обращения: 21.10.2018).
Алексей Климентов (alexei.klimentov@cern.ch) — начальник лаборатории НИЦ «Курчатовский институт», Брукхэвенская национальная лаборатория, Андрей Кирьянов (andrey.kiryanov@cern.ch) — начальник отдела НИЦ, Петербургский институт ядерной физики имени Б. П. Константинова (Гатчина), Андрей Зароченцев (andrey.zar@gmail.com) — научный сотрудник СПбГУ. Работа поддержана грантами РФФИ (15-29-0794_2 ofi_m) и Министерства высшего образования и науки РФ (14.Z50.31.0024). Статья подготовлена на основе материалов выступления на конференции «Технологии управления данными 2018».