ПРОЕКТИРОВАНИЕ МОДУЛЯ ОБЪЕКТНО-РЕЛЯЦИОННОГО ОТОБРАЖЕНИЯ ДЛЯ ПРОГРАММНОГО КОМПЛЕКСА «MD-SLAG-MELT» - Студенческий научный форум

X Международная студенческая научная конференция Студенческий научный форум - 2018

ПРОЕКТИРОВАНИЕ МОДУЛЯ ОБЪЕКТНО-РЕЛЯЦИОННОГО ОТОБРАЖЕНИЯ ДЛЯ ПРОГРАММНОГО КОМПЛЕКСА «MD-SLAG-MELT»

Аверьянова О.И. 1, Трунов А.С. 1
1МТУСИ
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Программный комплекс «MD-Slag-Melt v10.0» обеспечивает реализацию комплексных компьютерных экспериментов для моделей многокомпонентных шлаковых расплавов с большим числом частиц (104 – 105 частиц). В рамках единой интегрированной среды распределенного программного комплекса реализуются компьютерное моделирование квантово-химическим, молекулярно-динамическим и статистико-геометрическим методом на основе комплексной модели многочастичной системы с сильным взаимодействием [1].

Основным методом исследования является метод молекулярной динамики, суть которого состоит в численном интегрировании уравнений движения по фазовым траекториям [2]. Задачи, которые решает данный программный комплекс, являются актуальными в области физической химии и технологии неорганических материалов, так как результаты проводимых в системе экспериментов используются при создании новых металлических материалов с заранее заданными свойствами [3].

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

В данной работе поставлена задача разработки модуля объектно-реляционного отображения классов на таблицы и обратно. Внедрение позволит обеспечить большую безопасность при работе с БД, а также изолирует пользователей и разработчиков от работы с базами данных. На этапе исследования существующей физической модели БД программного комплекса «MD-Slag-Melt v10.0» была поставлена задача разбиения большой базы данных на несколько частей (далее «шардов»), чтобы сократить объемы хранимой информации: на каждом «шарде» таблицы содержат меньше данных, чем в глобальной базе. В результате ускоряется процесс чтения и записи, а, следовательно, увеличивается производительность[4].

Для разработки модуля необходимо обозначить его возможности:

  1. модуль должен иметь возможность описания собственными средствами отношений базы данных и их взаимосвязей;

  2. модуль должен иметь возможность создавать, записывать, читать, изменять, удалять записи в БД;

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

  4. модуль должен реализовывать хранение экземпляров таким образом, чтобы в любой момент в системе было не больше одного объекта, соответствующего одной записи БД;

  5. модуль должен предоставлять возможность загрузки связанных объектов при обращении к связи;

  6. модуль должен поддерживать связи “один к одному”, “один ко многим”, осуществлять проверку целостности [5].

Место модуля ORM в приложении показано на рис. 1.

Рисунок 1. – Место модуля в глобальном приложении

Взаимодействие пользователя с БД после внедрения такого модуля показано на рис. 2.

Рисунок 2. – Целевая диаграмма использования сервиса БД после внедрения модуля ORM

Этапы выполнения работы:

1. Разработка и анализ диаграмм использования;

2. Разработка общей архитектуры модуля;

3. Анализ способов реализации элементов разрабатываемого модуля;

4. Разработка структуры данных;

5. Разработка алгоритма;

6. Разработка кода модуля;

7. Тестирование;

8. Внедрение в целевое приложение [6].

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

Рисунок 3. – Схема взаимодействия частей модуля

Для разбиения БД применяется фреймворк Hibernate Shards. Данные распределяются между «шардами» по определенной стратегии, при этом появляется распределенная база данных. Модель такой распределенной БД представлена на рис.4.

Рисунок 4. – Модель распределенной базы данных

Список использованной литературы:

1. Воронова Л.И., Григорьева М.А., Воронов В.И., Трунов А.С. «Программный комплекс "MD-Slag-Melt" для моделирования наноструктуры и свойств многокомпонентных расплавов» - Расплавы. 2013. № 4. С. 36-49.

2. Воронова Л.И., Григорьева М.А., Воронов В.И., Трунов А.С. «Программный комплекс "MD-Slag-Melt" информационно-исследовательской системы "шлаковые расплавы" версии 10.0» - депонированная рукопись № 29-В2012 26.01.2012

3. Voronova L.I., Trunov A.S., Voronov V.I. The distributed calculators model for molecular-dynamic simulation of strong interaction systems - Международный журнал экспериментального образования. 2013. № 12. С. 82-88.

4. Аверьянова О.И., Трунов А.С. ИССЛЕДОВАНИЕ РЕЛЯЦИОННОЙ СТРУКТУРЫ ПРОГРАММНОГО КОМПЛЕКСА «MD-SLAG-MELT» // Материалы VIII Международной студенческой электронной научной конференции «Студенческий научный форум» (дата обращения: 25.12.2017)

5. Dominguez-Sal D., Urbon-Bayes P., Gimenez-Vano A., GomezVillamor S., Martınez-Bazan N., Larriba-Pey J.L. Survey of graph database performance on the HPC scalable graph analysis benchmark. Proceedings of the 2010 int. conf. on Web-age information management (WAIM'10). Berlin, Heidelberg, Springer-Verlag, 2010, С. 37–48.

6. Иванников В. П. Объектно-ориентированное окружение, обеспечивающее доступ к реляционным СУБД / В. П. Иванников, С. С. Гайсарян, К. В. Антипин, В. В. Рубанов // Труды Института системного программирования РАН. – 2001. – Т. 2. – С. 89–114

Просмотров работы: 170