ukoug, instant cloning: boosting application development

145
Instant Cloning: Boosting Application Development Kyle Hailey [email protected] http://kylehailey.com

Upload: kyle-hailey

Post on 27-Jan-2015

112 views

Category:

Technology


5 download

DESCRIPTION

 

TRANSCRIPT

Page 1: UKOUG,  Instant Cloning: Boosting Application Development

Instant Cloning: Boosting Application Development

Kyle [email protected]

http://kylehailey.com

Page 2: UKOUG,  Instant Cloning: Boosting Application Development

60% Projects Over Schedule

85% delayed waiting for data

CIO Magazine Survey:

Data is the problem

Get the right dataTo the right peopleAt the right time

Problem in IT

Page 3: UKOUG,  Instant Cloning: Boosting Application Development

The Phoenix Project

One of the most powerful things that IT can do is get environments to development and QA when they need it

• IT bottlenecks• Setting Priorities• Company Goals• Defining Metrics• Fast Iterations

IT version of

“The Goal”

by E. Goldratt

Page 4: UKOUG,  Instant Cloning: Boosting Application Development

Production

Development

Business Intelligence

BackupData Guard

QA

UAT

Tape

Sandbox

Forensics

Analytics

Reporting

Data Flood

Page 5: UKOUG,  Instant Cloning: Boosting Application Development

Part II : Solutions: Thin cloning to Databases Virtualization

Part I : Problem: Copying Databases

Part III : Project Acceleration with Virtualization

Page 6: UKOUG,  Instant Cloning: Boosting Application Development

Database Cloning Challenge

If you can’t satisfy the business demands then your process is broken.

Page 7: UKOUG,  Instant Cloning: Boosting Application Development

Problem

Developers

QA and UAT

Reports

First copy

Production

• CERN -  European Organization for Nuclear Research

• 145 TB database• 75 TB growth each year• Dozens of developers want copies.

Page 8: UKOUG,  Instant Cloning: Boosting Application Development

Tradeoff: Speed, Quality, Cost

Page 9: UKOUG,  Instant Cloning: Boosting Application Development

What We’ve Seen

1. Inefficient QA: Higher costs of QA2. QA Delays : Greater re-work of code3. Sharing DB Environments : Bottlenecks4. Using DB Subsets: More bugs in Prod5. Slow Environment Builds: Delays

“if you can't measure it you can’t manage it”

Page 10: UKOUG,  Instant Cloning: Boosting Application Development

1. Inefficient QA: Long Build times

Build Time

QA Test

96% of QA time was building environment$.04/$1.00 actual testing vs. setup

Build

Page 11: UKOUG,  Instant Cloning: Boosting Application Development

2. QA Delays: bugs found late require more code re-work

Build QA Env QA Build QA Env QA

Sprint 1 Sprint 2 Sprint 3

Bug CodeX

1 2 3 4 5 6 70

10203040506070

Delay in Fixing the bug

Cost ToCorrect

Software Engineering Economics – Barry Boehm (1981)

Page 12: UKOUG,  Instant Cloning: Boosting Application Development

3. Full Copy Shared : Bottlenecks

Frustration Waiting

Old Unrepresentative Data

Page 13: UKOUG,  Instant Cloning: Boosting Application Development

http://martinfowler.com/bliki/NoDBA.html

Page 14: UKOUG,  Instant Cloning: Boosting Application Development

4. Subsets : cause bugs

Page 15: UKOUG,  Instant Cloning: Boosting Application Development

Production4. Subsets : cause bugs

Classic problem is that queries that run fast on subsets hit the wall in production.

Developers are unable to test against all data

The Production ‘Wall’

Page 16: UKOUG,  Instant Cloning: Boosting Application Development

5. Slow Environment Builds: 3-6 Months to Deliver Data

Management

DBA

System Admin

Storage Admin

Developers Submit Request

Disk Capacity?

Approve Request $$ (2 Weeks)

Approve Request $$

(1 Week)

RequestAdditional Storage?

ProvisionCapacity

File SystemConfigured?

Configure LUNS & Build File System

Coordinate Replication w/ Infrastructure

Re-Parameterize & Configure DB

Mount Recovery DB to

Specific PIT

Begin Work

Approve Request $$ (2 Weeks)

(3 Days)

(3 Days)

(2 Days)

