<Insert Picture Here> Облачный DBaaS проект по быстрому клонированию баз Забелин Андрей Oracle СНГ andrey.zabelin@oracle.com Постановка задачи от Заказчика: Запрос на создание копии БД Администратор БД Разработчик1 Промышленная БД Постановка задачи от Заказчика: Администратор БД выполняет клонирование Администратор БД Разработчик1 Промышленная БД Копия1 Постановка задачи от Заказчика: Новый запрос на создание копии БД Администратор БД Разработчик1 Промышленная БД Копия1 Разработчик2 Постановка задачи от Заказчика: И снова запрос на создание копии БД Администратор БД Разработчик1 Промышленная БД Копия1 Разработчик2 Копия2 ... РазработчикN Постановка задачи от Заказчика: Запрос на более свежую копию БД Администратор БД Разработчик1 Промышленная БД Копия1 Разработчик2 Копия2 ... РазработчикN КопияN Постановка задачи от Заказчика: Требуется автоматизировать процесс + уменьшить емкость дисковой памяти для хранения баз Разработчик1 Промышленная БД Копия1 Разработчик2 Автоматизированная система Копия2 ... РазработчикN КопияN Модели предоставления БД как сервис Hypervisor Пул серверов, каждая БД на выделенной виртуальной машине OS OS Пул серверов, несколько БД на одном хосте DB OS DB OS DB OS DB DBaaS DB IaaS DB Database Cloud DB Infrastructure Cloud OS OS Одна БД, несколько схем шаблоны сервисов DBaaS • Хранит набор процедур развертывания в виде шаблонов сервисов • Разные варианты для разных версий СУБД, конфигураций и т.д. Data Cloning Clone DB 1 Клонирование с помощью: Технологии редактируемых моментальных снимков на уровне дисковой подсистемы (Pilar Axiom, ZFS Appliance и т.п.) Clone DB 2 RMAN (duplicate database) Production DB Expdp/Impdp Master Copy: Копия продуктивной БД Clone DB n Transportable Tablespaces Клонирование БД на Pillar Axiom 600 3 www.oracle.com/technetwork/server-storage/san-storage/documentation/o12-057-cloning-rman-1721637.pdf Портал самообслуживания Интерфейс формирования заявки на создание базы Список всех баз Список всех заявок и их статус Квоты и их использование Извещение об истечении срока жизни баз Мониторинг работы БД в облаке Cloud RESTful APIs пример получения строки соединения с БД в облаке: HTTP Request: GET /em/cloud/vdc/default/D7EEE339C1249F83FC4587C722EB20B5 Host:cloud.ru.oracle.com Authorization: Basic xxxxxxxxxx Accept: application/oracle.com.cloud.common.VDC+json Response: { "uri" : "/em/cloud/vdc/default/D7EEE339C1249F83FC4587C722EB20B5", "name" : "Oracle Enterprise Manager Virtual Data Center on Zone ZONE_1", "dbplatform_instances" : { "uri":"/em/cloud/vdc/default/D7EEE339C1249F83FC4587C722EB20B5/dbplatform_instances", "name" : "DbPlatform Instances in ZONE_1“, "total" : "1", "elements" : [ "uri" : "/em/cloud/dbplatforminstance/52A5283827BEDAC79AFEE2A0BFFF531A", "name" : "Dbf54e97.db.ora.ru", "based_on": "/em/cloud/dbplatformtemplate/B59EDC65951039E8E040E50A8F5B0435", "destination_zone" : "/em/cloud/dbzone/D7EEE339C1249F83FC4587C722EB20B5", (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP) (HOST=db.ora.ru) (PORT=1521))) (CONNECT_DATA=(SID=DBf54e97)))", "connect_string" :" "status" : "RUNNING“, "created" : "2012-01-04 01:35:12" "resource_state" : { "state" : "READY" } ] } 17