В этом материале я хочу рассказать о принципиальной структуре и концепции системы управления физическим расположением данных, построенной на базе MS SQL Server.
Данную концепцию можно использовать при наличии задачи построения системы подобного рода. Я надеюсь, что материал окажется полезным тем, кто сам столкнется с такой тематикой. Если по прочтении статьи у кого-либо появится потребность в более детальном рассмотрении тех или иных вопросов построения такой системы, я буду рад это сделать.
Основной задачей такой системы является сокрытие от конечного пользователя физического места расположения данных, управление их физическим расположением, обслуживание данных, мониторинг состояния и т.п.
Систему необходимо строить так, чтобы пользователь (человек или процесс), выполняя запросы на получение или запись данных, не знал о том, где физически они хранятся - система должна скрывать их физическое расположение и сама решать вопросы распределения данных и выдачи их пользователю.
Структуру такой системы можно изобразить на диаграмме:
Данную концепцию можно использовать при наличии задачи построения системы подобного рода. Я надеюсь, что материал окажется полезным тем, кто сам столкнется с такой тематикой. Если по прочтении статьи у кого-либо появится потребность в более детальном рассмотрении тех или иных вопросов построения такой системы, я буду рад это сделать.
Основной задачей такой системы является сокрытие от конечного пользователя физического места расположения данных, управление их физическим расположением, обслуживание данных, мониторинг состояния и т.п.
Систему необходимо строить так, чтобы пользователь (человек или процесс), выполняя запросы на получение или запись данных, не знал о том, где физически они хранятся - система должна скрывать их физическое расположение и сама решать вопросы распределения данных и выдачи их пользователю.
Структуру такой системы можно изобразить на диаграмме:
Как видно на диаграмме, система разделена на 4 части:
- Управление расположениями - часть системы, отвечающая за создание, удаление, подготовку к использованию и обслуживание хранилищ данных. Именно эта часть система отвечает за управление физическим расположением данных.
- Подсистема безопасности - часть системы, ответственная за управление правами доступа к данным.
- Интерфейс администрирования - часть системы, предоставляющая администратору возможность управлять ее работой.
- API - программный интерфейс системы, позволяющий сторонним приложениям получать доступ к хранящимся данным.
Типом данных может быть что угодно, например - список клиентов, история заказов, история просмотров - в общем, что угодно.
Каждый тип данных при этом обладает своей структурой - списком атрибутов, определяющих какие именно данные хранит каждый тип.
Задачи подсистемы "Интерфейс администрирования".
- Позволять регистрировать в системе новые типы данных, определять их структуру (имена атрибутов, их типы и другие свойства).
- Регистрировать в системе новые физические сервера для размещения данных
- Задавать настройки расположение данных на каждом сервере
- Управлять настройками распределения данных между серверами
- Управлять настройками прав доступа
Задачи подсистемы "Управление расположением".
- Заблаговременно и по требованию пользователя создавать на физических серверах базы данных, таблицы, элементы партицирования и пр. для размещения данных
- Исправлять ошибки, возникающие в процессе работы - обрывов связи, сбоев в работе серверов и т.п.
- Проводить публикацию новых данных, если она требуется
- Выполнять дефрагментацию и переиндексацию
- Удалять устаревшие данные
- Управлять распределением данных между серверами
Задачи подсистемы безопасности.
- Управление доступом на запись и чтение данных
- Управление пользовательскими сессиями, мешающими работе с данными
Задачи подсистемы API.
- Выдавать конечным потребителям данные, хранящиеся в системе
- Принимать от потребителей новые данные, которые необходимо поместить в систему
- Получать от потребителей сигналы о необходимости выполнения публикации переданных данных
- Обеспечение параллельной работы пользователей с системой
В заключении хочу сказать что тема построения таких систем весьма обширна и здесь даны лишь самые общие наброски в направлении их создания.
Комментариев нет:
Отправить комментарий