Разработка 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 экспертов уже готовы начать работу над твоим проектом!

    Егор В. кандидат наук, доцент
    5 (428 отзывов)
    Здравствуйте. Занимаюсь выполнением работ более 14 лет. Очень большой опыт. Более 400 успешно защищенных дипломов и диссертаций. Берусь только со 100% уверенностью. Ск... Читать все
    Здравствуйте. Занимаюсь выполнением работ более 14 лет. Очень большой опыт. Более 400 успешно защищенных дипломов и диссертаций. Берусь только со 100% уверенностью. Скорее всего Ваш заказ будет выполнен раньше срока.
    #Кандидатские #Магистерские
    694 Выполненных работы
    Анастасия Б.
    5 (145 отзывов)
    Опыт в написании студенческих работ (дипломные работы, магистерские диссертации, повышение уникальности текста, курсовые работы, научные статьи и т.д.) по экономическо... Читать все
    Опыт в написании студенческих работ (дипломные работы, магистерские диссертации, повышение уникальности текста, курсовые работы, научные статьи и т.д.) по экономическому и гуманитарному направлениях свыше 8 лет на различных площадках.
    #Кандидатские #Магистерские
    224 Выполненных работы
    Елена Л. РЭУ им. Г. В. Плеханова 2009, Управления и коммерции, пре...
    4.8 (211 отзывов)
    Работа пишется на основе учебников и научных статей, диссертаций, данных официальной статистики. Все источники актуальные за последние 3-5 лет.Активно и уместно исполь... Читать все
    Работа пишется на основе учебников и научных статей, диссертаций, данных официальной статистики. Все источники актуальные за последние 3-5 лет.Активно и уместно использую в работе графический материал (графики рисунки, диаграммы) и таблицы.
    #Кандидатские #Магистерские
    362 Выполненных работы
    Шиленок В. КГМУ 2017, Лечебный , выпускник
    5 (20 отзывов)
    Здравствуйте) Имею сертификат специалиста (врач-лечебник). На данный момент являюсь ординатором(терапия, кардио), одновременно работаю диагностом. Занимаюсь диссертац... Читать все
    Здравствуйте) Имею сертификат специалиста (врач-лечебник). На данный момент являюсь ординатором(терапия, кардио), одновременно работаю диагностом. Занимаюсь диссертационной работ. Помогу в медицинских науках и прикладных (хим,био,эколог)
    #Кандидатские #Магистерские
    13 Выполненных работ
    Дмитрий Л. КНЭУ 2015, Экономики и управления, выпускник
    4.8 (2878 отзывов)
    Занимаю 1 место в рейтинге исполнителей по категориям работ "Научные статьи" и "Эссе". Пишу дипломные работы и магистерские диссертации.
    Занимаю 1 место в рейтинге исполнителей по категориям работ "Научные статьи" и "Эссе". Пишу дипломные работы и магистерские диссертации.
    #Кандидатские #Магистерские
    5125 Выполненных работ
    Татьяна С. кандидат наук
    4.9 (298 отзывов)
    Большой опыт работы. Кандидаты химических, биологических, технических, экономических, юридических, философских наук. Участие в НИОКР, Только актуальная литература (пос... Читать все
    Большой опыт работы. Кандидаты химических, биологических, технических, экономических, юридических, философских наук. Участие в НИОКР, Только актуальная литература (поставки напрямую с издательств), доступ к библиотеке диссертаций РГБ
    #Кандидатские #Магистерские
    551 Выполненная работа
    Анна Александровна Б. Воронежский государственный университет инженерных технол...
    4.8 (30 отзывов)
    Окончила магистратуру Воронежского государственного университета в 2009 г. В 2014 г. защитила кандидатскую диссертацию. С 2010 г. преподаю в Воронежском государственно... Читать все
    Окончила магистратуру Воронежского государственного университета в 2009 г. В 2014 г. защитила кандидатскую диссертацию. С 2010 г. преподаю в Воронежском государственном университете инженерных технологий.
    #Кандидатские #Магистерские
    66 Выполненных работ
    Ольга Б. кандидат наук, доцент
    4.8 (373 отзыва)
    Работаю на сайте четвертый год. Действующий преподаватель вуза. Основные направления: микробиология, биология и медицина. Написано несколько кандидатских, магистерских... Читать все
    Работаю на сайте четвертый год. Действующий преподаватель вуза. Основные направления: микробиология, биология и медицина. Написано несколько кандидатских, магистерских диссертаций, дипломных и курсовых работ. Слежу за новинками в медицине.
    #Кандидатские #Магистерские
    566 Выполненных работ
    Татьяна П. МГУ им. Ломоносова 1930, выпускник
    5 (9 отзывов)
    Журналист. Младший научный сотрудник в институте РАН. Репетитор по английскому языку (стаж 6 лет). Также знаю французский. Сейчас занимаюсь написанием диссертации по и... Читать все
    Журналист. Младший научный сотрудник в институте РАН. Репетитор по английскому языку (стаж 6 лет). Также знаю французский. Сейчас занимаюсь написанием диссертации по истории. Увлекаюсь литературой и темой космоса.
    #Кандидатские #Магистерские
    11 Выполненных работ

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