Проектирование структуры Базы Данных для проекта NICA
Разработка трехуровневая архитектура хранилища данных для результатов магнитных измерений.
Основной целью при разработке структуры базы данных для проекта NICA являлось создание универсального решения, реализующего систему хранения и обработки результатов магнитных измерений, представляющего также удобный интуитивно-понятный интерфейс для доступа к данным, хранящимся в СУБД. В качестве платформы выбрана распределенная колоночная СУБД Vertica. С помощью технологии Apache Airflow построены направленные ацикличные графы, которые позволяют параллельно запускать ETL-процессы.
Введение ……………………………………………………………………………………….. 3
Постановка задачи………………………………………………………………………… 10
Глава 1. Анализ существующей системы хранения и обработки
результатов магнитных измерений ………………………………………………… 12
1.1. Методология проведения магнитных измерений, основные
принципы ………………………………………………………………………………….. 13
1.2. Схема процессов сбора данных и обработки результатов
магнитных измерений ………………………………………………………………… 15
1.3. Особенности форматов данных магнитных измерений…………. 17
1.4. Обзор получаемых параметров …………………………………………… 20
1.5. Актуализация потребности в организации хранилища.
Перспективы. …………………………………………………………………………….. 21
1.6. Основные требования к структуре базы данных …………………… 24
Глава 2. Проектирование Базы Данных ………………………………………….. 26
2.1 Общие принципы организации хранилища для
экспериментальных данных ……………………………………………………….. 27
2.2 Обоснование выбора колоночной СУБД ……………………………… 30
2.3 Выбор Базы Данных. Сравнение инструментов ……………………. 34
2.4 Vertica ………………………………………………………………………………. 36
2.5 Архитектура хранилища данных ………………………………………… 40
2.6 Cхема Базы Данных для слоя CDL ……………………………………… 43
2.7 Витрина данных ………………………………………………………………… 45
Глава 3. ELT- процесс …………………………………………………………………… 47
3.1 Apache Airflow …………………………………………………………………… 47
3.2 Реализация графов в Airflow ………………………………………………. 49
Заключение ………………………………………………………………………………….. 51
Список литературы ………………………………………………………………………. 53
Общая структура проекта NICA и особенности его реализации.
Актуализация задачи.
В настоящей работе речь пойдет о разработке структуры базы данных для большого научно-исследовательского проекта. Это небольшая, но очень важная часть огромного эксперимента. Для того, чтобы актуализировать задачу и создать переход между самим глобальным проектом и ролью решаемой задачи в нем, ниже приводится достаточно объемное введение.
В России с 2013 года ведется строительство большого ускорительного комплексa NICA (Nuclotron-based Ion Collider fAcility) — рoссийского коллайдера прoтонов и тяжeлых иoнов (Рис.1). [1]. Комплекс возводится на бaзе Лаборатории физики высоких энергий (ЛФВЭ) им.В.И.Векслера и А.М.Балдина Объединенного института ядерных исследований (ОИЯИ) в городе Дубна Московской области. Строительство нового ускорителя планируют завершить в 2022 году.
Ускорительный комплекс создаётся с целью исследования области физики частиц в ранее недоступной области параметров и условий эксперимента — получение интенсивных пучков тяжёлых ионов и поляризованных ядер с целью поиска смешанной фазы ядерной материи и исследования поляризационных эффектов [2] в области энергий до 11 ГэВ/н.
Для физики данная область считается одной из наиболее перспективных. Максимальная энергия ускорителей в принципе ограничивается размерами и стоимостью магнитной системы.
Сoвременные ускoрители являются oгромными дорoгостоящими кoмплексами, требующими больших интеллектуальных, физических и материальных вложений.
3
Комплекс NICA обеспечит широкий спектр пучков: от протонных и дейтронных, до пучков, состоящих из таких тяжёлых ионов, как ядра золота. Тяжёлые ядра будут ускоряться до энергии вплоть до 4,5 ГэВ/нуклон, протоны — до 12,6 ГэВ.
Планируется осуществлять прикладные и фундаментальные исследования в таких областях науки и технологии, как:
• радиобиология и космическая медицина;
• терапия раковых заболеваний;
• развитие реакторов, управляемых пучком ускорителя
(«производство энергии» с подкритичной сборкой), и технологий
трансмутации отходов ядерной энергетики;
• тестирование радиационной стойкости электронных устройств.
Наиболее важными фундаментальными направлениями исследований, которые будут проводиться с использованием коллайдера NICA являются:
• Природа и свойства сильных взаимодействий между элементарными составляющими Стандартной модели физики частиц — кварками и глюонами;
• Поиск признаков фазового перехода между адронной материей и КГП, поиск новых состояний барионной материи;
• Изучение основных свойств сильного взаимодействия и КГП- симметрии.
Основная схема процесса ускорения частиц предусматривает три стадии: 1) Формирование пучка и его инжекция;
2) Ускорение пучка;
3) Вывод пучка на мишень или соударения встречных пучков в
самом ускорителе.
4
Рис.1. Схема ускорительного комплекса NICA
Основными элементами комплекса NICA являются:
• Инжекционный комплекс поляризованных протонов и дейтронов
(источник, линейный ускоритель ЛУ-20)
• Инжекционный комплекс тяжёлых ионов (источник типа КРИОН,
линейный ускоритель HILAc)
• Бустерный синхротрон (предускорительное кольцо)
• Нуклотрон (предускорительное кольцо)
• Кольца коллайдера
• Электронное охлаждение
• Криогенный комплекс
• Фабрика магнитов (производство магнитов для комплекса NICA и
FAIR
• Чистая комната (производство трековых систем для детекторов)
Детекторы:
• Детектор MPD (Multi-Purpose Detector) предназначен для
проведения экспериментов в области релятивистской ядерной физики при столкновениях пучков ядер тяжелых элементов
5
(золота), ядер тяжелых элементов с протонами и протон-
протонных столкновениях.
• Детектор SPD (Spin Physics Detector) предназначен для
проведения экспериментов по физике спина при столкновениях
пучков ядер легких элементов[3].
• Детектор BM@N (Baryonic Matter at Nuclotron) Целью
эксперимента является изучение взаимодействия релятивистских пучков тяжелых ионов с фиксированными мишенями. Является первым экспериментом на ускорительном комплексе NICA- Нуклотрон.
Для успешного проведения эксперимента тщательно должны быть проработаны все этапы подготовки. В первую очередь это касается всех элементов ускорителя.
Принцип действия любого ускoрителя основывается на взаимoдействии заряженных частиц с элeктрическим и мaгнитным пoлями. Элeктрическое пoле, совершая работу, придает скорость заряженным частицам, в то время как мaгнитное пoле влияет на направление их движения (задает траекторию пучка).
Магнитная система — одна из самых важных в ускорителе[3]. Чем выше энергия частиц, тем труднее пустить их по круговой траектории, и тем сильнее, соответственно, должны быть магнитные поля. Кроме того, частицы нужно фокусировать, чтобы они не отталкивались друг от друга, пока летят. Поэтому магнитные поля должны не только направлять пучок по круговой орбите, но и фокусировать его. Задача магнитов создать «правильное» поле для достижения нужной траектории. За круговое движение отвечают дипольные магниты дугообразной формы, а за фокусирование – объединенные в дуплеты квадрупольные магнитные линзы. Внутри всех магнитов установлены
проводники электрического тока больших значений.
6
Структурными элементами бустера и коллайдера NICA, являются сверхпроводящие (СП) магниты[4]. Сверхпроводящее состояние достигается только при сверхнизких температурах (чем ниже температура магнита, тем меньше сопротивление материала, из которого состоит магнит; таким образом добиваются практически полного отсутствия сопротивления). Для этого в камере ускорителя создается высокий вакуум, и вся структура оснащается системой охлаждения жидким гелием (4.5 К или ̶ 269 C°).
Для бустера и коллайдера NICA требуется более 390 сверхпроводящих магнитов. Магнитная система бустера проекта NICA включает 48 квадрупольных сверхпроводящих магнитов. В работе будут описаны методики измерения магнитов[4, 6, 7, 8, 9].
Для успешной работы ускорителя необходимо провести массу сложнейших расчетов для всех его элементов и поставить четкий набор задач, с помощью решения которых возможно достигнуть наиболее точного соответствия в реализации[5]. Т.к. ускорительное оборудование работает с микроструктурой материального мира, то не стоит и рассуждать, насколько важно точнейшее соответствие расчетам на всех этапах подготовки и создания платформы эксперимента. Ошибка может стоить слишком дорого.
Проверка и тестирование всех деталей ускорительного комплекса проводится как на этапах изготовления, так и в процессе юстировки каждого элемента структуры.
В настоящее время для ускорительного комплекса NICA ведется серийное производство сверхпроводящих элементов магнитной оптики ускорительного комплекса (на территории ОИЯИ, г. Дубна). Производство магнитов включает также и проведение набора тестов,
вакуумных, электрических, магнитных, а также тренировки сверхпроводящих магнитов.
7
Также с целью компенсации разброса параметров магнитов, при их расстановке в кольце используются результаты моделирования движения пучков в ускорителях с использованием реальных
измеренных параметров магнитов [2]. Для достижения проектных параметров пучков, параметры магнитного поля структурных элементов магнитной оптики должны с высокой точностью соответствовать расчетным. Для решения этих задач при серийном производстве магнитов выполняется измерение параметров магнитного поля структурных элементов магнитной оптики.
Задача измерения параметров магнитных элементов преследует две главные цели:
1) Убедиться, что параметры магнитного поля изготовленного магнита соответствует заданным допускам;
2) Получить необходимое и достаточное количество параметров, позволяющих моделировать движение пучка в вакуумной камере магнита.
Параметры магнитного поля измеряемых магнитов получаются в результате применения процедур обработки данных, записываемых при проведении измерений с магнитометрических датчиков. После анализа полученных результатов делается заключение о соответствии
параметров магнита расчетным.
Информацию во время испытаний или моделирования следует собирать правильным образом. Слишком часто данные хранятся без описательной информации, в несовместимых форматах и разбрасываются по большому числу компьютеров. Это создает массив информации, который чрезвычайно затрудняет поиск определенного набора данных и принятие решений на его основе. Тесты или симуляции приходится повторять, когда наборы данных не удается найти.
8
В результате этого снижается эффективность, и увеличиваются затраты на разработку.
Важной составляющей процесса получения параметров магнитов является организация хранилища: для «сырых» данных, результатов промежуточных вычислений и для окончательных наборов.
В настоящей работе речь пойдет о структуризации способа обработки и хранения результатов магнитных измерений.
В рамках данной работы велась разработка базы данных для
хранения и обработки результатов магнитных измерений.
Основной целью при разработке структуры базы данных для
проекта NICA являлось создание универсального решения,
реализующего систему хранения и обработки результатов магнитных
измерений, представляющего также удобный интуитивно-понятный
интерфейс для доступа к данным, хранящимся в СУБД.
Выбор СУБД Vertica обусловлен простотой администрирования
базы данных и удовлетворением всем установленным требованиям. Для
доступа к данным системы могут быть использованы запросы SQL.
Преимуществами этого выбора также являются возможности массивно-
параллельной обработки данных, горизонтальной масштабируемости,
высокой скорости обработки данных, а также одним из важнейших
свойств является возможность качественного сжатия большого
количества данных.
Архитектура хранилища представляет из себя трёхуровневую
структуру:
1) Primary Data Layer: Первичный слой данных, содержит
первичные результаты измерений;
2) Core Data Layer: детализированный слой данных, содержит
сформированные в таблицы результаты обработки измерений;
3) Data Mart: витрина данных, которая содержит агрегированные
данные для протоколов, отчетов, с реализацией бизнес-логики.
Инструмент Apache Airflow позволил реализовать программные
методы автоматического управления загрузкой данных в хранилище, а
также обеспечила интерфейсный программный слой между
внутренними уровнями организации хранилища и доступ к данным для
средств графической визуализации. С его помощью построены
направленные ацикличные графы, которые позволяют параллельно
запускать алгоритмы, проверяя, что необходимые данные доступны в
хранилище.
Для визуализации предложен инструмент Tableau, который
предоставляет удобный пользовательский интерфейс, и напрямую
подключается к витрине данных. С помощью Airflow можно
автоматизировать систему отчетности.
Разнообразие используемых средств обуславливает проблему
согласования форматов данных.
Предложенное решение реализовано в локальном окружении.
В задачи проекта не входила задача замены ранее
использовавшихся программ обработки данных. Удалось успешно
адаптировать существующее решение и внедрить его в хранилище
данных.
В будущем предполагается интеграция уже существующих
модулей обработки данных к единой программной шине и достижения
автоматизации всех этапов обработки целиком внутри хранилища.
1. Kekelidze V. et al. NICA Project at JINR // Письма в ЭЧАЯ. 2012. Т. 9,
No.4/5. Р.521-526.
2. Андрианов С. Н. Динамическое моделирование систем управления
пучками частиц. // Издательство СПбГУ. СПб, 2002.
3. Bryant P. J. Basic theory for magnetic measurements // CERN Accelerator
School, Montreux, Switzerland, CERN 92-05,1992. P.52–69.
4. Khodzhibagiyan H. et al. 2014. Superconducting Magnets for the NICA
Accelerator-ColliderComplexpp.4001304,June.IEEE
Trans.Appl.Supercond., 24, N3 (параметры дипольного магнита).
5. Gourber J. P. Philosophy of series measurements // CERN Accelerator
School. Montreux. Switzerland. CERN 92-05, 1992. P. 84–102.
6. Borisov V. et al. Magnetic measurement system for the NICA booster
magnets // Proc. 5-th Intern. Particle Accelerator Conf. – IPAC 2014.
Dresden, Germany. June 15– 20, 2014. P. 2696–2698.
7. Костромин С.А., Борисов В.В., Бычков А.В., Донягин А.М. и др.
Измерение характеристик магнитного поля дипольного магнита
бустера NICA // Письма в ЭЧАЯ. 2016. Т.13, №7(205). С.1333-1342.
8. Шандов М.М., Акишин П.Г., Борисов В.В., Бычков А.В., Донягин
А.М., Костромин С.А. и др. Магнитные измерения предсерийных
двухапретурных дипольных магнитов коллайдера NICA // Письма в
ЭЧАЯ . 2018. Т. 15, №7(219). С. 832-844.
9. Shevchuk A., Borisov V., Bychkov A., Donyagin A., Kostromin S. at al.
Serial magnetic measurements of quadrupole magnets of the NICA
booster synchrotron // Письма в ЭЧАЯ. 2018. Т. 15, №7(219). С. 845.
10. TDMS-formatDocumentation[Электронныйресурс].URL:
https://www.ni.com/ru-ru/support/documentation/supplemental/06/the-
ni-tdms-file-format.html (дата обращения: 3.04.20).
11. Коннолли Т., Бегг К. Database Systems: A Practical Approach to Design,
Implementation, and Management. // 3-е изд. 2003. P.1436
12. Patil, Preeti S.; Srikantha Rao; Suryakant B. Patil. Optimization of Data
Warehousing System: Simplification in Reporting and Analysis. // IJCA
Proceedings on International Conference and Workshop on Emerging
Trends in Technology (ICWET). Foundation of Computer Science. P. 33–
37.
13. S. Harizopoulos; D. Abadi; P. Boncz. Column-Oriented Database
Systems. // VLDB 2009 Tutorial. p. 5.
14. D. J. Abadi; S. R. Madden; N. Hachem (2008). Column-stores vs. row-
stores: how different are they really? // SIGMOD’08. pp. 967–980.
15. SystemPropertiesComparison[Электронныйресурс].URL:
https://dbengines.com/en/system/ htm (дата обращения: 5.04.20).
16. VerticaDocumentation[Электронныйресурс].URL:
https://my.vertica.com/docs/9.2.x/HTML/index.htm (дата обращения:
7.04.20).
17. VerticaDocumentation[Электронныйресурс].URL:
https://www.vertica.com/wpcontent/uploads/2019/04/Vertica_DWH_mo
dernisation_ru.pdf (дата обращения: 7.04.20).
18. Koppen V., Bruggemann B., Berendt B. Designing Data Integration: The
ETL Pattern Approach // Cepis Upgrade. 2011. Vol. 13. P. 49–55.
19. ApacheAirflowDocumentation[Электронныйресурс].URL:
https://airflow.apache.org/project.html/ (дата обращения: 28.04.20).
Последние выполненные заказы
Хочешь уникальную работу?
Больше 3 000 экспертов уже готовы начать работу над твоим проектом!