Разработка Data API для нейрофизиологических исследований

Грибков Кирилл Владимирович
Бесплатно
В избранное
Работа доступна по лицензии Creative Commons:«Attribution» 4.0

Современную научную деятельность невозможно представить без активного использования информационных технологий. В частности, это относится к исследованиям в области патологий мозга. Проведение комплексных исследований затрудняет неоднородность данных, разнообразие форматов представления и ресурсоемкая предварительная обработка. Для решения вышеизложенных задач, совместно с институтом Бехтерева разрабатывается проект информационной системы в области исследований человеческого мозга. В рамках данной работы разработана Data API – система для хранения и доставки данных на узлы кластера и реализована единая система авторизации для всего проекта.

Введение 4

1. Обзор предметной области 5
1.1. ckan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2. Распределенные файловые системы . . . . . . . . . . . . . 6
1.3. Протоколы передачи данных . . . . . . . . . . . . . . . . 6
1.4. Система единой авторизации . . . . . . . . . . . . . . . . 6
1.4.1. CAS . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.2. OIDC . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5. Вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2. Используемые технологии 9
2.1. MEAN стек . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2. MongoDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3. Node.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4. Angular 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.5. express.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.6. npm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.7. Mongoose . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.8. OpenID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.9. .Net Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3. Архитектура DataAPI 12
3.1. Data API . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2. Сервисы узла системы . . . . . . . . . . . . . . . . . . . . 15
3.2.1. Сервис Sendfile . . . . . . . . . . . . . . . . . . . . . 15
3.2.2. Сервис Watcher . . . . . . . . . . . . . . . . . . . . 15
3.3. Клиентское приложение для передачи файлов . . . . . . 16
3.4. Клиентские приложения Data API . . . . . . . . . . . . . 16

4. База данных: MongoDB 19
4.1. Схема профиля пользователя . . . . . . . . . . . . . . . . 19
4.1.1. Схема . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.1.2. Виртуальные методы . . . . . . . . . . . . . . . . . 20
4.2. Схема узла DataAPI . . . . . . . . . . . . . . . . . . . . . 21
4.3. Схема файла . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.4. Схема токена . . . . . . . . . . . . . . . . . . . . . . . . . . 23

5. Единая система аутентификации 25
5.1. Общая конфигурация OIDC . . . . . . . . . . . . . . . . . 26
5.1.1. Блок настройки доступа к данным . . . . . . . . . 27
5.2. Адаптер базы данных . . . . . . . . . . . . . . . . . . . . . 27
5.3. Список клиентских приложений . . . . . . . . . . . . . . . 28
5.4. Ключи шифрования . . . . . . . . . . . . . . . . . . . . . . 28

6. DataAPI 30
6.1. API для клиентских приложений . . . . . . . . . . . . . . 30
6.1.1. Проверка авторизованности пользователя . . . . . 33
6.1.2. Проверка роли пользователя . . . . . . . . . . . . 34
6.2. API для узлов кластера . . . . . . . . . . . . . . . . . . . 35
6.2.1. Предобработка запроса от узла кластера . . . . . 35
6.2.2. Подпись с помощью секретного ключа узла . . . . 36
6.3. API для клиентского приложения Sendfile . . . . . . . . . 37
6.4. Передача файлов . . . . . . . . . . . . . . . . . . . . . . . 37
6.4.1. Протокол передачи файла . . . . . . . . . . . . . . 38
6.5. Перепроверка файлов . . . . . . . . . . . . . . . . . . . . . 38
6.5.1. Data API . . . . . . . . . . . . . . . . . . . . . . . . 39
6.5.2. Watcher-сервис . . . . . . . . . . . . . . . . . . . . . 41
6.6. Проверка доступности сервисов на вычислительном узле 42
6.7. Обнаружение и устранение проблем у файлов . . . . . . 44

Заключение 47

Список литературы 48