(3 Days)

(3 Days)

…….1-2 Weeks of Approvals, Delays, and Provisioning……

16

Page 17: UKOUG,  Instant Cloning: Boosting Application Development

5. Slow Environment Builds: culture of no

DBA Developer

Page 18: UKOUG,  Instant Cloning: Boosting Application Development

Never enough environments

Page 19: UKOUG,  Instant Cloning: Boosting Application Development

bottlenecks

Page 20: UKOUG,  Instant Cloning: Boosting Application Development

What We’ve Seen

1. Inefficient QA: Higher costs2. QA Delays : Increased re-work3. Sharing DB : Bottlenecks4. Subset DB : Bugs5. Slow Environment Builds: Delays

Page 21: UKOUG,  Instant Cloning: Boosting Application Development

Clone 1 Clone 3Clone 2

99% of blocks are identical

Page 22: UKOUG,  Instant Cloning: Boosting Application Development
Page 23: UKOUG,  Instant Cloning: Boosting Application Development

Clone 1 Clone 2 Clone 3

Thin Clone

Page 24: UKOUG,  Instant Cloning: Boosting Application Development

I. EMC II. Netapp III. ZFS

2. Thin Cloning

Database Luns

Production FilerTarget A

Target B

Target C

snapshotclones

1. Put database in hot backup 2. Take Snapshot (limits EMC 16, Netapp ,VNX 255, ZFS unlimted)3. Take database out of hot backup4. Clone Snapshot (Netapp , ZFS, EMC VNX)5. Export Clone, Mount on target host

InstanceInstance

InstanceInstance

InstanceInstance

InstanceInstance

Instance

Source

Page 25: UKOUG,  Instant Cloning: Boosting Application Development

Database LUNs

snapshotclonesProduction Filer

Development Filer

Problem: How do you get data off Production?

Instance

Target A

Target B

Target C

InstanceInstance

InstanceInstance

InstanceInstance

Instance

Page 26: UKOUG,  Instant Cloning: Boosting Application Development

Three Core Parts

Production

File System

Instance

DevelopmentStorage

21 3

Copy & sync

Snapshot & Clone

Mount, recover, rename

Instance

Netapp EM snap clone

Page 27: UKOUG,  Instant Cloning: Boosting Application Development

Three Core Parts

Production

File System

Instance

DevelopmentStorage

1

Copy & sync

Instance

Page 28: UKOUG,  Instant Cloning: Boosting Application Development

Snap Manager

SnapManagerRepository

Protection Manager

Snap Drive

Snap Manager

Snap Mirror

Flex Clone

RMANRepository

Production

Development

DBA

Storage Admin

1 tr-3761.pdf

Netapp

Page 29: UKOUG,  Instant Cloning: Boosting Application Development

NetApp Filer - DevelopmentNetApp Filer - Production

Database Luns

Snap mirror

Snapshot Manager for Oracle

Flexclone

Repository Database

SnapDrive

Protection Manage

Production

Development

1NetappTarget A

Target B

Target C

InstanceInstance

InstanceInstance

InstanceInstance

Instance

Page 30: UKOUG,  Instant Cloning: Boosting Application Development

Three Core Parts

Production

File System

Instance

DevelopmentStorage

Instance

3

Mount, recover, rename

3

Page 31: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents instance

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage. • Register test master database• Enable Snap Clone for the test master database• Set up a zone – set max CPU and Memory and the roles that can see these zones• Set up a pool – a pool is a set of machines where databases can be provisioned• Set up a profile – a source database that can be used for thin cloning• Set up a service template – init.ora values

Test Master

Instance

Source

? instance

CloneLinux

ZFS orNetApp

PoolProfile

ZoneTemplate

Page 32: UKOUG,  Instant Cloning: Boosting Application Development

Production Development QA UAT

Instance Instance Instance InstanceInstance Instance Instance Instance

Database

File systemFile system

Database

File systemFile system

Database

File system

Database

File systemFile systemFile systemFile system

Where we are

Page 33: UKOUG,  Instant Cloning: Boosting Application Development

Where we want to be

Database

File system

Production

Instance

Database

Development

Instance

Database

QA

Instance

Database

UAT

Instance

Snapshots

Instance Instance Instance Instance

Page 34: UKOUG,  Instant Cloning: Boosting Application Development

EM 12c: Snap Clone

Production Development

Flexclone Flexclone

Netapp Snap Manager for Oracle

Page 35: UKOUG,  Instant Cloning: Boosting Application Development

Thin Cloning

Page 36: UKOUG,  Instant Cloning: Boosting Application Development
Page 37: UKOUG,  Instant Cloning: Boosting Application Development
Page 38: UKOUG,  Instant Cloning: Boosting Application Development

3. Database Virtualization

Page 39: UKOUG,  Instant Cloning: Boosting Application Development

Three Physical CopiesThree Virtual Copies

Data Virtualization Appliance

Page 40: UKOUG,  Instant Cloning: Boosting Application Development

Install Delphix on x86 hardware

Intel hardware

Page 41: UKOUG,  Instant Cloning: Boosting Application Development

Allocate Any Storage to Delphix

Allocate StorageAny type

Pure Storage + DelphixBetter Performance for 1/10 the cost

Page 42: UKOUG,  Instant Cloning: Boosting Application Development

One time backup of source database

Database

Production

File system

File systemUpcoming

Supports

InstanceInstanceInstance

Page 43: UKOUG,  Instant Cloning: Boosting Application Development

DxFS (Delphix) Compress Data

Database

Production

Data is compressed typically 1/3 size

File system

InstanceInstanceInstance

Page 44: UKOUG,  Instant Cloning: Boosting Application Development

Incremental forever change collection

Database

Production

File system

Changes

• Collected incrementally forever• Old data purged

File system Time Window

Production

InstanceInstanceInstance

Page 45: UKOUG,  Instant Cloning: Boosting Application Development

Source Full Copy Source backup from SCN 1

Page 46: UKOUG,  Instant Cloning: Boosting Application Development

Snapshot 1Snapshot 2

Page 47: UKOUG,  Instant Cloning: Boosting Application Development

Snapshot 1Snapshot 2

Backup from SCN

Page 48: UKOUG,  Instant Cloning: Boosting Application Development

Snapshot 1Snapshot 2

Snapshot 3

Page 49: UKOUG,  Instant Cloning: Boosting Application Development

DropSnapshot 1

Snapshot 2Snapshot 3

Page 50: UKOUG,  Instant Cloning: Boosting Application Development

Cloning

Database

Production

Instance

File systemFile system Time Window

Database

InstanceInstance

InstanceInstance

Page 51: UKOUG,  Instant Cloning: Boosting Application Development

Typical Architecture

Production Development QA UAT

Instance Instance Instance InstanceInstance Instance Instance Instance

Database

File systemFile system

Database

File systemFile system

Database

File system

Database

File systemFile systemFile systemFile system

Page 52: UKOUG,  Instant Cloning: Boosting Application Development

With Delphix

Database

Production

Instance

Database

Development

Instance

Database

QA

Instance

Database

UAT

InstanceInstance Instance Instance Instance

File system

Page 53: UKOUG,  Instant Cloning: Boosting Application Development
Page 54: UKOUG,  Instant Cloning: Boosting Application Development

Three Core Parts

Production

File System

Instance

DevelopmentStorage

21 3

Copy Sync SnapshotsTime FlowPurge

Clone (snapshot)CompressShare CacheStorage Agnostic

Mount, recover, renameSelf Service, Roles & Security Rollback & Refresh Branch & Tag

Instance

Page 55: UKOUG,  Instant Cloning: Boosting Application Development

Overview of Database Virtualization

1. Fast, Fresh, Full2. Free3. Branching4. Federated5. Self Serve

Page 56: UKOUG,  Instant Cloning: Boosting Application Development

Fast, Fresh, Full

Instance

Time Window

Instance

Development VDB

Source

Page 57: UKOUG,  Instant Cloning: Boosting Application Development

Free

gif by Steve Karam

Instance

Instance

Instance

Instance

Source

Page 58: UKOUG,  Instant Cloning: Boosting Application Development

Branching

Instance Instance

Instance

Source

Source Dev

QA branched from Dev

Page 59: UKOUG,  Instant Cloning: Boosting Application Development

Federated Cloning

Page 60: UKOUG,  Instant Cloning: Boosting Application Development
Page 61: UKOUG,  Instant Cloning: Boosting Application Development

Federated

Instance

Instance

Instance

Instance

Source1

Source2

Source1

Page 62: UKOUG,  Instant Cloning: Boosting Application Development

“I looked like a hero”Tony Young, CIO Informatica

Page 63: UKOUG,  Instant Cloning: Boosting Application Development

Self Service

Page 64: UKOUG,  Instant Cloning: Boosting Application Development

Use Cases

1. Development Acceleration

2. Quality

3. BI

Page 65: UKOUG,  Instant Cloning: Boosting Application Development

DevOps

Page 66: UKOUG,  Instant Cloning: Boosting Application Development

DevOps With Delphix

1. Efficient QA: Low cost, high utilization2. Quick QA : Fast Bug Fix3. Every Dev gets DB: Parallelized Dev4. Full DB : Less Bugs5. Fast Builds: Culture of Yes

Page 67: UKOUG,  Instant Cloning: Boosting Application Development

1. Efficient QA: Lower cost

Build Time

QA Test

1% of QA time was building environment$.99/$1.00 actual testing vs. setup

Build Time

QA Test

Build

Page 68: UKOUG,  Instant Cloning: Boosting Application Development

Rapid QA via Branching

Page 69: UKOUG,  Instant Cloning: Boosting Application Development

2. QA Immediate: bugs found fast and fixed

Sprint 1 Sprint 2 Sprint 3

Bug CodeX

QA QA

Build QA Env QA Build QA Env Q

A

Sprint 1 Sprint 2 Sprint 3

Bug CodeX

Page 70: UKOUG,  Instant Cloning: Boosting Application Development

3. Private Copies: Parallelize

gif by Steve Karam

Page 71: UKOUG,  Instant Cloning: Boosting Application Development

4. Full Size DB : Eliminate bugs

Production

Page 72: UKOUG,  Instant Cloning: Boosting Application Development

5. Self Service: Fast, Efficient. Culture of Yes!

Management

DBA

System Admin

Storage Admin

Developers Submit Request

Disk Capacity?

Approve Request $$ (2 Weeks)

Approve Request $$

(1 Week)

RequestAdditional Storage?

ProvisionCapacity

File SystemConfigured?

Configure LUNS & Build File System

Coordinate Replication w/ Infrastructure

Re-Parameterize & Configure DB

Mount Recovery DB to

Specific PIT

Begin Work

Approve Request $$ (2 Weeks)

(3 Days)

(3 Days)

(2 Days)

(3 Days)

(3 Days)

…….1-2 Weeks of Approvals, Delays, and Provisioning……

Page 73: UKOUG,  Instant Cloning: Boosting Application Development

Quality

1. Forensics2. Testing 3. Recovery

Page 74: UKOUG,  Instant Cloning: Boosting Application Development

1. Forensics: Investigate Production Bugs

Instance

Time Window

Instance

Development

Anomaly on ProdPossible code bugAt noon yesterday

Spin up VDB of Prod as it was during anomaly

Page 75: UKOUG,  Instant Cloning: Boosting Application Development

2. Testing : Rewind for patch and QA testing

Instance

Time Window

Instance

Development

Time Window

Prod

Page 76: UKOUG,  Instant Cloning: Boosting Application Development

2. Testing: A/B

Instance

Time Window

Instance

Instance

• Keep tests for compare• Production vs Virtual

– invisible index on Prod– Creating index on virtual

• Flashback vs Virtual

Test A with Index 1

Test B with Index 2

Page 77: UKOUG,  Instant Cloning: Boosting Application Development

3. Recovery: Surgical recover of Production

Instance Instance

Development

Time Window

Spin VDB up Before drop

Problem on ProdDropped Table Accidently

Source

Page 78: UKOUG,  Instant Cloning: Boosting Application Development

Time Window

3. Recovery Surgical or Full Recovery on VDB

Instance

Instance

Dev1 VDB

Time Window

Dev1 VDB

InstanceSource

Source

Dev2 VDB Branched

Page 79: UKOUG,  Instant Cloning: Boosting Application Development

3. Recovery: Virtual to Physical

Instance Instance

VDB

Source

Time Window

Spin VDB up Before drop

Corruption

Page 80: UKOUG,  Instant Cloning: Boosting Application Development

3. Recovery

Page 81: UKOUG,  Instant Cloning: Boosting Application Development

Business Intelligence

