Showing revision 25

SciDB

Проект SciDB

Краткое содержание проекта

Цели, задачи, методы, планы

Введение

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

Обычно, из-за низкой производительности современных систем, исходные данные научных наблюдений хранятся вне каких-либо СУБД, и только метаданные индексируются в базе данных. Для доступа и обработки исходных данных научным коллективам приходится разрабатывать свои программные системы под каждую конкретную задачу. При таком подходе очень трудно поддерживать версионность данных, историю их изменений, получение научных результатов из "сырых" данных, что нарушает один из основных принципов науки - повторяемость научных результатов.

Еще одна особенность современных научных экспериментов - это сочетание распределенного хранилища данных с необходимостью доступа к высокопроизводительным вычислительным комплексам для получения научных данных из результатов эксперимента и их анализа. Такие вычислительные комплексы в настоящее время в основном используются для решения расчетных задач, не требующих работы со сверхбольшими данными. Однако, и в задачах численного моделирования появились требования к возможности сохранения текущего состояния в СУБД, например, расчет космологической эволюции Вселенной требует сотни гигабайт для сохранения одного "слепка" Вселенной. Подобные расчеты ведутся на распределенных кластерах с тысячами процессоров и возможность работы с такими данными в СУБД позволяет проследить историю эволюции отдельных объектов Вселенной (частицы, звезды, галактики, скопления галактик…).

Сложившаяся ситуация в больших научных проектах была оценена ведущими учеными из разных наук,представителями коммерческих компаний и разработчиками в области СУБД (систем управления баз данных) на серии конференций XLDB 2007 и 2008 гг, в результате чего возник проект SciDB под руководством профессора MIT Майка Стоунбрейкера и его коллег из крупнейших университетов США. Основная цель проекта - разработка в кратчайшие сроки СУБД для нужд больших научных и промышленных проектов, в которых требуется анализ сверхбольших объемов данных (сотни и тысячи петабайт,масштабируемая на тысячи серверов).

Новая СУБД для больших объемов научных данных

Система SciDB разрабатывается в первую очередь исходя из требований больших научных проектов и имеет ряд принципиальных отличий от существующих СУБД. SciDB разрабатывается как система для хранения и анализа сырых и производных научных данных. Некоторые основные функции традиционных баз данных не поддерживаются в SciDB, позволяя системе более эффективно обрабатывать аналитические запросы. Например, так как исходные данные фактически не обновляются, в SciDB не предусмотрена эффективная поддержка больших объемов транзакций, что позволяет избежать серьезных накладных расходов. Наконец, SciDB – проект с открытым исходным кодом и бесплатной лицензией на использование, что отвечает требованиям большинства заказчиков. Открытый код позволяет экономить средства заказчиков на масштабные внедрения системы, а открытый процесс разработки обеспечивает высокое качество технических решений. Кроме того, открытость СУБД обеспечивает технологическую независимость и возможность обмена данными между разными научными коллективами.

Кроме привычных функций систем управления базами данных, в SciDB присутствуют новые механизмы работы с данными, специально разработанные для анализа научных данных. Модель данных SciDB представляет из себя многомерные вложенные массивы, таким образом ученым не надо моделировать свои данные как таблицы записей, что в свою очередь ведет к более простой формулировке аналитических запросов и на порядки увеличивает производительность системы. Так как в SciDB будут хранится данные полученные с приборов, SciDB поддерживает погрешность измерений на уровне модели данных и языка запросов. Наконец, SciDB изначально разрабатывается для работы на большом спектре вычислительных систем, от переносного ПК до больших кластеров и суперкомпьютеров. Таким образом, ученые смогут работать с данными в одной среде, например отлаживая аналитические алгоритмы на персональных компьютерах используя небольшую выборку данных, а отлаженные запросы без изменений запускать на высоко-производительных кластерах. Также, SciDB интегрируется с популярными вычислительными пакетами программного обеспечения, такими как R, Matlab и другие, что позволит ученым использовать уже готовые алгоритмы обработки данных при переходе на SciDB.

