One of
the line items on a Delphix return on investment calculation is reduction in
database licenses. In truth this is more
of a cost avoidance benefit rather than an immediate saving but nonetheless
customers understandably want to know how this is achieved.
Databases
are usually licensed based on processor counts making a database processor an
expensive resource. The costs for these
resources are constant and hence, rather like an aircraft that only earns money
when it is flying, the aim is to keep database servers as busy as possible. For cloud deployments the primary method to reduce
costs is to release resources when not required, even temporarily. The same rule should be applied to
on-premise.
Common
setups that consume license unnecessarily include
1. Dedicated Test and Development
Servers
1.1. Dedicated test servers locked
into a project or team because of the difficulty in re-tooling it to switch
workloads.
1.2. Regionally aligned development
servers for geographically split teams, because of the difficulty in re-tooling
it to switch workloads.
2. Offload Production
Running CPU consuming processes
on database licensed CPUs that could be offloaded elsewhere. Production servers are a good example where
any process that can be offloaded to a downstream server should be.
3. Premium Cost CPUs
Running non-production
workloads on premium costs servers. Some
processors attract a higher scale factor for license calculations so using the
lowest cost processors (from a licensing perspective) on non-production
database servers may mean running development and test on a different operating
system.
4. Premium Cost Hypervisors
Some hypervisors, notably
VMware are not recognized as hard portioned servers meaning the entire database
server must be licensed because the hypervisor ‘walls’ are not recognized. Using a hypervisor that is recognized for
hard partitioning can eliminate this issue, of example Solaris Containers on Solaris x86.
5. Multi-tenant
Running many database instances
consumes excessive database server capacity.
Multi-tenant consolidates consumption at the cost of additional
licenses.
6. Peak Sizing
Sizing for peak capacity
on-premise. Use cloud bursting to handle
peak and license only for business as usual on premise.
7. Inefficient Database Usage
Since database processors are
expensive and application performance is always important, performance tuning
can kill two birds with one stone, improve application performance and reduce license consumption.
Warning
Before
proceeding it is worth mentioning that Database licensing is a very sensitive
topic and any actions taken to reduce license obligations must be validated
with the database vendor.
How can Delphix help?
Lets
take a look at each of the scenarios above and examine how Delphix can
assist.
1. Dedicated Test and Development
Servers
Solution (Part 1): Stop and Start Virtual
Databases
With Delphix when a database (database
server instance and data) is not required it can be shutdown, safe in the
knowledge that the database can be restarted at any time with no loss of data.
This simple capability allows a given
database server to be shared or time shared by more users or database workloads,
increasing database server utilization is key to getting better value from your
database licenses.
Two prime examples where this works particularly effectively
include sharing database server resources across timezones, where teams can
utilize the same server at different times of the day and end to end provision
and tear down of test resources including databases for automated testing.
Solution (Part 2): Database Versions
(branches)
Delphix allows an individual to work on
more than one database version without consuming additional database server
resources. Delphix can switch between
database versions, shutting down the current version and starting up the
desired version.
2. Offload Production
Solution: Delphix
virtual databases
This is one of the
primary goals of Delphix, to allow production servers to focus on supporting
production activity and offloading any non-production or semi-production
workloads to non-production servers and virtual databases. For example spinning up a set of reporting
servers can offload reporting activity from production. Spinning up a set of virtual databases
synchronised to the same point in time can offload production from ETL
processes used to maintain Warehouse or Analytics databases.
3. Premium Cost CPUs
Solution: Cross Platform Provisioning (XPP)
Oracle uses a
scaling factor for processor licenses depending on the processor in use and
this ranges from 0.25 to 1.0. This can
have a substantial impact on license costs, see Oracle Processor Core Factor Table.
Delphix can be
configured to ingest data from one Oracle platform and provision to another,
for example from AIX to Linux. This
capability relies on Oracle transportable tablespaces and RMAN endian
conversion but once configured becomes a completely automated, repeatable
workflow.
All development and test
activity can be performed on lower cost Linux environments and any AIX specific tests can be covered during pre-production
testing on an AIX test environment.
4. Premium Cost Hypervisors
Solution: Heterogenous Provisioning
Several customers
choose to run on Solaris x86 since Solaris Containers are treated as hard
partitions allowing physical servers to be carved up into reduced size licensed
virtual servers.
Conversion to Solaris x86 can
be performed directly between Linux and Solaris x86 Oracle databases, and this
capability will be available seamlessly from Delphix in an upcoming
release. Just as for XPP, a Pre- Production
Environment can be used to test any platform specific issues after all the
development and the vast majority of test iterations have been performed on
Solaris x86.
5. Multi-tenant
Solution: full support for pluggable databases
Oracle’s 12c
multi-tenant database option allows multiple, pluggable, databases to share the
same set of background processes and memory reducing the overall CPU
consumption, The trade off is between
the cost of the multi-tenant option and the alternative of licensing more CPUs
to handle multiple standalone instances.
If it works for
you, Delphix can virtualize and provision pluggable databases which can be
assigned to individuals allowing them to manipulate their pluggable databases
as if it is a standalone database.
6. Peak Sizing
Solution: Burst into the Cloud
Almost all
customers size their non-production environments for peak activity on the
assumption that all non-production activity will run on-premise.
With Delphix, synchronizing
on-premise data with a cloud based Delphix Engine is trivial to setup and
maintain. Reducing the on-premise estate
to business as usual activity and then leveraging cloud based environments for
peak activity reduces your overall server and license spend.
7. Inefficient Database Usage
Solution: Automated performance tests
Delphix is perfect for running
relentless performance tests, both regression tests and benchmark tests, particularly
if these are automated.
Summary
Delphix
is a key component for any strategy to reduce or at least trim expansion of
database licenses and database server resources. The range
of options is:
1. Workload
Consolidation
on development and test servers, through fast provision/de-provision
2. Offload
Production by
supporting all additional workloads on non-production servers
3. Lower
Cost CPUs,
through cross platform provisioning
4. Lower
Cost Hypervisor,
through heterogenous provisioning
5. Multi-Tenant, full support for Oracle 12c
multi-tenant
6. Trim
on-premise Capacity,
use Delphix to burst peak workloads into the cloud.
7. Tune
to Trim, run performance
tests routinely and systematically with Delphix
With
this range of options there is something for everyone. However it is true that this kind of
initiative must be planned and executed over time.