Основные подходы к проектированию распределенных баз данных



         

Проектирование структуры базы данных


            Построим информационную модель системы расчета с абонентами.

В ходе исследования существующей схемы расчетов были выявлены следующие основные сущности:

·      Клиент (абонент, владелец телефона)

·      Услуга

·      Подразделение

·      Начисление

·      Телефонный разговор, подлежащий повременной тарификации

·      Начисление за повременные разговоры (за один день)

·      Оплата

·      Категория клиента

·      Проведенные расчеты

IDEF1X-диаграмма взаимодействия между этими сущностями представлена в Приложении 6.

После нормализации данных и разрешения связей «многие ко многим» путем введения граничных сущностей диаграмма принимает вид, указанный в

Приложении 6. Кроме того, для сущностей «Подразделение» и «Категория абонента» введена обратная неидентифицирующая связь для иерархического представления данных.

Постановка задачи требует наличия механизма поддержки истории для сущностей, влияющих на результаты расчетов. К сущностям, для которых должен поддерживаться механизм регистрации изменений относятся:

·      Клиент (владелец телефона)

·      Услуга

·      Подразделение

·      Начисление

·      Постоянное начисление

·      Категория клиента

            Для регистрации изменений используется структура данных, представленная на рис.2.5.

Рис.2.5. Структура данных для поддержки механизма регистрации изменений

            Суть данной модели такова:

1.   Каждая сущность характеризуется набором состояний, изменяющихся во времени.

2.   Каждое состояние характеризуется набором атрибутов сущности, а также датой начала и датой окончания состояния.

3.   Сущность однозначно идентифицируется своим внешним ключом и актуальной датой.

4.   Дочерние таблицы ссылаются на сущность по её внешнему ключу.

5.   При смене состояния внешний ключ не меняется.

Целостность данных обеспечивается с помощью триггеров на сервере.

Для дальнейшего анализа выделим в структуре базы данных несколько подсистем:

·      Картотека абонентов

·      Начисления

·      Повременный учет

После определения атрибутов сущностей схема данных с учетом механизма поддержки истории принимает вид, приведенный в Приложении 6.

SQL-скрипт для генерации базы данных представлен в Приложении 1.





Содержание  Назад  Вперед