Разработка 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 ₽

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

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

    [telegram]

    Последние выполненные заказы

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

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

    Татьяна П.
    4.2 (6 отзывов)
    Помогаю студентам с решением задач по ТОЭ и физике на протяжении 9 лет. Пишу диссертацию на соискание степени кандидата технических наук, имею опыт годовой стажировки ... Читать все
    Помогаю студентам с решением задач по ТОЭ и физике на протяжении 9 лет. Пишу диссертацию на соискание степени кандидата технических наук, имею опыт годовой стажировки в одном из крупнейших университетов Германии.
    #Кандидатские #Магистерские
    9 Выполненных работ
    Александра С.
    5 (91 отзыв)
    Красный диплом референта-аналитика информационных ресурсов, 8 лет преподавания. Опыт написания работ вплоть до докторских диссертаций. Отдельно специализируюсь на повы... Читать все
    Красный диплом референта-аналитика информационных ресурсов, 8 лет преподавания. Опыт написания работ вплоть до докторских диссертаций. Отдельно специализируюсь на повышении уникальности текста и оформлении библиографических ссылок по ГОСТу.
    #Кандидатские #Магистерские
    132 Выполненных работы
    Логик Ф. кандидат наук, доцент
    4.9 (826 отзывов)
    Я - кандидат философских наук, доцент кафедры философии СГЮА. Занимаюсь написанием различного рода работ (научные статьи, курсовые, дипломные работы, магистерские дисс... Читать все
    Я - кандидат философских наук, доцент кафедры философии СГЮА. Занимаюсь написанием различного рода работ (научные статьи, курсовые, дипломные работы, магистерские диссертации, рефераты, контрольные) уже много лет. Качество работ гарантирую.
    #Кандидатские #Магистерские
    1486 Выполненных работ
    Сергей Н.
    4.8 (40 отзывов)
    Практический стаж работы в финансово - банковской сфере составил более 30 лет. За последние 13 лет, мной написано 7 диссертаций и более 450 дипломных работ и научных с... Читать все
    Практический стаж работы в финансово - банковской сфере составил более 30 лет. За последние 13 лет, мной написано 7 диссертаций и более 450 дипломных работ и научных статей в области экономики.
    #Кандидатские #Магистерские
    56 Выполненных работ
    Шагали Е. УрГЭУ 2007, Экономика, преподаватель
    4.4 (59 отзывов)
    Серьезно отношусь к тренировке собственного интеллекта, поэтому постоянно учусь сама и с удовольствием пишу для других. За 15 лет работы выполнила более 600 дипломов и... Читать все
    Серьезно отношусь к тренировке собственного интеллекта, поэтому постоянно учусь сама и с удовольствием пишу для других. За 15 лет работы выполнила более 600 дипломов и диссертаций, Есть любимые темы - они дешевле обойдутся, ибо в радость)
    #Кандидатские #Магистерские
    76 Выполненных работ
    Екатерина С. кандидат наук, доцент
    4.6 (522 отзыва)
    Практически всегда онлайн, доработки делаю бесплатно. Дипломные работы и Магистерские диссертации сопровождаю до защиты.
    Практически всегда онлайн, доработки делаю бесплатно. Дипломные работы и Магистерские диссертации сопровождаю до защиты.
    #Кандидатские #Магистерские
    1077 Выполненных работ
    Елена Л. РЭУ им. Г. В. Плеханова 2009, Управления и коммерции, пре...
    4.8 (211 отзывов)
    Работа пишется на основе учебников и научных статей, диссертаций, данных официальной статистики. Все источники актуальные за последние 3-5 лет.Активно и уместно исполь... Читать все
    Работа пишется на основе учебников и научных статей, диссертаций, данных официальной статистики. Все источники актуальные за последние 3-5 лет.Активно и уместно использую в работе графический материал (графики рисунки, диаграммы) и таблицы.
    #Кандидатские #Магистерские
    362 Выполненных работы
    Яна К. ТюмГУ 2004, ГМУ, выпускник
    5 (8 отзывов)
    Помощь в написании магистерских диссертаций, курсовых, контрольных работ, рефератов, статей, повышение уникальности текста(ручной рерайт), качественно и в срок, в соот... Читать все
    Помощь в написании магистерских диссертаций, курсовых, контрольных работ, рефератов, статей, повышение уникальности текста(ручной рерайт), качественно и в срок, в соответствии с Вашими требованиями.
    #Кандидатские #Магистерские
    12 Выполненных работ
    Глеб С. преподаватель, кандидат наук, доцент
    5 (158 отзывов)
    Стаж педагогической деятельности в вузах Москвы 15 лет, автор свыше 140 публикаций (РИНЦ, ВАК). Большой опыт в подготовке дипломных проектов и диссертаций по научной с... Читать все
    Стаж педагогической деятельности в вузах Москвы 15 лет, автор свыше 140 публикаций (РИНЦ, ВАК). Большой опыт в подготовке дипломных проектов и диссертаций по научной специальности 12.00.14 административное право, административный процесс.
    #Кандидатские #Магистерские
    216 Выполненных работ

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