Тип работы:
Предмет:
Язык работы:


Разработка масштабируемой системы управления данными, обладающей высокой доступностью

Работа №125438

Тип работы

Бакалаврская работа

Предмет

база данных

Объем работы32
Год сдачи2016
Стоимость4750 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
50
Не подходит работа?

Узнай цену на написание


Введение 4
Пример архитектуры 5
Основные компоненты системы 5
Архитектура 6
Data Storage Platform 7
Metadata storage API 8
Средство аутентификации пользователей 9
Механизм резервного копирования данных 10
Утилита для скачивания данных 11
Модуль управления политиками и правилами 12
Балансировщик нагрузки 13
Распределенный кэш метаданных 14
Сценарии использования 15
Общий сценарий использования 15
Пример развёртывания, конфигурации и использования системы 16
Работа с метаданными 18
Разделение прав доступа 19
Защита от несанкционированного доступа 20
Восстановление данных 21
Роли пользователей 22
Системный администратор 23
Data steward 24
Обычный пользователь 25
Поддержка консистентности данных 26
Контроль версий 27
Блокировки 28
Компоненты реализованной системы 29
Заключение 31
Список литературы 32

В связи со стремительным ростом объемов хранимой информации становятся все более актуальны системы, позволяющие хранить и оперировать большим количеством слабоструктурированных данных. В данной работе рассмотрен подход к хранению информации, основанный на использовании различных способов хранения и использования метаданных, а также примеры применения этой методологии.
Данная выпускная квалификационная работа заключается в разработке некоммерческого программного решения для раздельного управления данными и их метаданными. Проектируемая система будет иметь доступ к хранилищу данных , в качестве которого будет использоваться один из существующих продуктов с открытой лицензией, а также к хранилищу метаданных, способ хранения которых предстоит определить в процессе исследования. Предлагаемое решение будет использовать систему управления метаданными, которая обеспечит быстрый доступ к ним (в том числе с использованием распределенного кэша). Среди основных свойств разрабатываемой платформы важную роль играет масштабируемость (сохранение производительности при увеличениях количества хранимых данных и количества подключенных хранилищ) и высокая доступность — способность восстанавливаться после сбоев. Система должна также поддерживать работу многих пользователей, их аутентификацию и разделение прав доступа, а также обеспечивать консистентность данных при помощи одного из существующих механизмов. Среди перспективных направлений в разработке платформы следует выделить создание модуля политиками, который позволит пользователям с помощью специального интерфейса самим определять правила, по которым будут хранится данные и метаданные, а также реализацию балансировщика нагрузки на систему.
Постановка задачи заключается в разработке системы для хранения данных на основе программных компонент с открытым исходным кодом, использующей метаданные для поиска информации, обладающей свойствами масштабируемости и высокой доступности
В работе производится анализ существующих современных компонентов для программного хранения данных, выбор походящих для обеспечения вышеперечисленных требований к системе, а также совмещение их с теми частями системы, которые будут реализованы “с нуля”.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Построение конкретной системы управления данными во многом определяется предъявляемыми к ней требованиями. Например, количество ролей пользователей может быть расширено, или могут быть реализованы дополнительные компоненты (графический интерфейс пользователя и т.д.).
В ходе данной работы был реализован прототип системы с тремя основными модулями, использована методология раздельного хранения данных и метаданных. Разработанная система условно называется Data managment platform (Data-as-Service), с ее исходным кодом можно ознакомится на https://github.com/timbog/Data-as-Service (Исходный код модуля преобразования данных находится отдельно, в публичном доступе его нет). Сама платформа для работы с базой данных для метаданных использует библиотеку Hibernate (http://hibernate.org/), позволяющую оперировать сущностями из бд независимо от ее типа, в тестовом окружении используется база данных HSQLDB (http://hsqldb.org/). Для хранения данных была развернута система хранения данных Ceph (http://ceph.com/). В процессе разработки системы была использована система непрерывной интеграции Drone (https://drone.io/). В дальнейшем исследование может быть продолжено в сторону увеличения количества компонентов посредством использования готовых (балансировщик нагрузки, бэкапирование и т.д.) средств, а также разработки новых (модуль управления политиками и правилами).
Разработанная мною система может служить как единое ядро для разработчиков, которым нужна система хранения данных, она может быть доработана или изменена в зависимости от конкретных требований к платформе.


1. Сайт системы хранения данных iRODS [электронный ресурс] - Режим доступа: http://irods.org/, свободный.
2. Сайт платформы ATTIVO [электронный ресурс] - Режим доступа: http://www. attivio.com/platform, свободный.
3. Сайт системы хранения данных Ceph [электронный ресурс] - Режим доступа: http://www.ceph.com/, свободный.
4. Статья с обзором алгоритмов балансировки нагрузки [электронный ресурс] - Режим доступа: https://habrahabr.ru/company/selectel/blog/250201/, свободный.
5. Сайт базы данных Mongo DB[электронный ресурс] - Режим доступа: https://www.mongodb.com/, свободный.
6. Сайт базы данных Arango DB[электронный ресурс] - Режим доступа: https://www.arangodb.com/, свободный.
7. Сайт базы данных HSQLDB[электронный ресурс] - Режим доступа: http://hsqldb.org/ , свободный.


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