ПОДХОДЫ К ИЗМЕРЕНИЮ КОЛИЧЕСТВЕННЫХ МЕТРИК ФИЗИЧЕСКИХ СХЕМ БАЗ ДАННЫХ - Студенческий научный форум

VI Международная студенческая научная конференция Студенческий научный форум - 2014

ПОДХОДЫ К ИЗМЕРЕНИЮ КОЛИЧЕСТВЕННЫХ МЕТРИК ФИЗИЧЕСКИХ СХЕМ БАЗ ДАННЫХ

Морозов А.О. 1, Рыбанов А.А. 1
1Волжский политехнический институт (филиал) Волгоградского государственного технического университета
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
База данных является ядром информационной системы. Применение количественных метрик физических схем баз данных (БД) позволяет разработчикам БД [1, 4, 5, 6]:

- изучить сложность разработанной физической схемы базы данных;

- оценить объем работ, выполненных разработчиком физической схемы БД;

- оценить усилия по реализации физической схемы БД;

- выбрать наилучшую физическую схему БД из нескольких альтернативных вариантов.

В настоящее время актуальной является задача измерения количественных метрик физических схем БД.

Целью работы является снижение трудоемкости процесса получения количественных метрик физических схем баз данных.

Решение данной задачи рассмотрим для наиболее распространенной СУБД MySQL, используемой при проектировании веб-ориентированных информационных систем любой сложности [2, 3]. Приведем для примера физическую схему БД веб-ориентированной информационной системы «Гостиница» (рис. 1).

Рисунок 1 - Физическая схема БД «Гостиница»

Можно выделить два направления получения количественных метрик физических схем баз данных:

- получение количественных метрик БД в терминах реляционной модели с помощью SQL-запросов в СУБД MySQL;

- получение количественных метрик БД в терминах теории графов на концептуальном графе физической схемы БД.

Получение количественных метрик БД в терминах реляционной модели с помощью SQL-запросов в СУБД MySQL возможно на основе служебной базы данных INFORMATION_SCHEMA. INFORMATION_SCHEMA - база данных, которая хранит информацию о всех других базах данных, находящихся на сервере MySQL. В состав INFORMATION_SCHEMA входят следующие таблицы:

- CHARACTER_SETS: предоставляет информацию о доступных наборах символов;

- COLLATION_CHARACTER_SET_APPLICABILITY: показывает, какой набор символов применим для сортировки;

- COLLATIONS: предоставляет информацию о сортировке для каждой кодировки;

- COLUMN_PRIVILEGES: предоставляет информацию о привилегиях столбцов;

- COLUMNS: предоставляет информацию о столбцах в таблицах;

- ENGINES: предоставляет информацию о механизмах хранения;

- EVENTS: предоставляет информацию о запланированных событиях;

- FILES: предоставляет информацию о файлах, в которых хранятся табличные данные MySQL;

- GLOBAL_VARIABLES и SESSION_VARIABLES: предоставляют информацию о переменных состояния сервера;

- GLOBAL_STATUS и SESSION_STATUS: предоставляют информацию о состоянии сервера;

- KEY_COLUMN_USAGE: описывает, у каких ключевых столбцов есть ограничения;

- PARTITIONS: предоставляет информацию о табличных разделах;

- PLUGINS: предоставляет информацию о плагинах сервера;

- REFERENTIAL_CONSTRAINTS: предоставляет информацию о внешних ключах;

- ROUTINES: предоставляет информацию о сохраненных подпрограммах (и процедуры и функции);

- SCHEMA_PRIVILEGES: предоставляет информацию о привилегиях схемы базы данных;

- SCHEMATA: предоставляет информацию о базах данных;

- STATISTICS: предоставляет информацию о табличных индексах;

- TABLE_CONSTRAINTS: описывает связи таблиц;

- TABLE_PRIVILEGES: предоставляет информацию о привилегиях таблиц;

- TABLES: предоставляет информацию о таблицах в базах данных;

- TRIGGERS: предоставляет информацию о триггерах;

- USER_PRIVILEGES: предоставляет информацию о глобальных привилегиях;

- VIEWS: предоставляет информацию о представлениях в базах данных.