Page 82: UKOUG,  Instant Cloning: Boosting Application Development

ETL and Refresh Windows

1pm 10pm 8am noon

Page 83: UKOUG,  Instant Cloning: Boosting Application Development

ETL and DW refreshes taking longer

1pm 10pm 8am noon20112012201320142015

Page 84: UKOUG,  Instant Cloning: Boosting Application Development

ETL and Refresh Windows

20112012201320142015

1pm 10pm 8am noon

10pm 8am noon 9pm

6am 8am 10pm

Page 85: UKOUG,  Instant Cloning: Boosting Application Development

ETL and DW Refreshes

Instance

Prod

Instance

DW & BI

Data Guard – requires full refresh if usedActive Data Guard – read only, most reports don’t work

Page 86: UKOUG,  Instant Cloning: Boosting Application Development

Fast Refreshes

• Collect only Changes• Refresh in minutes

Instance Instance

DW

Prod

Instance

BI

ETL24x7

Page 87: UKOUG,  Instant Cloning: Boosting Application Development

Temporal Data

Page 88: UKOUG,  Instant Cloning: Boosting Application Development

BI

a) Fast refreshes

b) Temporal queries

c) Confidence testing

Page 89: UKOUG,  Instant Cloning: Boosting Application Development

Review: Use Cases

1. Development Accelerationa) Full, Fresh, Fast , Self Serveb) QA Branchingc) Federated

2. Qualitya) Forensicsb) Testing : A/B, upgrade, patchc) Recovery: logical, physical

3. BIa) Fast refreshb) Temporal Datac) Confidence testing

Page 90: UKOUG,  Instant Cloning: Boosting Application Development
Page 91: UKOUG,  Instant Cloning: Boosting Application Development

Oracle 12c

Page 92: UKOUG,  Instant Cloning: Boosting Application Development

80MB buffer cache ?

Page 93: UKOUG,  Instant Cloning: Boosting Application Development

200GBCache

Page 94: UKOUG,  Instant Cloning: Boosting Application Development

5000

Tnxs

/ m

inLa

tenc

y

300 ms

1 5 10 20 30 60 100 200

with

1 5 10 20 30 60 100 200Users

Page 95: UKOUG,  Instant Cloning: Boosting Application Development

8000

Tnxs

/ m

inLa

tenc

y

600 ms

1 5 10 20 30 60 100 200Users

1 5 10 20 30 60 100 200

Page 96: UKOUG,  Instant Cloning: Boosting Application Development

$1,000,000

$6,000

Page 97: UKOUG,  Instant Cloning: Boosting Application Development
Page 98: UKOUG,  Instant Cloning: Boosting Application Development
Page 99: UKOUG,  Instant Cloning: Boosting Application Development
Page 100: UKOUG,  Instant Cloning: Boosting Application Development

About Delphix• Founded in 2008, launched in 2010• CEO Jedidiah Yueh (founder of Avamar: >$1B revenue))• Based in Silicon Valley, Global Operations

Fortune #1 Walmart #1 social: Facebook #1 US Bank: Wells Fargo #1 Networking : Cisco#1 cable provider: Comcast #1 auction site: Ebay #1 insurance: New York Life #1 chip manufacture: Intel

Page 101: UKOUG,  Instant Cloning: Boosting Application Development

Devv2.6 v2.6v2.6

QA UAT

v2.6

v2.6 v2.6v2.6v2.7

v2.6 v2.6v2.6v2.8

v2.6v2.6 v2.6v2.6

v2.6v2.7 v2.6v2.7

v2.6v2.8 v2.6v2.8

Page 102: UKOUG,  Instant Cloning: Boosting Application Development

Devv2.6 v2.6v2.6

QA UAT

v2.6Production

v2.6 v2.6v2.6v2.7

v2.6 v2.6v2.6v2.8

Source Control for the database data

v2.6v2.6 v2.6v2.6

v2.6v2.7 v2.6v2.7

v2.6v2.8 v2.6v2.8

Page 103: UKOUG,  Instant Cloning: Boosting Application Development

DevProd

2.6

Page 104: UKOUG,  Instant Cloning: Boosting Application Development

Dev

QA

Prod

2.6

Page 105: UKOUG,  Instant Cloning: Boosting Application Development

Dev

QA

UAT

Prod

2.6

Page 106: UKOUG,  Instant Cloning: Boosting Application Development

Dev

QA

UAT

Prod

Dev

QA

UAT

2.6

2.7

Page 107: UKOUG,  Instant Cloning: Boosting Application Development

Dev

QA

UAT

Prod

Dev

QA

UAT

2.6

2.7

Dev

QA

UAT2.8

Page 108: UKOUG,  Instant Cloning: Boosting Application Development

Dev

QA

UAT

Prod

Dev

QA

UAT

2.6

2.7

Dev

QA

UAT2.8

Data Control = Source Control for the Database

Page 109: UKOUG,  Instant Cloning: Boosting Application Development

Dev

QA

UAT

Dev

QA

UAT

2.6

2.7

Dev

QA

UAT

2.8

Data Control = Source Control for the Database

Production Time Flow

Page 110: UKOUG,  Instant Cloning: Boosting Application Development

Database Virtualization

Page 111: UKOUG,  Instant Cloning: Boosting Application Development
Page 112: UKOUG,  Instant Cloning: Boosting Application Development
Page 113: UKOUG,  Instant Cloning: Boosting Application Development

$40M

$75M

$850M

$27,000M

Storage

IT

Develop

Business

Page 114: UKOUG,  Instant Cloning: Boosting Application Development
Page 115: UKOUG,  Instant Cloning: Boosting Application Development

Good, Cheap, Fast : choose two

Fast

GoodCheap

Page 116: UKOUG,  Instant Cloning: Boosting Application Development

FS vs. ZFS

• FS per Volume

• FS limited bandwidth

• Storage stranded

• Many FS in a pool

• Grow automatically

• All bandwidth

Storage PoolVolume

FS

Volume

FS

Volume

FS ZFS ZFS ZFS

Page 117: UKOUG,  Instant Cloning: Boosting Application Development

# of database copies

IncreasedRevenueFor Company

Page 118: UKOUG,  Instant Cloning: Boosting Application Development

Three Core Parts

Production

Instance

Time Window

Instance

Self Service

Development

21 3

Source Syncing Storage (DxFS)

Page 119: UKOUG,  Instant Cloning: Boosting Application Development

Database going Global

Page 120: UKOUG,  Instant Cloning: Boosting Application Development

Globalization Reduces Windows

20112012201320142015

1pm 10pm 8am noon

10pm 8am noon 9pm

Page 121: UKOUG,  Instant Cloning: Boosting Application Development

6am 8am 10pm

Page 122: UKOUG,  Instant Cloning: Boosting Application Development

I. Clonedb Oracle II. EMC

• Copy on first write (COFW)III. Netapp

• write anywhere file system (WAFL)• & EMC VNX redirect on write (ROW)

IV. ZFS

2. Thin Cloning

Page 123: UKOUG,  Instant Cloning: Boosting Application Development

RMAN backup

dNFSsparse fileI. clonedb

Page 124: UKOUG,  Instant Cloning: Boosting Application Development

RMAN backup

dNFSsparse fileI. clonedb

Page 125: UKOUG,  Instant Cloning: Boosting Application Development

CloneDB

1. dNFS 11.2.0.2+– cd $ORACLE_HOME/rdbms/lib– make -f ins_rdbms.mk dnfs_on

2. Clonedb.pl initSOURCE.ora output.sql– MASTER_COPY_DIR="/rman_backup”– CLONE_FILE_CREATE_DEST="/nfs_mount”– CLONEDB_NAME="clone"

3. sqlplus / as sysdba @output.sql– startup nomount PFILE=initclone.ora – Create control file backup location– dbms_dnfs.clonedb_renamefile ('/backup/file.dbf' , '/clone/file.dbf');– alter database open resetlogs;

Tim Hallwww.oracle-base.com/articles/11g/clonedb-11gr2.php

Page 126: UKOUG,  Instant Cloning: Boosting Application Development

I. Clonedb Oracle II. EMC

• Copy on first write (COFW)III. Netapp

• write anywhere file system (WAFL)• & EMC VNX redirect on write (ROW)

IV. ZFS

Thin Cloning

Page 127: UKOUG,  Instant Cloning: Boosting Application Development

D

ActiveFile

SystemSnapshot

CBA

II. EMC Copy on Write

Page 128: UKOUG,  Instant Cloning: Boosting Application Development

