Загрузка и корректировка данных из старой БД
Очень важной задачей при разработке новой автоматизированной информационной системы является поддержка накопленных данных, созданных на предприятии другими, унаследованными информационными системами, работавшими ранее или параллельно с разрабатываемой БД. Такая потребность возникает при смене технологий обработки данных, переводе задач на новое аппаратное или программное обеспечение. Кроме того, возможна периодическая загрузка данных в систему из какого—либо источника (например, общегосударственного классификатора), поскольку работать в полной изоляции от окружающего мира могут только редкие АИС. Для переноса данных из старой БД в новую разрабатываются специальные программы—конверторы, которые осуществляют такую выгрузку данных из старой структуры и загрузку в новую этих же данных. При этом формат старых данных преобразуется, как правило, в соответствии с требованиями новой системы. Например, необходимо осуществить загрузку данных из файлов формата dbf, полученных ранее в среде какой—либо dBase — подобной СУБД, в таблицы БД, созданной средствами серверной СУБД. Для того чтобы осуществить успешную конвертацию данных, во—первых, необходимо понять смысл этих данных с точки зрения предметной области. Затем необходимо изучить логическую структуру каждой dbf таблицы (каждый dbf файл представляет собой отдельную таблицу). Поскольку это файл БД (созданный средствами СУБД), то он в себе содержит не только данные, но и описание этих данных. Первые 32 байта dbf файла описывают характеристики самой таблицы – дату последней корректировки, число записей, размер записи, наличие Memo полей в таблице. Далее идет описание полей записей. Каждое поле описывается 32 байтами – имя, тип, размер поля. Длина описания всех полей будет равна 32 * n байта, где n – количество полей таблицы. За описанием данных начинается непосредственно область данных. Таким образом, зная структуру файла, можно последовательно считать данные и затем записать их в файл формата другой СУБД. При этом необходимо помнить, что в dbf файлах нет описания как первичных, уникальных, так и внешних ключей. Поэтому при загрузке данных в новую среду необходимо позаботиться о поддержке ограничений целостности новой БД.
Для написания программы—конвертора можно использовать любую среду. Запись в БД должна осуществляться средствами СУБД, в формат которой преобразуются данные. При рассмотрении задач, связанных с выгрузкой и загрузкой данных, проектировщик программы—конвертора должен:
— определить каким системам (передающей, принимающей) нужен интерфейс;
— определить периодичность и объем передаваемых данных;
— установить степень синхронизации данных;
— исследовать и определить методы транспортировки данных (файловые, коммуникационные и др.);
— согласовать с проектировщиками систем (передающей, принимающей) формат данных для обмена;
— определить порядок передачи данных при загрузке и выгрузке;
— установить правила обработки входных данных, которые частично разрушены или утратили целостность;
— для каждой загрузки составить планы перехода в аварийный режим и режим восстановления на случай неудачного и неполного приема данных.
При переносе данных из старой системы в новую может возникнуть проблема несовместимости данных и попытки переноса в новую систему «неочищенных данных». Это возможно, например, в случае, если старая система содержит не полностью нормализованные данные, либо если ограничения целостности не реализованы на уровне базы данных. При переносе данных в новую систему необходимо бороться за их чистоту. Затраты времени на это затем полностью окупаются.
Дата добавления: 2016-10-17; просмотров: 661;