В ходе развития информационных систем были сформулированы принципы организации больших массивов данных:
- принцип интеграции данных, в соответствии с которым все данные накапливаются и хранятся централизованно, образуя динамически обновляемую модель предметной области;
- принцип независимости прикладных программ от данных, то есть отделение логической модели данных от средств управления ими.
Удовлетворение этим принципам связано с созданием единого для всех задач блока данных, называемого базой данных, и разработкой единой управляющей программы для манипулирования данными, называемой системой управления базой данных – СУБД.
База данных представляет собой данные, организованные и обрабатываемые в соответствии с определёнными правилами хранения и доступа. Логическая, а часто и физическая автономность данных является существенным отличием баз данных от прочего программного обеспечения. Фиксированная, строго оговоренная структура данных и их безусловная типизация отличает базу данных от текстовых и табличных процессоров, а широкая гамма допустимых операций на множествах является важным преимуществом её перед пакетами прикладных программ и системами программирования. Выделением базы данных как особой части программного обеспечения преследуется несколько целей:
- эффективная структуризация информации;
- сведение к минимуму повторяющихся данных;
- обеспечение быстрого доступа к информации прямо на носителе;
- удобство дополнения информации новыми сведениями;
- обеспечение целостности данных;
- предотвращение несанкционированного доступа к информации;
- облегчение автоматизации обработки данных и ведение отчётности.
Объекты, процессы, явления предметной области представляются в базах данных коллекциями записей (сущностей) определённой структуры. Отношения между записями характеризуются связями, которые могут быть бинарными и n-арными. Эти связи оформляются в виде моделей данных. Модель даёт приближённое представление коллекции средствами языка, математической или логической символики. Различают иерархическую, сетевую и реляционную модели данных.
Иерархическая модель отражает структуру, аналогичную файловой системе. Это дерево с узлами, в которых хранятся данные, и ветвями, связывающими их между собой. Узел, в который не входит ни одна ветвь, называется корнем. В свою очередь, любой узел дерева – это в то же время и корень поддерева. Число таких поддеревьев именуется степенью узла. Концевой узел, имеющий нулевую степень, называется листом. Таким образом, иерархическая модель должна удовлетворять определённым ограничениям.
Если эти ограничения убрать получится сетевая модель. Сетевая модель рассматривает базу данных как абстрактное хранилище связанных друг с другом записей, то есть объектами такой базы являются и записи и связи между ними. Форма хранения информации в базе данных сетевого типа напоминает способ хранения образов в мозгу человека. Между элементами данных существует отношение наследования типа «родитель-потомок», причём любой элемент может оказаться наследником нескольких родителей и наоборот. Связи в базе данных сетевого типа реализуются с помощью сложной системы указателей. Поскольку каждый элемент данных должен содержать ссылки на другие элементы, такая модель требует значительных ресурсов памяти и высокого быстродействия компьютера.
Идея автоматизированной реляционной или табличной организации данных принадлежит польскому математику З. Я. Слонимскому. В основе её лежит представление предметной области в виде набора взаимосвязанных таблиц, элементы которой являются неделимыми величинами. В этом заключается главное отличие реляционной модели от иерархической и сетевой. Сравнительная простота инструментальных средств поддержки реляционной модели является её достоинством, тогда как жёсткость структуры и зависимость от скорости работы и размера базы данных относятся к недостаткам.
Разработчики реляционных СУБД никогда не ставили целью представление пользователю мощных функций многомерной обработки данных, их анализа и синтеза. Такие функции обычно перекладываются на различные отдельные инструменты для конечного пользователя, такие как широкоформатные таблицы, графические программы и специализированные пакеты прикладных программ.
2. Системы управления базой данных
Системой управления базой данных называется программа, выполняющая управление и поиск данных, их систематизацию и актуализацию. Под управлением данными понимается, во-первых, манипулирование записями, выполняемое пользователями, а во-вторых – задание и коррекция схемы базы данных, то есть её логической или физической структуры, выполняемое программистом. В наиболее полном варианте СУБД содержит свой интерфейс пользователя, дающий возможность непосредственного управления данными; язык для программирования прикладных задач обработки данных; средства для придания завершённой программе вида готового коммерческого продукта. Будучи механизмом пользователя, СУБД предусматривает систематизацию и оперативный поиск данных и имеющихся в них сведений, а также поддержание данных в актуальном состоянии – их добавление, изменение, выборку, отображение. Будучи инструментом программиста, СУБД помогает ему в проектировании, предусматривая следующие этапы:
- определение объектов-источников данных и выявление связей между ними;
- определение свойств объектов и выявление связи между свойствами;
- создание словаря данных;
- разработка операций над данными;
- назначение пользователей и разграничение их прав доступа.
Как инструмент проектирования информационных систем, СУБД поддерживает все три известных уровня представления данных: концептуальный, логический и физический. Первый определяет структуру базы данных в терминах объектов предметной области и отношений между ними. Второй уровень описывает связи между данными на языке математической логики и алгоритмических языках, а третий управляет обменом и размещением данных на внешних носителях. Для этого СУБД оснащается средствами создания и анализа структуры базы данных и механизмами работы с таблицами.
Пользователь общается с базой данных через копии её фрагментов. Для этого он либо осуществляет фильтрацию записей, либо обращается к базе данных с запросом. Запросы к реляционным базам данных выполняются на языках реляционного исчисления, основанных на классических операциях на множествах (объединение, перечисление, дополнение, разность) и исчислении предикатов (проекция, выбор). Язык запросов предоставляет пользователю набор правил или инструмент для формирования вопроса с информацией о желаемом результате. На основании запроса СУБД автоматически выдаёт ответ посредством генерации новых таблиц. Статусом стандартного языка запросов обладает сегодня реляционный структурированный процедурный язык SQL (Structured Query Language), разработанный фирмой IBM.
Более 15 лет представлен на мировом рынке пакет ORACLE. Долгое время каждая третья продаваемая СУБД работала под ORACLE. На ORACLE разработано значительное число прикладных систем для банков, промышленных предприятий, энергетических объектов, учреждений здравоохранения и таможни. ORACLE обеспечивает целостность баз данных при выполнении распределённых запросов, автономию узлов базы и высокую производительность. Система поддерживает открытую архитектуру – в едином приложении её могут согласованно работать компоненты СУБД различных фирм, файлы операционной системы, аппаратура (промышленные контроллеры, кассовые аппараты). Инструментарий ORACLE позволяет создавать графический интерфейс пользователя со сложной логикой обработки данных. Постепенно реляционная СУБД ORACLE преобразуется в объектно-ориентированную систему на основе языка SQL++, хранящую данные в виде объектов вместо таблиц.
Языки управления событиями исключают программирование как процесс формирования текста программы программистом. Генераторы интерпретируют данные, вводимые с помощью меню, диалога или пиктограмм, и генерируют соответствующий программный код на одном из процедурных языков. Генераторы освобождают разработчиков от необходимости переписывать повторяющиеся фрагменты программ и позволяют быстро создавать прототипы прикладных систем.
Интегрированные системы программирования, включающие генераторы кодов и процедурные языки, называют CASE-инструментами (Computer Aided Software Engineering). В таких комплексах среда проектирования не отделена от прикладной системы. Примером CASE-инструмента является система ORACLE CASE. Для создания конкретной прикладной системы, например таможенной, проектировщик представляет свои знания о работе конкретного подразделения таможни в системный словарь. Настройка проектируемой системы на технологию работы таможенного подразделения закладывается уже на первоначальной стадии проектирования средствами конструктора. При любых изменениях технологии меняется лишь представление знаний в системном словаре. Затем выполняется генерация сразу же готовой системы.
3. Основные форматы данных, используемые в таможенных органах при хранении и передаче информации
Программные средства ЕАИС ФТС России используют широкий спектр форматов хранения данных: DBF, внутренние форматы СУБД ORACLE, MS SQL Server, Firebird, что приводит к высокой стоимости администрирования, большим затратам на разработку средств преобразования и высоким требованиям к персоналу сопровождающей системы. Одной из задач модернизации ЕАИС является типизация форматов.
Базы данных таможенных органов можно условно разбить на три группы:
- базы данных нормативно-справочной информации (НСИ): системы классификации и кодирования, тарификации, ограничений, правовые и нормативные акты, системы регистрации и учёта;
- базы данных оперативной информации: электронные копии документов, используемых в ходе таможенного оформления и контроля (ГТД, ДКД, ДТС, ТПО и др.), данные оперативного характера, обеспечивающие технологические процессы (учёт, контроль, аудит и т. п.);
- базы данных статистической информации, являющиеся производными от баз данных оперативной информации.
Практически каждое функциональное подразделение таможенных органов имеет собственную базу данных для текущей работы. Результаты работы подразделений по линиям передачи данных передаются в вычислительные центры региональных информационно-технических служб, на базе которых действуют региональные центры передачи электронных таблиц и организованы региональные базы данных. Отсюда данные передаются в ГНИВЦ, на территории которого функционирует Центральный банк данных.
Из ГНИВЦ в функциональные подразделения РТУ и таможен регулярно передаются корректировки НСИ.
Нормативно-справочная информация формируется на основе единой системы классификации и кодирования, включает в себя ряд международных, общегосударственных, межведомственных и отраслевых классификаторов и справочников.
Информационные объекты ЕАИС таможенных органов могут иметь несколько форм представления, основными из которых являются: записи в СУБД, наборы файлов DBF, данные на языке разметки XML.
DBF формат является общепринятым форматом файлов, предназначенных для обмена данными. DBF-файл делится на три части: заголовок, описание структуры записей и тело (собственно записи).
Язык XML (Extensible Markup Language – язык наращиваемой разметки) является стандартным языком описания и передачи данных в Интернете, аналогично тому, как язык HTML (Hypertext Markup Language) является стандартным языком описания и отображения веб-страниц.
Тема 5. Построение информационных систем в таможенных органах