Механизм After-Imaging в OpenEdge
Экстенты After-Imaging
Количество AI-экстентов в базе данных ограничено максимально возможным количеством областей хранения в OpenEdge. Каждый такой экстент – это отдельная область, которая имеет свой уникальный порядковый номер. Для обеспечения надежности должно присутствовать минимум три экстента.
AI-экстенты содержат серии заметок, сгруппированных в AI-блоки. Именно эти заметки используются процессом roll-forward для приведения базы данных к состоянию, соответствующему состоянию до момента ее повреждения: без потери транзакций, созданных после формирования последней резервной копии.
Экстенты имеют расширение .an, где n – порядковый номер экстента в списке AI-экстентов.
Движок базы данных использует AI-экстенты последовательно, в порядке их определения в структурном файле. Процесс переключения экстентов представлен на рисунке 1. Переключение экстентов – это действие по переходу от использования одного экстента к использованию другого.
Рисунок 1 Процесс переключения AI-экстентов
Экстенты After-imaging с целью обеспечения максимальной защиты должны быть изолированы от других экстентов базы данных. Например, если носитель, на котором расположены экстенты данных или BI-файлы, будет поврежден, то после его замены можно восстановить базу из последней резервной копии и с помощью AI-экстентов привести ее к актуальному состоянию. Если же будет поврежден носитель с AI-экстентами, то нужно просто отключить After-imaging. В этом случае потерянными окажутся только AI-экстенты. Иногда сделать такую изоляцию трудно, поскольку с одним физическим диском может работать несколько файловых систем, поэтому изоляцию необходимо осуществлять на уровне файловой системы и устройств.
Существует два типа AI-экстентов:
- фиксированного размера;
- переменного размера.
Если вы заинтересованы в улучшении производительности, то экстенты должны быть фиксированного размера, т.е. предварительно отформатированы. Это позволит получить:
- улучшение производительности за счет исключения форматирования пространства во время работы;
- последовательное непрерывное использование диска.
Единственным преимуществом экстентов переменного размера является то, что за ними не нужно осуществлять такой контроль, как за фиксированными экстентами, но такие экстенты не ограничены в размерах, а значит, в случае возникновения каких-либо проблем, они могут заполнить всё возможное дисковое пространство, что не очень хорошо.
Использование AI-экстентов фиксированного размера предпочтительнее экстентов переменного размера.
Каждый экстент может иметь определенное состояние:
- EMPTY – экстент пуст и готов к использованию.
- BUSY – экстент на текущий момент активен (используется). В один момент времени в базе данных может быть только один экстент с таким состоянием.
- FULL – экстент закрыт и содержит заметки. В такой экстент не может осуществляться запись, пока он не перейдет в состояние EMPTY и не будет подготовлен для повторного использования.
- LOCKED – экстент заполнен, но еще не скопирован средствами OpenEdge Replication. Это состояние возможно только тогда, когда для базы активирован механизм OpenEdge Replication.
- ARCHIVED – экстент заполнен и заархивирован средствами AI File Management, но он еще не скопирован средствами OpenEdge Replication. Состояние возможно только, когда активированы механизмы AI File Management и OpenEdge Replication.
Метка:After-Imaging