Академический Документы
Профессиональный Документы
Культура Документы
в СУБД Oracle
Обзор возможностей
Пудовченко Юрий Евгеньевич
Oracle СНГ
Ноябрь 2020
The following is intended to outline our general product direction. It is intended for information
purposes only, and may not be incorporated into any contract. It is not a commitment to deliver
any material, code, or functionality, and should not be relied upon in making purchasing
decisions.
The development, release, timing, and pricing of any features or functionality described for
Oracle’s products may change and remains at the sole discretion of Oracle Corporation.
•
экспоненциально.
Экспоненциально растет время создания
10 лет
отчетов
• Потребности бизнеса ограничивают время
получения отчетов.
• Как бороться с ростом объемов? 2010 2011 2012
2013
• Как обеспечить стабильное время 2014
2015
2016
независимо от роста объемов данных ? 2017
2018
2019
2020
1 2-12 мес Год 1 Год 2 Год 3 Год 4 Год 5 Год 6 Год 7 Год 8 Год 9 Год 10
Год 11 Год 12 Год 13 Год 14
12
Advanced Row Compression
• Для активно изменяемых данных
и для неактивных данных
– Применимо в OLTP и Data Warehouse
– От 2x дo 4x раз
16
Advanced LOB Compression/Deduplication
• Сжатие и дедупликация возможны для SecureFiles LOBs
– Автоматически оценивается возможность сжатия (будет выигрыш или нет)
– LOBs уже сжатые внешними системами (JPEG) не сжимаются
– Полезно для Content Management, приложений электронной почты, …
– Существует Compression Advisor, который оценивает сжатие для SecureFiles LOBs
• Securefiles LOB оптимизированя для чтения и записи
• Выполняет дедупликацию повторяющихся данных
‒ Значительно уменьшает объем Significantly reduces space consumption
‒ Dramatically improves writes and copy operations
• Требуется ACO
DataPump Compression
• Сжимает таблицы в процессе выгрузки данных
– Сжимает данные перед записью на диск, уменьшает потребность в дисковом
пространстве при выгрузке
– Не требуется разжимать данные перед импортом
SQLNET.COMPRESSION=on
SQLNET.COMPRESSION_LEVELS=(low|high)
Heat Map
ALTER SYSTEM SET HEAT_MAP = ON;
Следит за обращением к данным
• Отслеживается чтение и изменение
• На уровне строки и сегмента
– Время и тип доступа отслеживается на уровне
сегмента
– Время изменения для блоков БД
– Различает SQL-запросы от задач обслуживания:
сбор статистики, бэкап, redefinitions ...
• Не оказывает влияния на время доступа к
данным
– На уровне объекта
– На уровне блока << 5% cost
22
Automatic Data Optimization
Автоматизация многоуровневого хранения
• Политики типа
• Storage Tiering
• Compress
• dbms_ILM, dbms_ILM_ADMIN
23
Flashback Data Archive
История изменений каждой строки
create FLASHBACK ARCHIVE FLA1
• Cостояние данных на какой-то момент TABLESPACE tbs1
в далеком прошлом RETENTION 10 YEAR ;
alter table ... flashback archive FLA1
• Требования регулирующих органов -
Sarbanes-Oxley, HIPAA и Basel-II - select …
которые требуют ведения истории from … AS OF ‘2019-12-31 23:59:59‘
данных на протяжении длительных where …
сроков (обычно более 5 лет). select … from …
VERSIONS BETWEEN ‘2010-01-01 00:00:00’
and MAXVALUE
https://www.oracle.com/ocom/groups/public/@otn/documents/webcontent/4421812.pdf
24
Tab 1 Segment
Исследуйте ваши объемы
Свободное
пространство
Объем файлов БД: select sum(bytes)/power(2,30)
from dba_data_files; => 144 T
Объем занимаемый сегментами:
select SEGMENT_TYPE,
round(sum(BYTES)/power(2,30)) GB,
from DBA_SEGMENTS
--where owner not like ’%SYS%’…
group by rollup(segment_type) Объем строк в таблицах:
order by segment_type;
SEGMENT_TYPE GB select
-------------------- --------- round(
LOBINDEX 0
LOB SUBPARTITION 0 sum(NUM_ROWS * AVG_ROW_LEN)
ROLLBACK 0 /power(2,30)
TYPE2 UNDO 0
LOB PARTITION 0 ) GB
LOBSEGMENT 1 from DBA_TABLES
INDEX SUBPARTITION 4
TABLE SUBPARTITION 7 -- where owner …
INDEX PARTITION 10 ;
TABLE 18
TABLE PARTITION 25 Выгрузить данные с помощью DataPump
INDEX 36
102 • Без сжатия
• С сжатием
Полезные инструменты
• Исследуйте ваши объемы:
• Segment Advisor = Space Advisor
• dbms_space.[create_table_cost | create_index_cost | unused_space]
• DataPump [no]Compression – данные в сухом остатке
29
Best Practices and More….
Что
https://www.oracle.com/a/tech/docs/adva
nced-compression-poc-insights.pdf
почитать
https://twitter.com/aco_gregg https://www.oracle.com/ocom/groups/pu
blic/@otn/documents/webcontent/510415
https://blogs.oracle.com/DBStorage/ 3.pdf
https://www.oracle.com/database/technologies/
advanced-compression.html
30
Полезные ноты….
Advanced Compression Master Note (Doc ID 1223705.1)
How to compress a table that is online (Doc ID 1353967.1)
Advanced Compression critical patches (Doc ID 1061366.1)
Redo Transport compression with Data Guard (Doc ID 729551.1)
How to see if rows are compressed in a table (Doc ID 1477918.1)
A complete understanding of RMAN compression (Doc ID 563427.1)
How to determine if Advanced Compression is used by DataPump (Doc ID 1993134.1)
Index Organized Tables (IOTs) and compression (Doc ID 1555637.1)
How to find the optimal Index Key COMPRESS level for Indexes (Doc ID 601690.1)
31
Благодарю за
внимание !