Современную научную деятельность невозможно представить без
активного использования информационных технологий. В частности,
это относится к исследованиям в области патологий мозга.
Проведение комплексных исследований затрудняет неоднородность
данных, разнообразие форматов представления и ресурсоемкая пред-
варительная обработка. Для исследователя процесс объединения дан-
ных для каждого отдельного случая весьма трудоемок, кроме времени,
требуются также глубокие знания в области информационных техно-
логий. Решить проблему совместного использования разнородных дан-
ных, можно информационной системой с единым доступом к разнород-
ным данным. Для внедрения такой системы требуется создания модели
объединения разнородных данных в единую информационную среду и
адаптации методов предварительной обработки, применяемых индиви-
дуально к каждому отдельному типу данных.
Для решения вышеизложенных задач, совместно с институтом Бех-
терева разрабатывается проект информационной системы в области ис-
следований человеческого мозга[16]. Данный проект включает в себя
множество компонентов, каждый из которых решает отдельную задачу:
система сбора и хранения информации о пациентах и анализах в рам-
ках проекта; консолидация разнородных данных; система Data API —
хранение и доставка данных на узлы вычислительного кластера; систе-
ма единой авторизации для всех компонентов проекта; разнообразные
вычислительные компоненты, которые используют полученную инфор-
мацию о пациентах и анализах для исследований.
Целью настоящей работы является разработка системы Data API
и реализация единой авторизации в рамках проекта по созданию ин-
формационной системы в области исследований человеческого мозга.
Конкретные задачи для достижения указанной цели: разработать Data
API; разработать клиентское приложение Data API; разработать струк-
туру БД; разработать систему загрузки и выгрузки данных; реализо-
вать единую авторизацию всех компонентов проекта в системе.

В рамках данной работы были достигнуты следующие результаты:

• Разработан Data API

• Разработано клиентское приложение Data API

• Разработана структура БД

• Разработана система загрузки и выгрузки данных в виде кли-
ентского приложения sendfile и сервисов узлов кластера: sendfile-
сервис и watcher-сервис.

• Реализована единая система авторизации для компонентов про-
екта

• Опубликована статья V. Korkhov, V. Volosnikov, A. Vorontsov,
K. Gribkov, N. Zalutskaya, A. Degtyarev, A. Bogdanov. Data storage,
processing and analysis system to support brain research // Lecture
Notes in Computer Science (including subseries Lecture Notes in
Artificial Intelligence and Lecture Notes in Bioinformatics), 2018, vol.
10963, pp. 78–90, ISBN: 978-331962403-7.

Заказать новую

Лучшие эксперты сервиса ждут твоего задания

от 5 000 ₽

Не подошла эта работа?
Закажи новую работу, сделанную по твоим требованиям

    Нажимая на кнопку, я соглашаюсь на обработку персональных данных и с правилами пользования Платформой

    Хочешь уникальную работу?

    Больше 3 000 экспертов уже готовы начать работу над твоим проектом!

    Александр Р. ВоГТУ 2003, Экономический, преподаватель, кандидат наук
    4.5 (80 отзывов)
    Специальность "Государственное и муниципальное управление" Кандидатскую диссертацию защитил в 2006 г. Дополнительное образование: Оценка стоимости (бизнеса) и госфин... Читать все
    Специальность "Государственное и муниципальное управление" Кандидатскую диссертацию защитил в 2006 г. Дополнительное образование: Оценка стоимости (бизнеса) и госфинансы (Казначейство). Работаю в финансовой сфере более 10 лет. Банки,риски
    #Кандидатские #Магистерские
    123 Выполненных работы
    Мария Б. преподаватель, кандидат наук
    5 (22 отзыва)
    Окончила специалитет по направлению "Прикладная информатика в экономике", магистратуру по направлению "Торговое дело". Защитила кандидатскую диссертацию по специальнос... Читать все
    Окончила специалитет по направлению "Прикладная информатика в экономике", магистратуру по направлению "Торговое дело". Защитила кандидатскую диссертацию по специальности "Экономика и управление народным хозяйством". Автор научных статей.
    #Кандидатские #Магистерские
    37 Выполненных работ
    Анна В. Инжэкон, студент, кандидат наук
    5 (21 отзыв)
    Выполняю работы по экономическим дисциплинам. Маркетинг, менеджмент, управление персоналом. управление проектами. Есть опыт написания магистерских и кандидатских диссе... Читать все
    Выполняю работы по экономическим дисциплинам. Маркетинг, менеджмент, управление персоналом. управление проектами. Есть опыт написания магистерских и кандидатских диссертаций. Работала в маркетинге. Практикующий бизнес-консультант.
    #Кандидатские #Магистерские
    31 Выполненная работа
    Вики Р.
    5 (44 отзыва)
    Наличие красного диплома УрГЮУ по специальности юрист. Опыт работы в профессии - сфера банкротства. Уровень выполняемых работ - до магистерских диссертаций. Написан... Читать все
    Наличие красного диплома УрГЮУ по специальности юрист. Опыт работы в профессии - сфера банкротства. Уровень выполняемых работ - до магистерских диссертаций. Написание письменных работ для меня в удовольствие.Всегда качественно.
    #Кандидатские #Магистерские
    60 Выполненных работ
    Ольга Б. кандидат наук, доцент
    4.8 (373 отзыва)
    Работаю на сайте четвертый год. Действующий преподаватель вуза. Основные направления: микробиология, биология и медицина. Написано несколько кандидатских, магистерских... Читать все
    Работаю на сайте четвертый год. Действующий преподаватель вуза. Основные направления: микробиология, биология и медицина. Написано несколько кандидатских, магистерских диссертаций, дипломных и курсовых работ. Слежу за новинками в медицине.
    #Кандидатские #Магистерские
    566 Выполненных работ
    Сергей Е. МГУ 2012, физический, выпускник, кандидат наук
    4.9 (5 отзывов)
    Имеется большой опыт написания творческих работ на различных порталах от эссе до кандидатских диссертаций, решения задач и выполнения лабораторных работ по любым напра... Читать все
    Имеется большой опыт написания творческих работ на различных порталах от эссе до кандидатских диссертаций, решения задач и выполнения лабораторных работ по любым направлениям физики, математики, химии и других естественных наук.
    #Кандидатские #Магистерские
    5 Выполненных работ
    Татьяна П.
    4.2 (6 отзывов)
    Помогаю студентам с решением задач по ТОЭ и физике на протяжении 9 лет. Пишу диссертацию на соискание степени кандидата технических наук, имею опыт годовой стажировки ... Читать все
    Помогаю студентам с решением задач по ТОЭ и физике на протяжении 9 лет. Пишу диссертацию на соискание степени кандидата технических наук, имею опыт годовой стажировки в одном из крупнейших университетов Германии.
    #Кандидатские #Магистерские
    9 Выполненных работ
    Евгения Р.
    5 (188 отзывов)
    Мой опыт в написании работ - 9 лет. Я специализируюсь на написании курсовых работ, ВКР и магистерских диссертаций, также пишу научные статьи, провожу исследования и со... Читать все
    Мой опыт в написании работ - 9 лет. Я специализируюсь на написании курсовых работ, ВКР и магистерских диссертаций, также пишу научные статьи, провожу исследования и создаю красивые презентации. Сопровождаю работы до сдачи, на связи 24/7 ?
    #Кандидатские #Магистерские
    359 Выполненных работ
    Сергей Н.
    4.8 (40 отзывов)
    Практический стаж работы в финансово - банковской сфере составил более 30 лет. За последние 13 лет, мной написано 7 диссертаций и более 450 дипломных работ и научных с... Читать все
    Практический стаж работы в финансово - банковской сфере составил более 30 лет. За последние 13 лет, мной написано 7 диссертаций и более 450 дипломных работ и научных статей в области экономики.
    #Кандидатские #Магистерские
    56 Выполненных работ

    Другие учебные работы по предмету