Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции по разработка и эксплуатации ИС.doc
Скачиваний:
43
Добавлен:
01.03.2025
Размер:
49 Мб
Скачать
☆

Тема 5.8 Экспортирование структур баз данных

При работе с АИС часто возникают задачи, для решения которых необходимо производить перенос данных между БД. Существуют две формы переноса данных:

  • экспортирование — процесс, при котором данные передаются внешнему источнику;

  • импортирование — процесс, при котором данные извлекаются из внешнего источника.

Таким образом, один и тот же процесс переноса данных, в зависимости от точки зрения на него, является одновременно и экспортом и импортом данных.

В зависимости от поставленных целей процесс экспортирования данных может быть как разовым (по запросу), так и периодически выполняемым (по расписанию).

Экспортирование данных требуется в следующих случаях:

  • перевод БД на другой физический носитель или сервер;

  • создание копии БД;

  • архивирование БД;

  • перенос данных между разными информационными системами;

• перенос данных от унаследованных систем.

Необходимость переноса БД на другой физический носитель или сервер возникает, например, в случае модернизации аппаратного обеспечения АИС, перехода на другую версию программного обеспечения или переезда организации, работающей с АИС.

Создание копии БД (репликация) — один из способов разгрузки основного сервера АИС. В этом случае часть функций АИС, связанных с чтением данных, может выполняться на копии основной БД. Если в АИС большое число пользователей, то это позволяет ускорить работу с данными.

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

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

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

Проведение переноса данных между АИС может выполняться и внутри одного объекта (организации) при так называемой «лоскутной» автоматизации, когда организация использует нескольких слабоинтегрированных ИС. Например, экспорт данных из АИС отдела продаж в АИС бухгалтерии.

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

Несмотря на то, что эти системы уже не в состоянии решать поставленные задачи на современном уровне, данные, накопленные в них, представляют большую ценность для автоматизируемой организации — создание новой АИС не означает, что организация только начинает свое становление.

После внедрения необходимо исключить или максимально сократить период параллельной работы унаследованной и новой АИС. Поддержка двух или более систем вместо одной требует больших усилий и от администраторов и от пользователей; создается впечатление, что внедряемая АИС не реализует всех функций унаследованной системы.

Экспорт данных из унаследованных систем следует проводить таким образом, чтобы новая АИС могла полноценно работать и со старыми данными (полученными от унаследованных систем), и с новыми, и с их комбинациями.

Для проведения экспортирования данных необходимо:

  • указать источник данных;

  • указать получатель (приемник) данных;

  • задать набор преобразований данных из формата источника в формат получателя (если требуется).

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

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

Простой перенос данных — это создание копий структур данных (таблиц, представлений и т. д.) источника в БД получателя.

Значительно сложнее проведение экспорта, когда в БД получателя данных существуют соответствующие структуры. Экспортируемые данные в этом случае должны быть преобразованы таким образом, чтобы полностью соответствовать организации данных в БД получателя.

Существуют нижеследующие виды преобразований данных.

Переименование. Объекты данных (таблицы, поля и т. п.) источника получают имена в соответствии с организацией данных получателя.

Реструктуризация. Общая предметная область в БД-источнике и БД-получателе может быть разделена на таблицы и поля разными способами. В этом случае переносимые данные должны быть реструктуризированы. При этом одна таблица может состоять из нескольких таблиц или, наоборот, несколько таблиц объединяется в одну. То же самое касается и полей — в соответствии со структурой БД-получателя экспортируемые поля могут объединяться или разделяться.

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

Кодирование и декодирование. Если БД-источник и БД-получатель используют разные системы кодирования атрибутов данных или в одной из них атрибут кодируется, а в другой — нет, то при экспортировании с помощью декодирования и кодирования данные изменяются так, чтобы они соответствовали системе кодирования атрибутов в БД-получателе.

Конвертирование. В случае использования разных формант для хранения соответствующих атрибутов (числовых, текстовых или логических) в процессе экспортирования данные необходимо конвертировать — привести к формату атрибута в БД-получателе.

Согласование. При экспортировании данных необходимо обеспечить их согласование с данными, хранимыми в БД-получателе. В разных БД могут использоваться разные способы отображения одной и той же информации. Например, какой-то параметр оценивается по пяти- или десятибалльной системе; расстояние измеряется в метрах, километрах и т. п.

Проверка. В БД могут использоваться разные ограничения на допустимость значений полей, поэтому экспортируемые данные должны проверяться и соответственно преобразовываться. При этом записи, не прошедшие проверку, могут помечаться в служебных полях или сохраняться в специальных таблицах, что позволит в дальнейшем подвергнуть их анализу и корректировке.

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