RMAN использует два типа компрессии блоков при создании наборов резервых копий (Backupset).
- Unused Block Compression (Поддерживает резевное копирование на диск и Oracle Secure Backup)
- Null Block Compression (Все виды)
Хотя технология и называется "Block Compession" на самом деле RMAN ни чего не зжимает, а просто не включает не используемые блоки в backupset. Данная технология может применяться только для локально-управляемых табличных пространств (Locally Managed Tablespaces).
Unused Block Compression
При компрессии неиспользуемых блоков, RMAN не проверяет каждый блок. Вместо этого RMAN читает битовые карты, которые показывают какие блоки используются в данных момент, а затем читает только выделенные блоки.
Компрессия неиспользуемых блоков включается автоматически при выполнении следующих 5 условий:
- Инициализационный параметр COMPATIBILE 10.2 или выше
- Нет гаранитированных точек восстановления в данных момент (guaranteed restore points)
- Файл данных локально управляемый
- Файл данных входит в полное резервное копирование или инкрементальное 0-ого уровня
- Набор резервных копий создается на диске или в Oracle Secure Backup
Null Block Compression
Во время данного вида компрессии проверяется каждый блок на предмет наличия в нем данных сейчас или когда-либо. Блок который никогда не содержал в себе данных не включается в резервную копию. Блок который содержал или содержит данные - включается в резервную копию.
Данная статья является вольным перевод официальной документации: