An Oracle blog about Oracle Enterprise Manager and Oracle Management Cloud

Data Clone and Refresh (part 1)

Guest Author

In mid January we released the latest version of Enterprise Manager
Cloud Control 12c, the 12cR4 Plugin Update.  This release included
many enhancements in the cloud
management space, making it the complete DBaaS automation solution.
 The main areas of enhancement are:

  • Self Service Portal and Service Catalog, including
    add and remove standby capabilities, externalized database size and
    improved customization
  • Cloud Framework, with an improved self service
    portal, role and service type based access across all pages, and
    improved administration capabilities
  • Data Clone and Refresh, including an improved self
    service experience, admin flows for non-cloud cloning and refreshes,
    and additional storage certification
  • Fleet Maintenance, such as the ability to subscribe
    to database and grid infrastructure images, deploying them
    automatically to servers

In this posting, I'll be focusing on the data clone
enhancements.  My next post will focus on the refresh enhancements.

Improved Self Service Experience

Enterprise Manager ships with an out-of-box self-service portal that
allows developers, testers, DBA's, and other self service users to log
on and request various services. It also provides an administrative
interface for DBA's to deliver one-off or special requests for services.
These services include:

  • New single instance (SI) and Real Application Clusters (RAC)
    databases using pre-defined golden standards. This is ideal for
    developers asking for standard databases with or without data.
  • New SI and RAC
    databases along with Data Guard standby databases either within the
    same data-center or across different geographical regions. This is ideal
    for production and semi-production workloads that have high
    availability requirements. 
  • Schemas
    hosted in one or more databases, and provided as Schema-as-a-Service.
  • Pluggable databases that are hosted in one or more Oracle Database 12c
    Multitenant container databases provided as Pluggable Database as a
  • Database
    thin clones, using the Enterprise Manager 12c Snap Clone
    feature that leverages storage Copy-on-Write (CoW) technology on Oracle
    and non-Oracle storage. Snap Clone lets users, such as functional quality assurance testers, to create multiple copies of the database in minutes without
    additional space, take private backups, and refresh data from the original source.
    Snap Clone supports cloning of databases on file and on Oracle Automatic Storage Management with
    block storage. 
  • Database full clones using RMAN backups or RMAN duplicates. This
    could be ideal for intense testing, such as database upgrades and
    performance testing on Exadata. 
  • All cloning services come integrated with masking, and ability to
    change configuration and software versions. 
  • Fleet maintenance allows administrators to patch and upgrade
    database software, with near zero or zero downtime. The subscription
    based model enables updates at scale, and across the entire cloud
    ecosystem thus significantly reducing the time required for maintenance
Additionally, self service users can perform lifecycle operations like
starting and stopping, checking the status, health monitoring, etc. on the requested
databases and schemas. Provisioning can be done on both physical
infrastructure using Deployment Procedures and on an Oracle VM
virtualized server infrastructure using Virtual Assemblies and Virtual
Templates. The portal provides access to a Service Catalog which lists
various published service templates for standardized database
configuration and versions. Users can review their past and outstanding
requests, resource quotas, and current utilization as well as chargeback
information for the databases and services they own. The portal also
allows users to automatically backup their databases on a scheduled basis
or take on demand backups. Users can restore the database to any of
these backups. The self-service portal is the user's view into the cloud, thus it is designed to be easy to use and yet useful. The portal
is also backed by both a command line interface and an API that can be used to request and manage
cloud resources via scripts in lieu of the user interface.

Admin Flows for Non-Cloud Cloning and Refreshes

Often, people
think of cloning as only important as a cloud operation, but 
that’s not the only place that cloning can be important.  It’s
ideal, for example, as a way to build environments for proofs of
concept, test master creation, or indeed anywhere that you may need a
one-off clone. With the Clone and Refresh functionality, you can clone
from an existing snapshot of a database, or you can choose to clone to
a particular point in time or SCN.  Not only that, you can
integrate both masking and patching (for PSU’s) in this flow as well.
 Once you have created a clone, you can then refresh it from the
source later with a few clicks. And finally, once you’ve done cloning
through the user interface, you might then decide to clone and refresh
in a scripted manner, using the EM CLI verbs or REST API's that are provided for
this.  You can even schedule the cloning through EM CLI to occur
at a time that suits you.

Now let’s look at the details of what
can happen as part of this clone and refresh flow, based on the
environment you can see in the image below:

the left hand side you can see our Production database.  In this
example, this is an database running in a 3 node RAC
environment, with some RMAN backups already taken.  So what can I
do with this database when I clone it?

Firstly, I can mask
sensitive data.  Generally, when you take a copy of your
Production database to another environment, you want to mask some of
the data in that database, such as credit card numbers, salary details
and so on.  The admin flow allows you to apply a pre-defined
masking format to your data as it is cloned, or indeed execute your own
custom SQL scripts to change the data as you need to.

I can actually test patching as part of the flow.  In the example
I’m showing here, I’m cloning my Production database to an test environment.

Thirdly, I can change the
configuration as part of the admin flow as well.  Again, in the
example shown here we're moving from a 3 node RAC environment in
Production to a single instance test environment.

Finally, if my
underlying storage supports copy on write technology, I can also take
advantage of that and take a snap or thin clone of my Production
environment, where blocks are only written to my test environment as
they are changed in Production.  That means I can build a lot more
snap clones and still require only a very small percentage of the
storage of my Production environment.

Additional Storage Certifications

Earlier releases of the
Enterprise Manager Snap Clone functionality provided two different
solutions from a storage perspective.  If you already had either
Oracle's Sun ZFS Storage Appliance or NetApp, you could create a vendor
specific hardware solution.  If not, you could use either the
Solaris ZFS File System or the CloneDB functionality provided sine
Oracle Database 11g release   More details on the
EM12cR4 Snap Clone functionality is provided here.

the January plugin release, we added additional storage certification,
so you can now also use an EMC SAN with ASM to create snap clones.
 If you want more details on the Snap Clone and EMC solution, you
can find details about it here.

Further Information

You can find more information on the material I've just covered in Part VII of the Cloud Administration Guide in the online documentation here.  You can also watch the screenwatch we recorded to show you the cloning process in action here.

Stay Connected:
Facebook | YouTube | Linkedin | Newsletter
Download the Oracle Enterprise
Manager 12c Mobile app

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.