Рассмотрим SQL-запросы для получения исходных количественных метрик физической схемы БД.

Запрос №1.Получение количества таблиц схемы БД:

SELECT tables.table_schema AS "Имя схемы БД",

count(tables.table_name)

AS "Количество таблиц схемы БД"

FROM information_schema.tables

WHERE tables.table_schema =

Запрос №2. Получение количества атрибутов схемы БД:

SELECT tables.table_schema AS "Имя схемы БД",

count(columns.column_name)

AS "Количество атрибутов схемы БД"

FROM information_schema.tables,

information_schema.columns

WHERE tables.table_name = columns.table_name

AND tables.table_schema =

Запрос №3. Получение количества внешних ключей схемы БД:

SELECT table_constraints.constraint_schema AS "Имя схемы БД",

count(table_constraints.constraint_type)

AS "Количество внешних ключей схемы БД"

FROM information_schema.table_constraints,

information_schema.tables

WHERE table_constraints.constraint_type = "FOREIGN KEY"

AND table_constraints.table_name = tables.table_name

AND tables.table_schema =

Запрос №4. Получение коэффициента внешних связей схемы БД:

SELECT tables.table_schema AS "Имя схемы БД",

(SELECT count(table_constraints.constraint_type)

FROM information_schema.table_constraints,

information_schema.tables

WHERE table_constraints.constraint_type = "FOREIGN KEY"

AND table_constraints.table_name = tables.table_name

AND tables.table_schema = ) /

count(columns.column_name)

AS "Коэффициент внешних связей схемы БД"

FROM information_schema.tables,

information_schema.columns

WHERE tables.table_name = columns.table_name

AND tables.table_schema =

Метрические характеристики физической схемы БД «Гостиница», представленной на рис. 1, приведены в табл. 1-2.

Таблица 1 - Метрические характеристики физической схемы БД «Гостиница»

Метрическая характеристика

Значение

Количество таблиц схемы БД

6

Количество атрибутов схемы БД

38

Связность схемы БД

36

Коэффициент нормализации схемы БД

1

Количество внешних ключей схемы БД

6

Глубина дерева связей схемы БД

2

Коэффициент внешних связей схемы БД

0.158

Таблица 2 - Метрические характеристики физической схемы БД «Гостиница»

Метрическая характеристика

Количество атрибутов

Количество внешних ключей

Среднее значение

6.3

1

Минимальное значение

3

1

Максимальное значение

13

2

Стандартное отклонение

3.78

0.89

Рассмотрим SQL-запросы для получения исходных количественных метрик для таблиц физической схемы БД.

Запрос №5. Получение количества атрибутов в таблице.

SELECT tables.table_name AS "Имя таблицы",

count(columns.column_name) as "Количество атрибутов"

FROM information_schema.tables, information_schema.columns

WHERE tables.table_name = columns.table_name

AND tables.table_schema =

GROUP BY tables.table_name

Запрос №6. Получение количества внешних ключей в таблице.

SELECT table_constraints.table_name AS "Название таблицы",

count(table_constraints.constraint_type)

AS "Количество внешних ключей"

FROM information_schema.table_constraints,

information_schema.tables

WHERE table_constraints.constraint_type = 'FOREIGN KEY'

AND table_constraints.table_name = tables.table_name

AND tables.table_schema =

GROUP BY table_constraints.table_name

Метрические характеристики для таблиц физической схемы БД «Гостиница», представленной на рис. 1, приведены в табл. 3-4.

Таблица 3 - Метрические характеристики таблиц БД «Гостиница»

Таблица БД

Количество атрибутов таблицы

Количество внешних ключей таблицы

Глубина дерева связей таблицы

Коэффициент внешних связей таблицы

apartament

5

1

1

0.20

okazanie_uslugi

3

2

0

0.67

postoyalec

13

0

2

0

rezervirovanie

8

2

0

0.25

tarif_uslug

3

0

1

0

telefonnie_peregovori

6

1

0

0.16

Таблица 4 - Метрические характеристики таблиц БД «Гостиница»

Таблица БД

Количество атрибутов в составе первичного ключа

Количество внешних ключей в составе первичного ключа

Коэффициент идентифицирующих атрибутов таблицы

