Научная статья на тему 'Реляционная аналитика запросов к базе данных в информационной системе учета работы автотранспорта средствами реляционной алгебры'

Реляционная аналитика запросов к базе данных в информационной системе учета работы автотранспорта средствами реляционной алгебры Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
175
35
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РЕЛЯЦИОННАЯ АНАЛИТИКА / ЗАПРОС / ДАННЫЕ / ИНФОРМАЦИОННАЯ СИСТЕМА / УЧЕТ / РАБОТА / АВТОТРАНСПОРТ СРЕДСТВАМИ / РЕЛЯЦИОННАЯ АЛГЕБРА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Орлянская Наталья Петровна, Нагоев Аслан Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Орлянская Наталья Петровна, Нагоев Аслан Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Реляционная аналитика запросов к базе данных в информационной системе учета работы автотранспорта средствами реляционной алгебры»

УДК 621.43:517.9

РЕЛЯЦИОННАЯ АНАЛИТИКА ЗАПРОСОВ К БАЗЕ ДАННЫХ В ИНФОРМАЦИОННОЙ СИСТЕМЕ УЧЕТА РАБОТЫ АВТОТРАНСПОРТА СРЕДСТВАМИ РЕЛЯЦИОННОЙ АЛГЕБРЫ

Орлянская Н.П., - к.т.н., доцент Нагоев А. В., - соискатель

Адыгейский государственный университет

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

Ключевые слова: РЕЛЯЦИОННАЯ АНАЛИТИКА ЗАПРОС ДАННЫЕ

ИНФОРМАЦИОННАЯ СИСТЕМА УЧЕТ РАБОТА АВТОТРАНСПОРТ СРЕДСТВАМИ РЕЛЯЦИОННАЯ АЛГЕБРА

В информационных системах учета работы автотранспорта особое внимание уделяется различным выборкам, реализованным путем запросов из файла путевых листов. Именно благодаря созданным запросам производится: ежемесячная обработка путевых листов автомобильного транспорта для учета расхода автозапчастей при ремонте автотранспорта; начисление износа транспортного средства по норме и пробегу, учета взаиморасчетов с клиентами.

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

Вместе с тем нельзя не отметить, что в действующих информационных системах запросы в большинстве случаев выполняются

"в лоб". Современные средства конфигурирования, проектирования экономических систем дают пользователю в руки инструментарий создания запроса. Формулировка запроса выполняется из соображений удовлетворения пользовательских потребностей, но в них не применяются возможности реляционной аналитики для оптимизации этой операции.

Если обозначить

А - имя некоторого неключевого атрибута;

V - одно из его значений;

е - соответствующее значение первичного ключа;

@- один из знаков сравнения =; #; <>; <=;>=.

Когда величины V или Е должны быть найдены, они обозначаются знаком «?».

Можно выделить три класса запросов:

1. Нахождение значения атрибута по известному ключу:

А=(е)=?

2. Нахождение записи с заданным значением неключевого атрибута

А(?)@ V условия этого типа запросов могут комбинироваться с помощью логических связок «не» «и» «или».

3. Перечислить значения данного атрибута для каждой записи А(?)=?

Обозначим Т - имена атрибутов входа запроса;

1 - значение атрибута;

Р- множество атрибутов на выходе запроса.

Входом запроса называется множество имен атрибутов, для которых заданы условия вида А(?)@а; оболочкой запроса называется множество имен атрибутов, упоминаемых в формулировке запроса. Тогда запрос для информационной технологии учета работы автотранспорта можно записать в виде:

Выбрать Р? где Т@

Для оптимизации запроса к реляционной базе данных используются следующие преобразования [1,2]:

- объединение операций выборки по нескольким условиям в одну операцию с составным условием;

- если операция проекции применяется к результату выполнения пересечения, вычитания, или натурального соединения двух отношений, то она может быть предварительно применена к каждому исходному отношению;

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

Применим описанную выше технологию для базы данных путевых листов информационной системы учета работы автотранспорта.

Пусть необходимо определить реквизиты клиентов (реквизит Клиент, Организация), которые произвели конкретную группу перевозок (условно обозначим Группа в таблице Путевой Лист) за определенный период (Дата), которые разместим в таблице "Перевозки". Из построенной ранее инфологической модели Информационной системы учета работы автотранспорта видно, что эти две таблицы взаимосвязаны по ключевому полю Код ( Код клиента).

Реализацию этого запроса к базе данных с помощью оператора реляционной алгебры можно записать различными способами:

1 способ:

((Путевой Лист®Код х Клиент ®Реквизит) х (Путевой Лист ® Перевозки = Группа)) п Дата = Реквизит;

Где х - операция полисоединения;

п- операция объединения;

Оптимизируем запрос с учетом двух отношений эквивалентности:

1. Каскадность унарных операций позволяет разбить запрос на части, выполняемые последовательно. Унарные операции - это селекция и проекция, уменьшающие размеры отношения по горизонтали и вертикали

Я[А1@С1 аnd А2@С2]°(Я[А1@С1])[А2@С2].

2. Дистрибутивность унарных операций относительно бинарных позволяет распространить их на операнды бинарных операций:

(Я*Б) [А@С] ° (Я[А@С] * Б [А@С],

где Я, Б отношения;

А - атрибуты;

С - операнды;

@ - оператор сравнения.

Известно [1,2], более раннее применение операций редукции приводит к оптимальному выполнению запроса, его выражение можно записать:

2 способ

(((Путевой Лист®Перевозки = Группа)п( Путевой Лист ® Дата = Дата))х (Путевой Лист ®Код х Клиент ®Реквизит)=Реквизит.

Разделим запрос на две части (подзапросы), пусть

01=Путевой Лист ® Поездки = Группа;

02=Путевой Лист ® Дата = Дата;

03= Путевой Лист ® Код и Клиент ® Реквизит;

Тогда выражение, обозначенное как 1 способ, предлагает выполнение запроса снизу вверх, т.е. 03;

02;

01.

Действительно порядок выполнения операций в выражении запроса слева направо, соответствует обходу дерева «снизу вверх». Этот способ не является наилучшим с точки зрения затрат на обработку на местах, выполнения операций в узлах и передачи данных. В этом случае надо передавать атрибут Клиент ® Реквизит при выполнении 2 кратных операций полисоединения. Метод сверху вниз соответствует «2 способу». И соответствует выполнению запроса «сверху вниз» 01;

02;

03.

Оба способа приведут к требуемому результату. Однако способ сверху вниз более экономичен, как с точки зрения времени выполнения, так и объема перемещаемых данных. Это объясняется тем, что мы начинаем с редукции (т.е. селекции), а затем можем использовать полисоединение, для которого можно передавать только значение соединяемых атрибутов.

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

Список источников:

1. Мишенин А.И. Теория экономических информационных систем: Учебник.- 4-е изд.,доп. и пераб.-М.: Финансы и статистика, 1999.-240с.:ил.

2. Цикритзис Д., Лоховски Ф. Модели данных.- М. :Финансы и статистика 1985.-320с.

3. Орлянская Н. П. Информационная технология бухгалтерского учета. Диссертация на соискание ученой степени канд. техн. нуук. Краснодар 2001.-169с.

i Надоели баннеры? Вы всегда можете отключить рекламу.