Построение интегрированной информационной системы,объединяющей базы данных компаний, обеспечивающихгрузоперевозки

Обложка

Цитировать

Полный текст

Аннотация

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

Полный текст

1. Введение В деловой или личной сфере часто приходится работать с данными из разных источников, каждый из которых содержит сходную по смыслу информацию. В этой ситуации актуальной является задача объединение в единое целое этой изначально разрозненной информации [1, 2]. Проблема интеграции информации из различных и независимых источников, в частности объединение в единое целое разнородных баз данных (без ущерба их независимости), является достаточно обширной. Различным её аспектам посвящено большое количество работ на протяжении нескольких десятков лет. Среди российских публикаций по проблемам интеграции (как в плане разработки общих подходов, так и в конкретной реализации в различных предметных областях) можно назвать работы Д. В. Торшина, Л. Черняка, С. В. Кирсанова и ряда других авторов [3-9]. В настоящей работе рассматриваются вопросы, связанные с интеграцией данных в конкретной предметной области. Авторами были рассмотрены задачи, выполняемые диспетчерами компаний грузоперевозок. Современные темпы развития этого бизнеса указывают на необходимость активного внедрения новых методов работы, соответствующих возросшим потребностям потребителей. В этой ситуации все большее число руководителей предприятий грузоперевозок задумывается об автоматизации своей компании и эффективном внедрении специализированного программного комплекса, который позволил наиболее полноценно использовать все его функции. Современный уровень развития техники требует от фирм - разработчиков программного обеспечения дальнейшей децентрализации, приближения к местам реализации конкретных услуг. В частности, это касается грузоперевозок. С другой стороны, конечный потребитель хочет получить единую информационную систему, которая позволила бы найти ту компанию, которая его устроит по всем или большинству требований. В данной статье решается задача построения интегрированной информационной системы, которая объединяет базы данных компаний, обеспечивающих грузоперевозки. 2. Описание предметной области Каждый большой бизнес, сфера деятельности которого тесно связанна с большими деньгами, будь то производство, оптовая или широка розничная сеть, строит свой бизнес на правильно сформированной грузоперевозке. Вовремя доставленный груз поддерживает в стабильности весь процесс бизнеса. Если на производство не будет вовремя доставлен хоть один компонент, то все может остановиться, а владелец потерпит убытки. Спрос на грузовые автомобильные перевозки определяется динамикой и структурой изменения объёмов производства. В нашей стране около 80% общего объёма грузов перевозится автомобильным транспортом. Создание информационных систем требует детальных знаний о работе автоматизируемой предметной области Основные функции грузоперевозок: 1) легко и быстро принять заказ; 2) оказание качественной работы по перевозке груза; 3) организовать быструю погрузку и разгрузку. Основной задачей является проектирование базы данных и построение программы, которая обеспечила бы взаимодействие с ней в режиме диалога, для диспетчеров в компании грузоперевозок. В представленной работе рассматриваются задачи, выполняемые диспетчерами компании грузоперевозок. Представленная в работе информационная система обеспечивает: хранение информации о клиентах, водителях, грузе, автомобилях, дате заказа и маршруте. В БД могут храниться сведения: 1) об отделениях компании (если они есть): номер отделения, адрес отделения, номер телефона отделения, номер факса, ФИО начальника; 2) о машинах: гос. номер, габариты, тоннаж; 3) о водителях: номер личный, ФИО водителя, адрес водителя, номер телефона водителя; 4) о клиентах: ФИО клиента, номер телефона клиента, адрес клиента; 5) о заказах: номер заказа, тип заказа, габариты груза, тоннаж груза, дата заказа, пункт отправления, пункт назначения. Ниже, на рис. 1 представлен один из вариантов концептуальной схемы базы данных «Грузоперевозки». 3. Предлагаемая схема решения Будем предполагать, что существует несколько независимых компаний-грузоперевозчиков (источников информации), и работа каждой из них поддерживается собственной компьютерной системой с использованием некоторой СУБД. Далее в работе будет осуществлено создание мультибазовой (интегрированной) [1, 2] системы, расположенной поверх баз данных источников с целью учёта и распределения процессов грузоперевозок, удобства для конечного пользователя. Рис. 1. Концептуальная схема базы данных «Грузоперевозки» Существуют три основные технологии интеграции информации [2]: 1. Федеративные базы данных - источники независимы, но могут сообщаться между собой для обмена информацией. Федеративные базы данных бывают эффективными при наличии малого числа источников, в противном случае возникает необходимость поддержания большого количества связей между источниками (для экспорта-импорта информации). 2. Хранилища данных - данные от источников на периодической основе загружаются в централизованное хранилище, возможно, с предварительной обработкой с целью приведения их в соответствие со структурой хранилища. В хранилищах существует проблема периодической загрузки большого объёма информации с соответствующими требованиями к ресурсам системы, кроме того, информация, полученная от хранилища, может быть несколько устаревшей (не вполне актуальной). 3. Медиаторы - программные компоненты, принимающие запросы от пользователей и затем направляющие их к соответствующим источникам, возможно, с предварительной трансляцией; полученные ответы от источников приводятся в соответствие со структурой медиатора, объединяются и выдаются пользователю. В медиаторах нет таких проблем, как в хранилищах, но конкретные запросы к ним исполняются медленнее, чем к хранилищу. Кроме того, в медиаторах необходимо поддерживать механизм идентификации необходимых источников. Для потенциального клиента часто бывает важно получить все возможные варианты, удовлетворяющие его запросу. Для этого следует отправить запрос в разные компании, соответствующие требованиям клиента. При этом для оптимизации процесса поиска важно запрашивать только те источники, которые заведомо соответствуют этим требованиям и не запрашивать другие источники. Для этой цели наиболее оптимальным вариантом представляется медиатор со вспомогательным хранилищем. Медиатор принимает запрос от пользователя и переадресует его тем источникам, где может находиться нужная информация. Для определения того, к каким источникам следует обращаться, при медиаторе создаётся «мини-хранилище», периодически закачивающее от источников информацию о количестве и параметрах транспортных средств, которыми располагает каждая компания-источник. 4. Описание тестовой модели Авторами были рассмотрены три источника: Ист1, Ист2, Ист3, на которых хранится следующая информация в реляционных таблицах. Ист1: Об отделениях компании: Номер отделения, Адрес отделения, Телефон отделения, Факс отделения; О машинах: ГосНомер, Марка; О марках: ID, Название, Габариты машины, Тоннаж машины, Цена за км; О водителях: Номер личный, ФИО, Номер контактного телефона, Личные данные; О клиентах: ID, ФИО клиента, Номер контактного телефона, Адрес клиента; О заказах: Номер заказа, Габариты груза, Тоннаж груза, Дата заказа, Пункт отправления, Пункт назначения. Ист2: О компании: Адрес, Телефон; Об автомобилях: ГосНомер, Габариты машины, Тоннаж машины, Цена за час; О шофёрах: Номер личный, ФИО шофёра, Адрес шофёра, Номер телефона шофёра; О клиентах: ID клиента, Номер телефона клиента, ФИО клиента; Об ордерах (заказах): Номер ордера, Габариты груза, Тоннаж груза, Дата ордера, Пункт отправления, Пункт назначения. Ист3: О филиалах: Номер филиала, Адрес филиала, Номер телефона филиала; Об авто: Марка, ГосНомер авто, Габариты, Тоннаж, Цена подачи, Цена за час; О водителях: Номер Вод. Прав, ФИО водителя, Номер телефона водителя; О заказчиках: ID заказчика, ФИО заказчика, Номер телефона заказчика, Адрес заказчика; О заказах: Номер заказа, Габариты груза, Тоннаж груза, Дата заказа, Пункт отправления, Пункт назначения. Структура медиатора (виртуальная) составляется только из следующих атрибутов (наиболее существенными для конечного пользователя): Об отделениях компании: Номер отделения, Адрес отделения, Номер телефона отделения, Номер факса; О машинах: ГосНомер, Марка, Габариты, Тоннаж, Цена за км, Цена за час, Цена подачи; О водителях: Номер личный, ФИО, Номер телефона; О клиентах: ФИО, Номер телефона; О заказах: Номер заказа, Габариты груза, Тоннаж груза, Дата заказа, Пункт отправления, Пункт назначения. Некоторые поля могут содержать значение NULL. Одними из наиболее существенных требований в клиентском заказе являются технические характеристики машины, в частности, габариты и грузоподъёмность. В связи с этим представляется целесообразным, чтобы по получении заказа от клиента медиатор перенаправлял его не всем компаниям, а только тем, которые располагают машинами в нужном количестве и с нужными характеристиками. С этой целью предлагается устроить вспомогательное хранилище при медиаторе, содержащее информацию об имеющихся машинах и их характеристиках у каждой из компаний-источников. Оно представляет собой таблицу «АвтоНаИсточниках» с колонками: ID_Источника, ГосНомер машины, Габариты, Грузоподъёмность (тоннаж). Поскольку обновления машинного парка в компаниях происходит не часто, представляются два варианта обновления вспомогательного хранилища: 1) каждая компания при обновлении своего автопарка информирует об этом администратора интегрированной системы; 2) поддерживается специальное приложение, которое при каждом таком обновлении автоматически их переносит на хранилище при медиаторе [2]. Таблица 1 Таблица соответствия медиатора и источников Медиатор. таблица Медиатор. атрибут Ист1. таблица Ист1. атрибут Ист2. таблица Ист2. атрибут Ист3. таблица Ист3. атрибут Отделение Номер отделения Отделение Номер отделения - - Филиал Номер филиала Отделение Адрес отделения Отделение Адрес отделения Компания Адрес Филиал Адрес филиала Отделение Номер телефона отделения Отделение Телефон отделения Компания Телефон Филиал Номер телефона филиала Отделение Номер факса Отделение Факс отделения - - - - Клиент Номер телефона Клиент Номер контактного телефона Клиент Номер телефона клиента Заказчик Номер телефона заказчика Клиент ФИО ФИО клиента Адрес клиента Клиент ФИО клиента Заказчик ФИО заказчика Машина ГосНомер Машина ГосНомер Автомобиль ГосНомер Авто ГосНомер авто Машина Марка Марка название - - Авто Марка Машина Габариты Марка Габариты машины Автомобиль Габариты машины Авто Габариты Машина Тоннаж Марка Тоннаж машины Автомобиль Тоннаж машины Авто Тоннаж Машина Цена за км Марка Цена за км - - - - Машина Цена за час - - Автомобиль Цена за час Авто Цена за час Машина Цена подачи - - - - Авто Цена подачи Машина Номер отделения Машина Номер отделения - - Авто Номер филиала Водитель Номер личный Водитель Номер личный Шофёр Номер личный Водитель Номер вод. прав Водитель ФИО Водитель ФИО водителя Шофёр ФИО шофёра Водитель ФИО водителя Водитель Номер телефона Водитель Номер контактного телефона Шофёра Номер телефона шофёра Водитель Номер телефона водителя Заказ Номер заказа Заказ Номер заказа Ордер Номер ордера Заказ Номер заказа Заказ Габариты груза Заказ Габариты груза Ордер Габариты груза Заказ Габариты груза Заказ Тоннаж груза Заказ Тоннаж груза Ордер Тоннаж груза Заказ Тоннаж груза Заказ Дата заказа Заказ Дата заказа Ордер Дата ордера Заказ Дата заказа Заказ Пункт отправления Заказ Пункт отправления Ордер Пункт отправления Заказ Пункт отправления Заказ Пункт назначения Заказ Пункт назначения Ордер Пункт назначения Заказ Пункт назначения Заказ Телефон клиента Заказ Телефон клиента Ордер Номер телефона клиента Заказ Номер телефона заказчика Заказ Номер машины Заказ ГосНомер машины Ордер ГосНомер машины Заказ ГосНомер авто Заказ Водитель номер личный Заказ Водитель номер личный Ордер Водитель номер личный Заказ Водитель номер прав Для трансляции запросов на источник медиатор поддерживает таблицу соответствия с 12 колонками (см. табл. 1): Медиатор.Таблица, Медиатор.Атрибут, Медиатор.Тип, Ист1.Таблица, Ист1.Атрибут, Ист1.Тип, Ист2.Таблица, Ист2.Атрибут, Ист2.Тип, Ист3.Таблица, Ист3.Атрибут, Ист.3.Тип. В целях экономии места приведём её сокращённый вариант с 8 колонками - без типов атрибутов. При медиаторе также поддерживается таблица «Sources» (см. табл. 2), содержащая наименования и сетевые адреса источников. Таблица 2 Таблица «Sources» IdSource Source Name Адрес в сети DB1 . . . . . . DB2 . . . . . . DB3 . . . . . . Список запросов в интегрированной системе, предлагаемый для конечного пользователя: 1. Выдаются номера телефона отделений и их адреса, марки и модели машин, цена. 2. Вводятся габариты и тоннаж груза. Выдаются телефонные номера, номера факсов и адреса отделений, типы машин, цены. Если клиента устраивают условия какой-либо из компаний, он может с ней связаться и сделать заказ. Сюда же возможно встроить дополнительное приложение, позволяющее по заданным пунктам отправления и назначения вычислять расстояние между ними (как, например, на сайте www.avtodispetcher.ru) и предполагаемую цену заказа (в случае, когда цена завязана с расстоянием). 3. Вводятся ФИО и номер телефона клиента. Выдаётся все информация о заказах, сделанных клиентом. При поступлении запроса медиатору сначала происходит формирование вспомогательного запроса хранилищу, выявляющего, какие компании-источники располагают машинами, соответствующими требованиям, указанным в запросе. Далее этот запрос перенаправляется выявленным источникам. Рассмотрим для примера второй запрос из списка как наиболее популярный. Его SQL-код может выглядеть следующим образом: SELECT Отделение.[Номер отделения], Отделение.[Адрес отделения], Отделение.[Номер телефона отделения], Отделение.[Номер факса], Машина.Марка, Машина.Габариты, Машина.Тоннаж, Машина.[Цена за км], Машина.[Цена за час], Машина.[Цена подачи] FROM Отделение, Машина WHERE Машина.[Габариты машины]>=[Габариты груза] AND Машина.[Тоннаж машины]>=[Тоннаж груза] AND Отделение.[Номер отделения]=Машина.[Номер отделения] Габариты груза и Тоннаж груза вводятся пользователем в форму-интерфейс при запуске запроса. Опишем технологию его исполнения. На первом этапе, исходя из предложения WHERE исходного запроса, формируется вспомогательный запрос, адресованный таблице «АвтоНаИсточниках» хранилища. Отсеиваются источники, которые не располагают машинами с нужными характеристиками: SELECT ID_Источника FROM АвтоНаИсточниках WHERE АвтоНаИсточниках.Габариты>=[Габариты груза] AND АвтоНаИсточниках.Грузоподъёмность>=[Тоннаж груза] Результаты записываются во временную таблицу «SourcesQuery». На втором этапе происходит обращение с исходным запросом к каждому из найденных на первом этапе источникам (по их сетевым адресам), указанным в таблице «SourcesQuery»). При этом для каждого источника SQL-код исходного запроса с помощью таблицы соответствия преобразуется к виду, который данный источник будет способен воспринять. В случае отсутствия на источнике какого-либо из атрибутов, указанных в предложении SELECT исходного кода, в преобразованной формуле, адресованной этому источнику, он не указывается. К примеру, для источника Ист1 преобразованный код будет выглядеть следующим образом: SELECT Отделение.[Номер отделения], Отделение.[Адрес отделения], Отделение.[Телефон отделения], Отделение.[Факс отделения], Марка.Название, Марка.[Габариты машины], Марка.[Тоннаж машины], Марка.[Цена за км] FROM Отделение, Машина, Марка WHERE Марка.[Габариты машины]=[Габариты груза] AND Марка.[Тоннаж машины]=[Тоннаж груза] AND Отделение.[Номер отделения]=Машина.[Номер отделения] Предполагается, что при исполнении этого SQL-кода на источнике будет учтена связь таблиц «Машина» и «Марка» и предложение WHERE дополнится условием Машина.Марка=Марка.ID. На третьем этапе медиатор получает все ответы от источников и производит их обратное преобразование к структуре медиатора. После этого каждый ответ дополняется необходимыми полями с информацией об источниках (грузоперевозчиках), все ответы объединяются и выдаются пользователю. 5. Заключение В ходе решения поставленной задачи была построена интегрированная информационная система, объединяющая базы данных компаний-грузоперевозчиков. Смоделированы три источника данных. Выделены информационные объекты базы данных и определены их атрибуты. Разработана логическая структура медиатора, таблицы соответствий и структура вспомогательного хранилища. Описан ход исполнения одного из типовых пользовательских запросов к интегрированной системе. Применение разработанной интегрированной системы позволит компаниям привлечь новых клиентов, сократить издержки производства и увеличить прибыть за счёт сокращения длительности оформления заказа и уменьшения затрат на привлечение компетентного персонала.