Полноценная поддержка полного цикла работы с научными данными

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

Сотрудничество с ведущими научными проектами

SciDB разрабатывается в тесном сотрудничестве с ведущими научными проектами – потенциальными заказчиками системы. В научный совет SciDB входят ученые от различных направлений науки, включая: астрономию, нанотехнологии, генетику, сейсмологию, ядерную физику, метеорологию, и др. При этом, два проекта, LSST (Large Synaptic Survey Telescope) и российский космический проект ЛИРА (многоцветный фотометрический обзор всего неба до 16-17 звездной величины), предоставили детальные требования для использования SciDB в своих системах и часть исходных данных. Следовательно, система SciDB разрабатывается прямо под требования заказчиков и проходит апробирование на реальных задачах уже в процессе разработки.

Коммерческие применения

Применение системы SciDB не ограничивается научными проектами. Задача анализа больших объемов данных остро стоит и перед крупными коммерческими компаниями, и некоторые компании уже проявили интерес к проекту SciDB. Компания «eBay» является одним из спонсоров проекта SciDB и планирует использовать систему для анализа навигации пользователей по веб-сайту компании.

Так как SciDB расширяет возможности традиционных СУБД, систему можно использовать для анализа любых данных коммерческих компаний. При этом, допущения, принятые для SciDB: отсутствие большого объема транзакций, де-факто действительны и для коммерческих компаний. Хотя обычно в коммерческих приложениях анализируются данные транзакций, система анализа из-за причин производительности всегда вынесена из транзакционной системы. Таким образом, SciDB является конкурентом традиционных СУБД для аналитических приложений в коммерческом секторе.

SciDB имеет особое значение для российского рынка. Крупнейшие отраслевые российские компании (Газпром,РАО ЕС, телекомы, операторы связи, и т.д.) оперируют гигантскими объемами данных для аналитических расчетов, при этом используются очень дорогие коммерческие СУБД (сотни и тысячи установок), на поддержание которых тратятся значительные средства. Постепенный переход на масштабированную и распределенную СУБД нового поколения позволит высвободить средства на развитие производства и добиться независимости от поставщиков СУБД (американские компании).

Космический Эксперимент "Лира"

Цель КЭ - это первый российский высокоточный многоцветный фотометрический обзор звезд всего неба до 16-17 звездной величины, над которым работают ГАИШ-МГУ (Государственный Астрономический институт им. П.К. Штернберга, Московский Государственный Университет им. М.В.Ломоносова) и ОАО РКК "Энергия" контракт No.351-8623/07 от 05.06.2007 г.. В обзор войдут около 400 млн. звезд. Уникальная методика наблюдений позволит получить точность измерения блеска для звезд предельной величины около 1%, а для ярких звезд (ярче 12 зв. величины) - 0.1%. Измерения будут вестись в 10 спектральных полосах от 0.2 до 1.0 мкм (т.е. в оптическом и близком УФ и ИК диапазонах) с борта Российского сегмента МКС. Ожидаемый старт проекта - 2013 год. На протяжении 5 лет ожидается получить около 400 Тб данных, для хранения и обработки которых потребуется масштабируемое распределенное хранилище и мощный вычислительный кластер для получения научных данных их наблюдений и решения задач поиска закономерностей (data mining). Кроме того, планируется предоставить доступ к данным международному научному сообществу.

Подробный список научных задач:

1. Изучение звезд
    1.1. Фотометрические стандарты для атмосферных и внеатмосферных
наблюдений.
    1.2. Пекулярные непеременные звезды.
    1.3. Микропеременность звезд (\Delta m<0.1-0.03).
    1.4. Переменные звезды: создание каталога звезд заподозренных в
