SlideShare a Scribd company logo
<Insert Picture Here> 
Edition Based Redefinition 
Обновление приложений на “лету” 
Игорь Мельников 
Oracle СНГ
2 
Высокая доступность 
• Внеплановый 
простой 
• Системный сбой 
• Real Application 
Clusters 
• Потеря данных • Сбой носителя • ASM, Physical Standby 
• Ошибки человека 
• Технологии Flashback 
• Logical Standby 
• Повреждение 
данных 
• Data Recovery Advisor 
• RMAN 
• Oracle Secure Backup 
• Катастрофа • Data Guard 
• Плановый 
простой 
• Изменение 
PL/SQL- 
объектов БД 
приложения 
• Online Application 
Upgrade 
• Сопровождение 
данных 
• Online Redefinition
3 
Oracle Database 11g Release 2 
Online Application Upgrade 
• Часто бизнес-критичные приложения бывают 
много часов недоступны из-за “наката” 
обновлений (патчей) или установки новой версии 
приложения 
• Oracle Database 11g Release 2 предлагает 
революционную технологию которая дает 
возможность обновлять приложения на “лету” – 
без остановки ! 
• Одновременно могут быть использованы как 
старая, так и новая версия приложения !
4 
Решение проблемы установки патчей 
Edition-based redefinition 
• Новые типы объектов в СУБД: 
– edition 
– editioning view 
– crossedition trigger 
• PL/SQL-код устанавливается в новую версию (edition) 
• Новые столбцы таблиц и изменения данных в них, не 
видимы в старой версии 
– Editioning view делают разную проекцию таблиц, структура 
которых менялась в каждую версию (новые столбцы невидимы в 
старой версии) 
– Crossedition триггер, невидимо для старой версии, осуществляет 
конвертацию данных сделанных в старой версии в новую (и 
наоборот – в случае “отката” патча) структуру
5 
Версия (редакция) объекта 
Editions 
• Edition – новое понятие в 11.2 
• Версия наследуется от родительской 
– Наследует все объекты от родительской (кроме таблиц и 
индексов) 
– Каждая версия может иметь собственную реализацию одного и 
того же PL/SQL-объекта 
– Версия может иметь только одного потомка 
• БД должна иметь как минимум одну версию 
(ORA$BASE – существует по умолчанию) 
• Сессия всегда выполняется в определенной версии (по 
умолчанию в ORA$BASE)
6 
Версионируемые объекты 
Editioned Objects 
• Не все объекты версионируемы (editioned) 
• Чтобы объект был версионируемым должно быть 
соблюдено два условия: 
1. Объект должен быть объектом версионируемого 
(editionable) типа: 
• Function, Procedure, 
• Package (specification and body) 
• Type (specification and body) 
• Trigger 
• Library 
• Synonym 
• View 
2. Объект должен принадлежать версионно- 
полномочному пользователю (has an editions-enabled 
owner)
7 
Версия (редакция) объекта 
Создание редакции 
CREATE EDITION version_2 AS CHILD OF ora$base; 
GRANT USE ON version_2 TO ibs; 
ALTER USER ibs ENABLE EDITIONS;
8 
Видимость унаследованных объектов 
Object_4 
Object_3 
Object_2 
Object_1 
Pre-upgrade 
edition
9 
Видимость унаследованных объектов 
Object_4 
Object_3 
Object_2 
Object_1 
Object_2 
Object_1 
Pre-upgrade 
edition 
Post-upgrade 
edition 
Наследуется от 
(inherited) 
(inherited) 
(inherited) 
(inherited) 
Object_4 
Object_3
Видимость унаследованных объектов 
10 
Object_4 
Object_3 
Object_2 
Object_1 
Object_4* 
Object_3* 
Object_2 
Object_1 
Pre-upgrade 
edition 
Post-upgrade 
edition 
(actual) 
(actual) 
(inherited) 
(inherited) 
Наследуется от
Видимость унаследованных объектов 
11 
Object_4 
Object_3 
Object_2 
Object_1 
(Object_4) 
Object_3 
Object_2 
Object_1 
Pre-upgrade 
edition 
Post-upgrade 
edition 
(dropped) 
(actual) 
(inherited) 
(inherited) 
Наследуется от
12 
Версионирующие представления 
Editioning Views 
• Таблицы и индексы – это неверсионируемые 
объекты (noneditionable objects) 
– Таблицы и индексы содержат огромный объем данных, 
хранение их копий для разных версий потребовало бы 
много дисковой памяти 
• Версионирующие представления (editioning views): 
– Новый класс представлений, появившийся в Oracle11g R2 
– Логически представляют собой копии таблицы в разных 
версиях - это логические проекции неверсионируемых 
физических таблиц 
CREATE EDITIONING VIEW accounts AS 
SELECT Id,Name,Amount FROM accounts_table;
13 
Кросс-версионные триггеры 
Crossedition triggers 
• В Oracle11g R2 введен новый специализированный вид 
триггеров – crossedition triggers 
• Создаются в «новой» версии (post-upgrade edition) 
• Два типа кросс-версионных триггеров: 
– Прогрессивные (forward) 
• Срабатывают для команд DML, вызванных сессиями «старой» 
версии 
• Обновляют данные в «новых» столбцах таблицы на основе 
изменений данных в «старых» её столбцах 
– Регрессивные (reverse) (Не обязательны, нужны для 
“отката” в online) 
• Срабатывают для команд DML, вызванных сессиями «новой» 
версии 
• Обновляют данные в «старых» столбцах таблицы на основе 
изменений данных в «новых» её столбцах
14 
Edition-based Redefinition 
"Edition-based Redefinition is the killer 
feature of Oracle Database 11g 
Release 2. 
It is worth 2 features". 
Tom Kyte (24-feb-2010, Moscow, Russia)
<Insert Picture Here> 
Игорь Мельников 
Ведущий консультант Oracle СНГ 
Email : Igor.Melnikov@oracle.com 
Phone : +7 (495) 641 14 00 
Direct: +7 (495) 641 14 42 
Mobile: +7 (915) 205 26 27