D

ActiveFile

SystemSnapshot

DCBA

Write penalty (read and two writes)Limit 16 snapshotsNo Branching (snapshots of snapshots)

II. EMC Copy on Write

Page 129: UKOUG,  Instant Cloning: Boosting Application Development

I. Clonedb Oracle II. EMC

• Copy on first write (COFW)III. Netapp

• write anywhere file system (WAFL)• & EMC VNX redirect on write (ROW)

IV. ZFS

Page 130: UKOUG,  Instant Cloning: Boosting Application Development

Data Blocks

root

III. Netapp (WAFL) and EMC (ROW)

• 255 snapshots• Branching possible

Page 131: UKOUG,  Instant Cloning: Boosting Application Development

I. Clonedb Oracle II. EMC

• Copy on first write (COFW)III. Netapp

• write anywhere file system (WAFL)• EMC redirect on write (ROW)

IV. ZFS

Page 132: UKOUG,  Instant Cloning: Boosting Application Development

Snapshot rootLive root

ZilIntent Log

IV. ZFS Allocate on Write

Unlimited Instantaneous SnapshotsUnlimited Instantaneous ClonesBranching easy and unlimited

Page 133: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

Test Master

Instance

Source

? instance

Create a “Test Master” databaseOn ZFSSA or Netapp

ZFSSA or Netapp

Page 134: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

• Register Netapp or ZFS with Storage Credentials

Test Master

Instance

Source

? instance

ZFS orNetApp

Install EM 12cInstall Snap Clone option

Page 135: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage.

Test Master

Instance

Source

? instance

Linux

ZFS orNetApp

Page 136: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage• Register test master database• .

Test Master

Instance

Source

? instance

Linux

ZFS orNetApp

Page 137: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage• Register test master database• Enable Snap Clone for the test master database

• .

Test Master

Instance

Source

? instance

Linux

ZFS orNetApp

Enable Snap Clone

Page 138: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage. • Register test master database• Enable Snap Clone for the test master database• Set up a zone – set max CPU and Memory and the roles that can see these zones

Test Master

Instance

Source

? instance

Linux

ZFS orNetApp

Zone

CPU limitsMemory limits

Page 139: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents instance

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage. • Register test master database• Enable Snap Clone for the test master database• Set up a zone – set max CPU and Memory and the roles that can see these zones• Set up a pool – a pool is a set of machines where databases can be provisioned

Test Master

Instance

Source

? instance

CloneLinux

ZFS orNetApp

Pool

Zone

Page 140: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents instance

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage. • Register test master database• Enable Snap Clone for the test master database• Set up a zone – set max CPU and Memory and the roles that can see these zones• Set up a pool – a pool is a set of machines where databases can be provisioned• Set up a profile – a source database that can be used for thin cloning

Test Master

Instance

Source

? instance

CloneLinux

ZFS orNetApp

PoolProfile

Zone

Page 141: UKOUG,  Instant Cloning: Boosting Application Development

Oracle EM 12c Snap Clone3

EM 12c

Agents instance

• Register Netapp or ZFS with Storage Credentials• Install agents on a LINUX machine to manage the Netapp or ZFS storage. • Register test master database• Enable Snap Clone for the test master database• Set up a zone – set max CPU and Memory and the roles that can see these zones• Set up a pool – a pool is a set of machines where databases can be provisioned• Set up a profile – a source database that can be used for thin cloning• Set up a service template – init.ora values

Test Master

Instance

Source

? instance

CloneLinux

ZFS orNetApp

PoolProfile

ZoneTemplate

Page 142: UKOUG,  Instant Cloning: Boosting Application Development

Choose your virtualization Layer:• Delphix and Oracle SMU

SMU

ZFS Storage Appliance

Page 143: UKOUG,  Instant Cloning: Boosting Application Development

Oracle 12c SMUOracle Snap Management Utility for ZFS Appliance

• Requires ZFS Appliance• Supports Linux , Solaris 10+, Windows

2008+• GUI

– snapshot source databases – provision virtual databases

Page 144: UKOUG,  Instant Cloning: Boosting Application Development

over 10 times

perhaps the single largest storage consolidation opportunity history“

Page 145: UKOUG,  Instant Cloning: Boosting Application Development

Original Snapshot Snapshot Day 2