переменности.
    1.5. Переменные звезды: классификация по коротким рядам (меньше
100 наблюдений) многоцветной фотометрии.
    1.6. Эволюция звезд по двух- и многоцветным диаграммам.
    1.7. Поиск фотометрических двойных звезд (выделение двух
максимумов в спектре излучения).
    1.8. Поиск близких красных карликов.
    1.9. Поиск близких бурых карликов.
2. Изучение Галактики.
    2.1. Изучение шаровых скоплений.
    2.2. Изучение рассеянных скоплений.
    2.3. 3D структура Галактики по фотомектрическим параллаксам.
    2.4. Межзвездное поглощение до горячих звезд по наблюдениям в
ультрафиолете.
    2.5. 3D структура Галактики по данным о межзвездном поглощении.
    2.6. Многоцветные карты туманностей.
3. Изучение Солнечной Системы.
    3.1. Обнаружение новых малых тел (астероидов).
    3.2. Уточнение орбит известных астероидов.
    3.3. Исследование поверхности малых тел по их многоцветной фотометрии.
4. Околоземное пространство.
    4.1. Многоцветная фотометрия ИСЗ.
    4.2. Ренистрация и исследование космического мусора.
5. Астрометрия.
    5.1. Относительные координаты звезд с точностью 0.003" для V<12m и
с точностью 0.01" для V<16m.
    5.2. Параллаксы звезд.
    5.3. Собственные движения звезд.
    5.4. Аномальные смещения объектов.
    5.5. Прямое измерение расстояний до объектов Солнечной системы.
6. Прочее.
    6.1. Построение многоцветной карты фона неба.
    6.2. Метрология фотометрии звезд.
    6.3. Методические вопросы.
    6.4. Старение CCD и интерференционных фильтров в близком космосе.

Текущий статус SciDB и планы развития

  • Сформированы международные команды исследователей и разработчиков под руководством крупнейших авторитетов в области баз данных (Стоунбрейкер,ДеВитт,Майер и другие)
  • Разработан прототип системы, который был представлен на крупнейших международных конференциях SIGMOD 2009 (Providence, USA) , VLDB 2009 (Lyon, France)
  • На основе прототипа в первом квартале 2010 года планируется первая публичная версия SciDB для ознакомления научной общественностью.
  • Ведутся периодические телефонные конференции для выработки совместных планов работы над следующей версией SciDB
  • Американские исследователи и разработчики получили частичное финансирование от американских научных фондов
  • К 2012 году планируется начало тестирование SciDB в проекте LSST

Российская команда разработчиков SciDB

Российские разработчики (НИИСИ РАН) приняли участие уже на самом раннем этапе работы над SciDB и заняли лидирующие позиции среди сновных разработчиков.

В дальнейшем к команде присоединились ведущие российские разработчики (ГАИШ МГУ) крупнейшей СУБД PostgreSQL, имеющие опыт не только в разработке СУБД, но и участия в крупных научных проектах. ГАИШ МГУ в рамках подготовки КЭ "Лира" работает над списком научных задач, выработкой требований, а также располагает серьезной инфраструктурой, необходимой для разработки и тестирования СУБД.

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

Планируется привлечь к работе студентов старших курсов и аспирантов ведущих российcких вузов, для который участие в столь масштабном проекте будет хорошей школой и редкой возможностью работы с ведущими мировыми специалистами в области баз данных. Развитие SciDB будет вестись не один год, отслеживая запросы новых научных экспериментов, поэтому для сохранения одной из ведущих ролей в проекте очень важно иметь своих специалистов (исследователей, разработчиков) и предлагаемый проект позволит выучить в условиях реальной работы над СУБД нового поколения (разработка которой силами одной страны в краткие сроки практически невозможна) отечественных разработчиков и постепенно интегрировать их в проект. Кроме того, КЭ "Лира" (рассчитанный на 5 лет) получит грамотных специалистов, без которых будет очень трудно проводить научные исследования на стыке астрономии и информационных технологий.

Следует отметить, что