Коэффициент внешних ключей в составе первичного ключа

apartament

2

1

0.4

0.5

okazanie_uslugi

3

2

1

0.67

postoyalec

3

0

0.231

0

rezervirovanie

3

2

0.375

0.67

tarif_uslug

1

0

0.33

0

telefonnie_peregovori

2

1

0.33

0.5

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

Рисунок 2 – Концептуальный граф схемы БД

Конструктивные элементы концептуального графа для физической схемы БД приведены в табл. 5.

Таблица 5 - Конструктивные элементы концептуального графа физической схемы БД

Обозначение

Пояснение

 

Зависимая таблица физической схемы БД

 

Независимая таблица физической схемы БД

 

Связь между таблицами физической схемы БД

Для описания метрических характеристик физической схемы БД, представленной в виде концептуального графа G, могут применяться следующие метрики графов:

1) Порядок графа тезауруса учебного курса (количество вершин): n(G)=n .

2) Размер графа тезауруса учебного курса (количество ребер): s(G)=m.

3) Диаметра концептуального графа физической схемы БД – длина максимального пути между вершинами концептуального графа, выраженная числом дуг, составляющих этот путь:

diamG=maxdijϵDdij.

(1)

4) Структурная избыточность R(G) концептуального графа физической схемы БД показывает превышение общего количества связей между вершинами графа G над минимальным количеством связей:

RG=mn-1-1.

(2)

5) Реберная плотность Q(G) – характеризует близость концептуального графа G к полносвязному графу:

QG=2mn(n-1).

(3)

6) Абсолютная глубина концептуального графа H'(G):

H'G=jPNjϵP.

(4)

где NjϵP – длина j-го пути, принадлежащего множеству всех путей P в концептуальном графе G.

7) Средняя глубина концептуального графа h(G):

hG=1PjPNjϵP.

(5)

Количественные метрики БД в терминах теории графов, для концептуального графа физической схемы БД, представлены в табл. 6.

Таблица 6 - Метрики концептуального графа физической схемы БД

Метрическая характеристика

Значение

Порядок концептуального графа

6

Размер концептуального графа

6

Диаметр концептуального графа

2

Структурная избыточность концептуального графа

0.2

Реберная плотность концептуального графа

0.4

Абсолютная глубина концептуального графа

8

Средняя глубина концептуального графа

1.14

Рассмотренные подходы к автоматизированному получению количественных метрик, описывающих физическую схему БД, могут быть положены в основу веб-ориентированной информационной системы количественной оценки физических схем БД.

Список литературы

1. Кузьмин А.А., Рыбанов А.А. Исследование методов количественной оценки схем реляционных баз данных // Успехи современного естествознания. 2011. № 7. С. 137-138.

2. Рыбанов А.А., Коростелев Р.А., Киселев В.В. IDEF1X-модель базы данных web-ориентированной информационной системы оценки семантического качества меню пользователя // Молодой ученый. 2013. № 5. С. 170-172.

3. Свид. о гос. регистрации базы данных № 2013620276 от 13 февраля 2013 г. РФ, МПК (нет). База данных web-ориентированной информационной системы «Кафедра» / Рыбанов А.А.; ВолгГТУ. - 2013.

4. Утицких И.А., Рыбанов А.А. Анализ физических схем реляционных баз данных [Электронный ресурс]: доклад // Студенческий научный форум 2013 : V междунар. студ. электрон. науч. конф., 15 февр. – 31 марта 2013 г. Направл. / Рос. акад. естествознания. – М., 2013. – С. 1-4. – Режим доступа: http://www.scienceforum.ru/2013/pdf/4553.pdf.

5. Утицких И.А., Рыбанов А.А. Исследование метрических характеристик физических схем реляционных баз данных // Девятнадцатая межвузовская научно-практическая конференция молодых учёных и студентов, г. Волжский, 27-31 мая 2013 г. : тез. докл. / Филиал МЭИ в г. Волжском. - Волжский, 2013. - C. 39-41.

6. Черняев А.О., Рыбанов А.А. Разработка и исследование алгоритмов автоматизированного проектирования логических схем реляционных баз данных // В мире научных открытий. 2010. № 4-11. С. 128-129.

 

Просмотров работы: 1390