Перемещение существующих данных
После подготовки описания секции можно приступить к онлайн-перемещению существующих данных из исходной композитной секции в split-target секцию. Как только перемещение будет завершено – split-target секция становится регулярной.
Разделение секций является ресурсоёмким процессом. Соответственно, вы должны выполнять разделение во время периода низкого уровня активности вашего приложения. Большие таблицы, если есть такая возможность, лучше разделять по отдельным секциям, т.е. не все сразу. Если операция разделения была по каким-то причинам прервана, вы можете запустить её повторно – разделение продолжится ровно с того места, где произошло прерывание.
Для перемещения данных в split-target секцию в онлайн применяется утилита PROUTIL PARTITIONMANAGE SPLIT:
proutil db-name -C partitionmanage split table table-name composite initial [useindex index-name] [recs numrecs]
где,
index-name – это имя локального индекса, который будет использоваться при сканировании таблицы во время разделения. Для лучшей производительности используйте уникальный локальный индекс, если такой есть.
numrecs – количество перемещаемых записей в одной транзакции. По умолчанию 100.
Пример команды PROUTIL PARTITIONMANAGE SPLIT для перемещения данных в онлайн из исходной композитной секции таблицы Order в split-target секцию с применением индекса CarrierOrderDateLocalIdx по 200 записей в одной транзакции:
proutil sportsco -C partitionmanage split table order composite initial useindex carrierorderdatelocalidx recs 200