More Related Content

What's hot

DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
GeeksLab Odessa
 
Apache Kafka at Sberbank Rus
Apache Kafka at Sberbank RusApache Kafka at Sberbank Rus
Apache Kafka at Sberbank Rus
confluent
 
Все самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минутВсе самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минут
SkillFactory
 
Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...
Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...
Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...Andrey Akulov
 
Database as a Service
Database as a ServiceDatabase as a Service
Database as a ServiceAndrey Akulov
 
Обзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов OracleОбзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов Oracle
BAKOTECH
 
[Mirantis Day 2015] Проект Sahara - BigData на OpenStack
[Mirantis Day 2015] Проект Sahara - BigData на OpenStack[Mirantis Day 2015] Проект Sahara - BigData на OpenStack
[Mirantis Day 2015] Проект Sahara - BigData на OpenStack
Sergey Lukjanov
 
Migration of Cloud Services to Microsoft Azure Service Fabric
Migration of Cloud Services to Microsoft Azure Service FabricMigration of Cloud Services to Microsoft Azure Service Fabric
Migration of Cloud Services to Microsoft Azure Service Fabric
GlobalLogic Ukraine
 
Oracle Database 12c: Новые возможности Oracle 12c
Oracle Database 12c: Новые возможности Oracle 12cOracle Database 12c: Новые возможности Oracle 12c
Oracle Database 12c: Новые возможности Oracle 12cAndrey Akulov
 
Онлайн миграция контейнеров. Взгляд изнутри
Онлайн миграция контейнеров. Взгляд изнутриОнлайн миграция контейнеров. Взгляд изнутри
Онлайн миграция контейнеров. Взгляд изнутри
Jelastic Multi-Cloud PaaS
 

What's hot (11)

Oracle
OracleOracle
Oracle
 
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
 
Apache Kafka at Sberbank Rus
Apache Kafka at Sberbank RusApache Kafka at Sberbank Rus
Apache Kafka at Sberbank Rus
 