×

Об авторах

А С Панкратов

Российский университет дружбы народов

Автор, ответственный за переписку.
Email: pankratov_as@rudn.university

Панкратов Александр Серафимович - доцент, кандидат физико-математических наук, доцент кафедры информационных технологий РУДН

ул. Миклухо-Маклая, д. 6, Москва, Россия, 117198

А Мазри

Российский университет дружбы народов

Email: psheunov.a@yandex.ru

Мазри Абдеррахим (Алжир) - студент кафедры информационных технологий РУДН

ул. Миклухо-Маклая, д. 6, Москва, Россия, 117198

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

  1. Коннолли Т., Бегг К. Базы данных: проектирование, реализация и сопровождение. Теория и практика. - Москва: Вильямс, 2003. - 1436 с.
  2. Гарсиа-Молина Г., Ульман Д., Уидом Д. Системы баз данных. Полный курс. - Москва: Вильямс, 2003. - 1088 с.
  3. Торшин Д. В. Организация единого интегрированного пространства на основе универсального формата обмена данными // Научно-технические ведомости СПбГПУ. Серия: Информатика. Телекоммуникации. Управление. - 2009. - Т. 71, № 2. - С. 26-32.
  4. Черняк Л. Интеграция данных: синтаксис и семантика // Открытые системы. СУБД. - 2009. - № 10. - С. 24-29.
  5. Технология интеграции архивов медицинских изображений / С. В. Кирсанов, В. Н. Коваленко, Е. И. Коваленко, А. Ю. Куликов, М. А. Шифрин // Врач и информационные технологии. - 2013. - № 2. - С. 59-70.
  6. Панкратов А. С. Технология интеграции разнородных баз данных на примере объединения электронных медицинских карт // Искусственный интеллект и принятие решений. - 2011. - № 4. - С. 60-67.
  7. Валуев А. М., Панкратов А. С. Современные технологии интеграции информации из независимых баз данных и возможности их применения в задачах планирования и управления // Горный информационно-аналитический бюллетень (научно-технический журнал). - 2013. - № 7. - С. 170-174.
  8. Панкратов А. С., Пшеунов А. Х. Современные технологии интеграции информации из независимых источников и их применение при построении информационной системы, объединяющей транспортные расписания // Вестник РУДН. Серия: Математика. Информатика. Физика. - 2017. - № 3. - С. 232-242.
  9. Стратегический разрыв: Технологии воплощения корпоративной стратегии в жизнь / М. Ковени, Д. Гэнстер, Б. Хартлен, Д. Кинг. - Москва: Альпина Бизнес Букс, 2004. - 232 с.

© Панкратов А.С., Мазри А., 2017

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution 4.0 International License.

Данный сайт использует cookie-файлы

Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта.

О куки-файлах