Текстовая загрузка данных
После загрузки описания данных база готова к загрузке содержимого таблиц и значений секвенций. СУБД OpenEdge предоставляет несколько методов для загрузки этого содержимого. Выбор метода зависит от типа имеющихся файлов с выгрузкой. Следующая таблица содержит список различных типов файлов выгрузки и используемых методов для их загрузки в базу данных.
Тип файла | Метод загрузки |
Файлы с текстовой выгрузкой (.d) | Data Administration
Bulk Load |
Файлы с бинарной выгрузкой (.bd) | PROUTIL |
Файлы с многопоточной бинарной выгрузкой (.bdn) | PROUTIL + dump list |
Файлы с выборочной бинарной выгрузкой (.bd) | PROUTIL |
Файлы со значением секвенций (_seqvals.d) | Data Administration |
Загрузка с помощью Data Administration
Инструмент Data Administration позволяет загрузить в базу данных содержимое одной или нескольких таблиц. Процедура загрузки следующая:
- Открыть инструмент Data Administration.
- Подключиться к базе данных.
- В меню Data Administration выбрать Admin -> Load Data and Definitions -> Table Contents (.d file). Откроется диалоговое окно Select Tables.
- В диалоговом окне Select Tables содержится список доступных таблиц в базе данных:
- Если требуется загрузить содержимое одной или нескольких таблиц, то выделить каждую щелчком мыши.
- Если требуется загрузить содержимое во все таблицы базы данных, то щёлкнуть мышью по кнопке Select Some. В открывшемся диалоговом окне Select Tables by Pattern Match убедиться, что в поле Table Name содержится символ «*» и щёлкнуть по кнопке OK. После этого будут выделены все таблицы.
- В диалоговом окне Select Tables щёлкнуть мышью по кнопке OK. Откроется диалоговое окно Load Data Contents. По умолчанию каталог с файлами выгрузки — это текущий каталог. Если загружаемые файлы расположены в другом каталоге, то щёлкнуть по кнопке Dir и указать расположение файлов выгрузки (.d).
- В диалоговом окне Load Data Contents щёлкнуть по кнопке OK для старта процесса загрузки. Откроется окно Load Table Contents, в котором будет отображаться ход выполнения загрузки содержимого таблиц. Дополнительно здесь показывается количество загруженных записей и, если есть, ошибок.
- После завершения загрузки откроется информационное окно с соответствующим сообщением. Щёлкнуть мышью по кнопке OK для закрытия информационного окна.
Загрузка содержимого таблиц с применением метода Bulk Load
Загрузка текстовых данных с помощью Data Administration может потребовать много времени, особенно для больших таблиц. С помощью метода массовой загрузки (Bulk Load) можно кардинально сократить время загрузки текстовых данных в целевую базу. Тем не менее, этот метод должен использоваться только если существует возможность нахождения базы данных в офлайн в течение некоторого времени, а также если есть время для перестройки индексов сразу после завершения загрузки данных.
Метод массовой загрузки работает быстрее Data Administration потому, что:
- пропускаются все операторы CREATE TRIGGER;
- деактивируется все индексы;
- загружаются только данные.
Внимание! Необходимо осторожно использовать этот метод в случае, если в таблице уже имеются записи. Так как перед загрузкой деактивируются все индексы в таблице и СУБД OpenEdge не сможет определить и проверить уникальность записей во время загрузки. В результате в таблице могут появиться дубликаты записей.
Выполнение массовой загрузки состоит из трёх этапов:
- Создание файла описания массовой загрузки (.fd).
- Выполнение загрузки.
- Перестроение индексов.
Процедура создания файла описания массовой загрузки
Для создания файла описания массовой загрузки (.fd) используется инструмент Data Administration в онлайн или в офлайн.
Процедура создания файла:
- Открыть Data Administration и подключиться к базе данных.
- В меню Data Administration выбрать пункт Admin -> Create Bulk Loader Description File. Откроется диалоговое окно Select Tables.
- В диалоговом окне Select Tables содержится список доступных таблиц в базе данных:
- Если требуется загрузить содержимое одной или нескольких таблиц, то выделить каждую щелчком мыши.
- Если требуется загрузить содержимое во все таблицы базы данных, то щёлкнуть мышью по кнопке Select Some. В открывшемся диалоговом окне Select Tables by Pattern Match убедиться, что в поле Table Name содержится символ «*» и щёлкнуть по кнопке OK. После этого будут выделены все таблицы.
- В диалоговом окне Select Tables щёлкнуть мышью по кнопке OK. Откроется диалоговое окно Make Bulk Load Description File. По умолчанию каталог создания файла – это текущий рабочий каталог. Имя файла по умолчанию состоит из имени базы данных и расширения «.fd». Если необходимо создать файл в другом каталоге или с другим именем файла, используйте кнопку Dir.
- Щёлкнуть мышью по кнопке OK в диалоговом окне Make Bulk Load Description File для старта процесса создания файла.
- После завершения загрузки откроется информационное окно с соответствующим сообщением. Щёлкнуть мышью по кнопке OK для его закрытия.
- Проверить наличие файла в указанном каталоге.
- Закрыть Data Administration.
Выполнение загрузки
Процесс массовой загрузки использует файлы с текстовой выгрузкой (.d) и файл описания (.fd) для загрузки содержимого всех таблиц в базу данных, находящуюся в офлайн. Поэтому перед стартом необходимо остановить базу данных и только затем приступить к загрузке.
Для загрузки применяется утилита proutil с классификатором bulkload.
Синтаксис команды:
proutil <db-name> -C bulkload <.fd-file>
Перестройка индексов
Ускорение массовой загрузки достигается путём деактивации всех индексов. Поэтому после завершения загрузки необходимо выполнить их перестроение. Для этого применяется утилита proutil с классификатором idxbuild.
Синтаксис команды:
proutil <db-name> -C idxbuild all
Примечание: idxbuild имеет ряд дополнительных параметров, с помощью которых можно управлять эффективностью процесса перестроения индексов. Процесс перестроения индексов будет подробно описан на отдельном курсе.