Все самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минутВсе самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минут
 
Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...
Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...
Повышение эффективности Java приложений (новые возможности Web Logic 12c, кон...
 
Database as a Service
Database as a ServiceDatabase as a Service
Database as a Service
 
Обзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов OracleОбзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов Oracle
 
[Mirantis Day 2015] Проект Sahara - BigData на OpenStack
[Mirantis Day 2015] Проект Sahara - BigData на OpenStack[Mirantis Day 2015] Проект Sahara - BigData на OpenStack
[Mirantis Day 2015] Проект Sahara - BigData на OpenStack
 
Migration of Cloud Services to Microsoft Azure Service Fabric
Migration of Cloud Services to Microsoft Azure Service FabricMigration of Cloud Services to Microsoft Azure Service Fabric
Migration of Cloud Services to Microsoft Azure Service Fabric
 
Oracle Database 12c: Новые возможности Oracle 12c
Oracle Database 12c: Новые возможности Oracle 12cOracle Database 12c: Новые возможности Oracle 12c
Oracle Database 12c: Новые возможности Oracle 12c
 
Онлайн миграция контейнеров. Взгляд изнутри
Онлайн миграция контейнеров. Взгляд изнутриОнлайн миграция контейнеров. Взгляд изнутри
Онлайн миграция контейнеров. Взгляд изнутри
 

Similar to Edition Based Redefinition . Обновление приложений на “лету”

Поддержка идентичности структуры БД при командной разработке.
Поддержка идентичности структуры БД при командной разработке.Поддержка идентичности структуры БД при командной разработке.
Поддержка идентичности структуры БД при командной разработке.REES46
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
Pavel Tsukanov
 
Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...
Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...
Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...
SkillFactory
 
аис8сем
аис8семаис8сем
аис8семНГТУ
 
Введение в Oracle
Введение в OracleВведение в Oracle
Введение в Oracle
Alexander Rusetsky
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийMedia Gorod
 
OCS. СУБД Oracle 12c. Возможности кластеризации
OCS. СУБД Oracle 12c. Возможности кластеризацииOCS. СУБД Oracle 12c. Возможности кластеризации
OCS. СУБД Oracle 12c. Возможности кластеризации
Алексей Богданов
 
Toad for Oracle для разработчиков – обзор, советы и скрытые возможности
Toad for Oracle для разработчиков – обзор, советы и скрытые возможностиToad for Oracle для разработчиков – обзор, советы и скрытые возможности
Toad for Oracle для разработчиков – обзор, советы и скрытые возможности
BAKOTECH
 
"Новые возможности MySQL 5.7"
"Новые возможности MySQL 5.7""Новые возможности MySQL 5.7"
"Новые возможности MySQL 5.7"
Badoo Development
 
Embarcadero All-Access
Embarcadero All-AccessEmbarcadero All-Access
Embarcadero All-AccessSerghei Urban
 
Fors и big data appliance
Fors и big data applianceFors и big data appliance
Fors и big data appliance
CleverDATA
 
Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...
Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...
Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...
Mail.ru Group
 
Модели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITION
Модели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITIONМодели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITION
Модели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITION
UP2IT
 
Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++
Denis Vasilyev
 
«Oracle Application Quality Management: Средства тестирования и управления те...
«Oracle Application Quality Management: Средства тестирования и управления те...«Oracle Application Quality Management: Средства тестирования и управления те...
«Oracle Application Quality Management: Средства тестирования и управления те...Andrey Akulov
 
#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"
#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"
#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"
epamspb
 
MS Swit 2012 - SQL Server 2012
MS Swit 2012 - SQL Server 2012MS Swit 2012 - SQL Server 2012
MS Swit 2012 - SQL Server 2012
Денис Резник
 
Presentation1
Presentation1Presentation1
Presentation1
Kostya Privalov
 
Performance Monitor для Oracle
Performance Monitor для OraclePerformance Monitor для Oracle
Performance Monitor для Oracle
DBPLUS
 
Модуль 14. Лекция 55-56. Управление релизами и развертыванием продукта
Модуль 14. Лекция 55-56. Управление релизами и развертыванием продуктаМодуль 14. Лекция 55-56. Управление релизами и развертыванием продукта
Модуль 14. Лекция 55-56. Управление релизами и развертыванием продукта
Yana Brodetski
 

Similar to Edition Based Redefinition . Обновление приложений на “лету” (20)

Поддержка идентичности структуры БД при командной разработке.
Поддержка идентичности структуры БД при командной разработке.Поддержка идентичности структуры БД при командной разработке.
Поддержка идентичности структуры БД при командной разработке.
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
 
Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...
Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...
Разработка корпоративных систем на базе Oracle: Как стать профессионалом в Or...
 
аис8сем
аис8семаис8сем
аис8сем
 
Введение в Oracle
Введение в OracleВведение в Oracle
Введение в Oracle
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложений
 
OCS. СУБД Oracle 12c. Возможности кластеризации
OCS. СУБД Oracle 12c. Возможности кластеризацииOCS. СУБД Oracle 12c. Возможности кластеризации
OCS. СУБД Oracle 12c. Возможности кластеризации
 
Toad for Oracle для разработчиков – обзор, советы и скрытые возможности
Toad for Oracle для разработчиков – обзор, советы и скрытые возможностиToad for Oracle для разработчиков – обзор, советы и скрытые возможности
Toad for Oracle для разработчиков – обзор, советы и скрытые возможности
 
"Новые возможности MySQL 5.7"
"Новые возможности MySQL 5.7""Новые возможности MySQL 5.7"
"Новые возможности MySQL 5.7"
 
Embarcadero All-Access
Embarcadero All-AccessEmbarcadero All-Access
Embarcadero All-Access
 
Fors и big data appliance
Fors и big data applianceFors и big data appliance
Fors и big data appliance
 
Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...
Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...
Борис Верюгин, Диасофт Платформа. «Автоматизированные механизмы миграции прил...
 
Модели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITION
Модели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITIONМодели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITION
Модели OPEN SOURCE компаний и можно ли выжить без OPEN CORE и ENTERPRISE EDITION
 
Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++
 
«Oracle Application Quality Management: Средства тестирования и управления те...
«Oracle Application Quality Management: Средства тестирования и управления те...«Oracle Application Quality Management: Средства тестирования и управления те...
«Oracle Application Quality Management: Средства тестирования и управления те...
 
#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"
#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"
#ITsubbotnik Spring 2017: Sergey Chernolyas "JPA for NoSQL"
 
MS Swit 2012 - SQL Server 2012
MS Swit 2012 - SQL Server 2012MS Swit 2012 - SQL Server 2012
MS Swit 2012 - SQL Server 2012
 
Presentation1
Presentation1Presentation1
Presentation1
 
Performance Monitor для Oracle
Performance Monitor для OraclePerformance Monitor для Oracle
Performance Monitor для Oracle
 
Модуль 14. Лекция 55-56. Управление релизами и развертыванием продукта
Модуль 14. Лекция 55-56. Управление релизами и развертыванием продуктаМодуль 14. Лекция 55-56. Управление релизами и развертыванием продукта
Модуль 14. Лекция 55-56. Управление релизами и развертыванием продукта
 

More from Andrey Akulov

Highly Automated IT
Highly Automated ITHighly Automated IT
Highly Automated IT
Andrey Akulov
 
Oracle OpenWorld 2016. Big Data references
Oracle OpenWorld 2016. Big Data referencesOracle OpenWorld 2016. Big Data references
Oracle OpenWorld 2016. Big Data references
Andrey Akulov
 
Oracle Big Data proposition
Oracle Big Data propositionOracle Big Data proposition
Oracle Big Data proposition
Andrey Akulov
 
Oracle Cloud Computing portfolio and strategy
Oracle Cloud Computing portfolio and strategyOracle Cloud Computing portfolio and strategy
Oracle Cloud Computing portfolio and strategy
Andrey Akulov
 
Oracle Big Data. Обзор технологий
Oracle Big Data. Обзор технологийOracle Big Data. Обзор технологий
Oracle Big Data. Обзор технологий
Andrey Akulov
 
Oracle IaaS including OCM and Ravello
Oracle IaaS including OCM and RavelloOracle IaaS including OCM and Ravello
Oracle IaaS including OCM and Ravello
Andrey Akulov
 
Oracle Ravello
Oracle Ravello Oracle Ravello
Oracle Ravello
Andrey Akulov
 
Oracle Enterprise Metadata Management
Oracle Enterprise Metadata ManagementOracle Enterprise Metadata Management
Oracle Enterprise Metadata Management
Andrey Akulov
 
Преимущества построения оперативной отчетности с помощью технологий Oracle
Преимущества построения оперативной отчетности с помощью технологий OracleПреимущества построения оперативной отчетности с помощью технологий Oracle
Преимущества построения оперативной отчетности с помощью технологий OracleAndrey Akulov
 
Управление административными учетными записями как средство защиты от челове...
Управление административными учетными записями как  средство защиты от челове...Управление административными учетными записями как  средство защиты от челове...
Управление административными учетными записями как средство защиты от челове...Andrey Akulov
 
Cоблюдение требований законодательства с помощью сертифицированных средств бе...
Cоблюдение требований законодательства с помощью сертифицированных средств бе...Cоблюдение требований законодательства с помощью сертифицированных средств бе...
Cоблюдение требований законодательства с помощью сертифицированных средств бе...Andrey Akulov
 
Защита информации на уровне СУБД
Защита информации на уровне СУБДЗащита информации на уровне СУБД
Защита информации на уровне СУБДAndrey Akulov
 
Новые возможности по разработке приложений (ADF, SOA, BPM)
Новые возможности по разработке приложений (ADF, SOA, BPM)Новые возможности по разработке приложений (ADF, SOA, BPM)
Новые возможности по разработке приложений (ADF, SOA, BPM)Andrey Akulov
 
Новые возможности распределенной обработки данных в памяти (Coherence)
Новые возможности распределенной обработки данных в памяти (Coherence)Новые возможности распределенной обработки данных в памяти (Coherence)
Новые возможности распределенной обработки данных в памяти (Coherence)Andrey Akulov
 
Новый подход к резервному копированию БД - Zero Data Loss Recovery Appliance
Новый подход к резервному копированию БД - Zero Data Loss Recovery ApplianceНовый подход к резервному копированию БД - Zero Data Loss Recovery Appliance
Новый подход к резервному копированию БД - Zero Data Loss Recovery ApplianceAndrey Akulov
 
Oracle database In-Memory - новая технология обработки в памяти
Oracle database In-Memory - новая технология обработки в памятиOracle database In-Memory - новая технология обработки в памяти
Oracle database In-Memory - новая технология обработки в памятиAndrey Akulov
 
Обзор интегрированных систем Oracle
Обзор интегрированных систем OracleОбзор интегрированных систем Oracle
Обзор интегрированных систем OracleAndrey Akulov
 
Exalogic Technical Overview
Exalogic Technical OverviewExalogic Technical Overview
Exalogic Technical Overview
Andrey Akulov
 
Oracle Database 12c. Консолидация и Мультиарендность
Oracle Database 12c. Консолидация и МультиарендностьOracle Database 12c. Консолидация и Мультиарендность
Oracle Database 12c. Консолидация и МультиарендностьAndrey Akulov
 
Oracle Database In-Memory
Oracle Database In-MemoryOracle Database In-Memory
Oracle Database In-Memory
Andrey Akulov
 

More from Andrey Akulov (20)

Highly Automated IT
Highly Automated ITHighly Automated IT
Highly Automated IT
 
Oracle OpenWorld 2016. Big Data references
Oracle OpenWorld 2016. Big Data referencesOracle OpenWorld 2016. Big Data references
Oracle OpenWorld 2016. Big Data references
 
Oracle Big Data proposition
Oracle Big Data propositionOracle Big Data proposition
Oracle Big Data proposition
 
Oracle Cloud Computing portfolio and strategy
Oracle Cloud Computing portfolio and strategyOracle Cloud Computing portfolio and strategy
Oracle Cloud Computing portfolio and strategy
 
Oracle Big Data. Обзор технологий
Oracle Big Data. Обзор технологийOracle Big Data. Обзор технологий
Oracle Big Data. Обзор технологий
 
Oracle IaaS including OCM and Ravello
Oracle IaaS including OCM and RavelloOracle IaaS including OCM and Ravello
Oracle IaaS including OCM and Ravello
 
Oracle Ravello
Oracle Ravello Oracle Ravello
Oracle Ravello
 
Oracle Enterprise Metadata Management
Oracle Enterprise Metadata ManagementOracle Enterprise Metadata Management
Oracle Enterprise Metadata Management
 
Преимущества построения оперативной отчетности с помощью технологий Oracle
Преимущества построения оперативной отчетности с помощью технологий OracleПреимущества построения оперативной отчетности с помощью технологий Oracle
Преимущества построения оперативной отчетности с помощью технологий Oracle
 
Управление административными учетными записями как средство защиты от челове...
Управление административными учетными записями как  средство защиты от челове...Управление административными учетными записями как  средство защиты от челове...
Управление административными учетными записями как средство защиты от челове...
 
Cоблюдение требований законодательства с помощью сертифицированных средств бе...
Cоблюдение требований законодательства с помощью сертифицированных средств бе...Cоблюдение требований законодательства с помощью сертифицированных средств бе...
Cоблюдение требований законодательства с помощью сертифицированных средств бе...
 
Защита информации на уровне СУБД
Защита информации на уровне СУБДЗащита информации на уровне СУБД
Защита информации на уровне СУБД
 
Новые возможности по разработке приложений (ADF, SOA, BPM)
Новые возможности по разработке приложений (ADF, SOA, BPM)Новые возможности по разработке приложений (ADF, SOA, BPM)
Новые возможности по разработке приложений (ADF, SOA, BPM)
 
Новые возможности распределенной обработки данных в памяти (Coherence)
Новые возможности распределенной обработки данных в памяти (Coherence)Новые возможности распределенной обработки данных в памяти (Coherence)
Новые возможности распределенной обработки данных в памяти (Coherence)
 
Новый подход к резервному копированию БД - Zero Data Loss Recovery Appliance
Новый подход к резервному копированию БД - Zero Data Loss Recovery ApplianceНовый подход к резервному копированию БД - Zero Data Loss Recovery Appliance
Новый подход к резервному копированию БД - Zero Data Loss Recovery Appliance
 
Oracle database In-Memory - новая технология обработки в памяти
Oracle database In-Memory - новая технология обработки в памятиOracle database In-Memory - новая технология обработки в памяти
Oracle database In-Memory - новая технология обработки в памяти
 
Обзор интегрированных систем Oracle
Обзор интегрированных систем OracleОбзор интегрированных систем Oracle
Обзор интегрированных систем Oracle
 
Exalogic Technical Overview
Exalogic Technical OverviewExalogic Technical Overview
Exalogic Technical Overview
 
Oracle Database 12c. Консолидация и Мультиарендность
Oracle Database 12c. Консолидация и МультиарендностьOracle Database 12c. Консолидация и Мультиарендность
Oracle Database 12c. Консолидация и Мультиарендность
 
Oracle Database In-Memory
Oracle Database In-MemoryOracle Database In-Memory
Oracle Database In-Memory
 

Edition Based Redefinition . Обновление приложений на “лету”

  • 1. <Insert Picture Here> Edition Based Redefinition Обновление приложений на “лету” Игорь Мельников Oracle СНГ
  • 2. 2 Высокая доступность • Внеплановый простой • Системный сбой • Real Application Clusters • Потеря данных • Сбой носителя • ASM, Physical Standby • Ошибки человека • Технологии Flashback • Logical Standby • Повреждение данных • Data Recovery Advisor • RMAN • Oracle Secure Backup • Катастрофа • Data Guard • Плановый простой • Изменение PL/SQL- объектов БД приложения • Online Application Upgrade • Сопровождение данных • Online Redefinition
  • 3. 3 Oracle Database 11g Release 2 Online Application Upgrade • Часто бизнес-критичные приложения бывают много часов недоступны из-за “наката” обновлений (патчей) или установки новой версии приложения • Oracle Database 11g Release 2 предлагает революционную технологию которая дает возможность обновлять приложения на “лету” – без остановки ! • Одновременно могут быть использованы как старая, так и новая версия приложения !
  • 4. 4 Решение проблемы установки патчей Edition-based redefinition • Новые типы объектов в СУБД: – edition – editioning view – crossedition trigger • PL/SQL-код устанавливается в новую версию (edition) • Новые столбцы таблиц и изменения данных в них, не видимы в старой версии – Editioning view делают разную проекцию таблиц, структура которых менялась в каждую версию (новые столбцы невидимы в старой версии) – Crossedition триггер, невидимо для старой версии, осуществляет конвертацию данных сделанных в старой версии в новую (и наоборот – в случае “отката” патча) структуру
  • 5. 5 Версия (редакция) объекта Editions • Edition – новое понятие в 11.2 • Версия наследуется от родительской – Наследует все объекты от родительской (кроме таблиц и индексов) – Каждая версия может иметь собственную реализацию одного и того же PL/SQL-объекта – Версия может иметь только одного потомка • БД должна иметь как минимум одну версию (ORA$BASE – существует по умолчанию) • Сессия всегда выполняется в определенной версии (по умолчанию в ORA$BASE)
  • 6. 6 Версионируемые объекты Editioned Objects • Не все объекты версионируемы (editioned) • Чтобы объект был версионируемым должно быть соблюдено два условия: 1. Объект должен быть объектом версионируемого (editionable) типа: • Function, Procedure, • Package (specification and body) • Type (specification and body) • Trigger • Library • Synonym • View 2. Объект должен принадлежать версионно- полномочному пользователю (has an editions-enabled owner)
  • 7. 7 Версия (редакция) объекта Создание редакции CREATE EDITION version_2 AS CHILD OF ora$base; GRANT USE ON version_2 TO ibs; ALTER USER ibs ENABLE EDITIONS;
  • 8. 8 Видимость унаследованных объектов Object_4 Object_3 Object_2 Object_1 Pre-upgrade edition
  • 9. 9 Видимость унаследованных объектов Object_4 Object_3 Object_2 Object_1 Object_2 Object_1 Pre-upgrade edition Post-upgrade edition Наследуется от (inherited) (inherited) (inherited) (inherited) Object_4 Object_3
  • 10. Видимость унаследованных объектов 10 Object_4 Object_3 Object_2 Object_1 Object_4* Object_3* Object_2 Object_1 Pre-upgrade edition Post-upgrade edition (actual) (actual) (inherited) (inherited) Наследуется от
  • 11. Видимость унаследованных объектов 11 Object_4 Object_3 Object_2 Object_1 (Object_4) Object_3 Object_2 Object_1 Pre-upgrade edition Post-upgrade edition (dropped) (actual) (inherited) (inherited) Наследуется от
  • 12. 12 Версионирующие представления Editioning Views • Таблицы и индексы – это неверсионируемые объекты (noneditionable objects) – Таблицы и индексы содержат огромный объем данных, хранение их копий для разных версий потребовало бы много дисковой памяти • Версионирующие представления (editioning views): – Новый класс представлений, появившийся в Oracle11g R2 – Логически представляют собой копии таблицы в разных версиях - это логические проекции неверсионируемых физических таблиц CREATE EDITIONING VIEW accounts AS SELECT Id,Name,Amount FROM accounts_table;
  • 13. 13 Кросс-версионные триггеры Crossedition triggers • В Oracle11g R2 введен новый специализированный вид триггеров – crossedition triggers • Создаются в «новой» версии (post-upgrade edition) • Два типа кросс-версионных триггеров: – Прогрессивные (forward) • Срабатывают для команд DML, вызванных сессиями «старой» версии • Обновляют данные в «новых» столбцах таблицы на основе изменений данных в «старых» её столбцах – Регрессивные (reverse) (Не обязательны, нужны для “отката” в online) • Срабатывают для команд DML, вызванных сессиями «новой» версии • Обновляют данные в «старых» столбцах таблицы на основе изменений данных в «новых» её столбцах
  • 14. 14 Edition-based Redefinition "Edition-based Redefinition is the killer feature of Oracle Database 11g Release 2. It is worth 2 features". Tom Kyte (24-feb-2010, Moscow, Russia)
  • 15. <Insert Picture Here> Игорь Мельников Ведущий консультант Oracle СНГ Email : Igor.Melnikov@oracle.com Phone : +7 (495) 641 14 00 Direct: +7 (495) 641 14 42 Mobile: +7 (915) 205 26 27