23 August 2005, updated November 1,
2007
Note:
This literature review is a
collection of information from Oracle and news
sources on 23 August 2005. The license rules
change frequently (as a result of the
quickly-changing hardware), so this August 2005
survey may not apply to your special cases.
Also see
my notes on
Oracle standby database
enterprise and standard edition.
Overview of Oracle Store License
rules
The
Oracle Store web site has complete MSRP
prices for Oracle database licenses. As of
August 2005, Oracle has two pricing models, "named
user plus" and "processor". Historically,
Oracle has also sold "unlimited use" licenses for
large corporations, but they are not mentioned on
the Oracle Store web site.
- Named User Plus - This is a pricing
model that factors
minimum numbers of users.
- Processor - The processor license
pricing model is based on the number and type of
processors on the Oracle servers.
Oracle licensing and replicated
databases
Many Oracle shops are now using Oracle replication tools (Oracle
Streams, standby database, data guard, multi-master replication) to
create a standby Oracle server as protection against hardware
failure.
However, many Oracle shops forget that all “hot” standby servers
(where you use the standby server for Oracle transactions) may
require an Oracle license.
This
Oracle license pricing document (as of March 16, 2006), notes
that mall standby and failover database must be fully licensed if
they might be used as production:
"Standby –
In this type of recovery, a copy of the primary
database is maintained on a separate server at
all times. These systems are configured for
disaster recovery purposes. If the primary
database fails, the standby database is
activated to act as the new primary database.
In this
environment, both the primary and the standby
databases must be fully licensed."
Oracle standby servers need to be fully licensed if they are “hot
standby” servers that can be used for production SQL queries.
Some sources say that cold standby servers
used less than 10 days per year do not need to be licensed, but you
should verify this with your Oracle representative or the Oracle
Store, as Oracle license policies change frequently.
Suggestions for getting the best deal on Oracle
licenses
Even though Oracle licensing agreements allow Oracle corporation to
perform license audits, most Oracle shops are honor-bound to pay for
the databases according to their license agreement.
Don't pay for more Oracle licenses than you need
There's an
interesting February 2004 article over on the
IT Manager's Journal about Oracle licensing and support,
suggesting that many shops are paying for more licenses than they
use. There is also this 2003 article titled "Oracle
is Putting the Support Screws to Customers" with similar
recommendations.
Plan your Oracle architecture to minimize Oracle license charges
With proper planning you can save a great deal in
license fees while keeping high database
performance. Some suggestions for
processor-based licensing include:
- Consolidate Oracle production environments - In
shops with many production database running on
separate servers, and consolidating the
instances in production
can save thousands of licensing dollars. With
Oracle server consolidation, buying large
SMP servers (i.e. an Intel Linux 16-CPU
UNISYS ES7000) and moving dozens of Oracle
instances onto a single monolithic environment
is ideal because CPU resources can be transparently shared
between Oracle instances. Of course,
server consolidation requires high-speed network
connectivity from all application areas, so this
may not be appropriate for widely distributed
shops with sporadic network latency.
- Use dedicated Oracle servers
- Oracle
does not give you a discount if you run other
applications on the same server with your Oracle
database. Keep your Oracle servers isolated and
only use as many processors as you need for
high-water-mark processing.
- Buy fast processors - Oracle
licensing does not distinguish between fast and
slow processors. The super-fast Intel
Itanium2 64-bit processors can have double the
processing power of older CPU's.
- Maximize processor resources - You
may be paying too much if you have many Oracle
servers with a small average CPU consumption.
You can compute high-water-mark (HWM) CPU consumption in
Oracle 10g AWR reports or with UNIX or Linux
vmstat utility, but it is important to consider
the high-water-mark for CPU consumption,
especially if your shop has service level
agreements (SLA) for fast response time.
For example, four production servers with one
CPU and a HWM of 20% CPU might comfortable fit
onto a single server, thereby freeing-up three
processor licenses.
Let's examine the Oracle licensing literature on processor-based
Oracle licensing for multi-core processors..
Multi-core CPUs and Oracle
"Processor" licenses
A dual core chip is a processor that contains
more than one processing unit. This Washington
Post article titled
Dual-Core Chips Help Processors Share Load,
dated June 5, 2005 we see a good description of he
reasons for multi-core processors:
Both AMD's Athlon 64 X2 and Intel's
Pentium D use "dual-core" designs that put two
processors on a single piece of silicon,
divvying up the work between the pair.
In a July 14, 2005 new item titled
Oracle Shifts Multicore Licensing Model, the new
CPU chips by AMD, Sun and IBM.
Following months of anticipation and some
high-profile criticism, Oracle has changed the
licensing model for its databases and middleware
on multicore servers, bringing it a step closer
in line with competitors.
The price change only effects the "multi core"
processors, and the article discusses the
formulas used:
Multicore processors pack more than one
processing unit, or core, on a piece of silicon.
The technique boosts performance of a machine,
while keeping the heat generation down, although
two cores do not double the performance.
We also see that this
July 15, 2005 article shows examples of the
computations required to determine license fees:
"For example, a 4-way, dual core processor
server which previously had a list license fee
of $320,000 (4*2 [cores] *$40,000) would now
have a list license fee of $240,000 (0.75 * 8
[cores] *$40,000)."
And it gets even more complicated! A sharp
Register reader forwards this advisory from
Oracle's finer print:
"A multicore chip with 11 cores would
require a 9 processor license (11 multiplied by
a factor of .75 equals 8.25 which is then
rounded up to the next whole number which is
9)."
The price change are only for "dual core"
processors and they do not yet address
"hyperthreaded" CPU's (The Intel Itanium2 and
AMD 64-bit processors).
Oracle Store also shows details on counting
multi-core processors
For the purpose of counting the number of
processors which require licensing, a multicore
chip with "n" cores shall be determined by
multiplying "n" cores by a factor of .75. All
fractions of a number are to be rounded up to
the next whole number.
For example, a multicore chip with 11
cores would require a 9 processor license (11
multiplied by a factor of .75 equals 8.25 which
is then rounded up to the next whole number
which is 9).
The Oracle Audit
As noted, your Oracle licensing agreement
allows Oracle to inspect your shop for license compliance:
Upon 45 days written notice, Oracle may audit
your use of the programs. You agree to cooperate
with Oracle's audit and provide reasonable
assistance and access to information.
You agree to pay within 30 days of written
notification any fees applicable to your use of
the programs in excess of your license rights.
If you do not pay, Oracle can end your technical
support, licenses and/or this agreement. You
agree that Oracle shall not be responsible for
any of your costs incurred in cooperating with
the audit.
Oracle guru Tony Jambu has these interesting
observations about Oracle pricing in 2007:
As an
example, let’s take a 2 Node RAC cluster
consisting of 4 CPUs (ignoring multi cores) per
node plus the following options:
·
Real
Application Clusters($20,000 per processor)
·
Active Data
Guard($5,000 per Processor)
·
Partitioning($10,000 per Processor)
·
Real
Application Testing($10,000 per Processor)
·
Advanced
Compression($10,000 per Processor)
·
Total
Recall($5,000 per Processor)
·
Advanced
Security ($10,000 per Processor)
Taking the
options into account, the software cost per CPU
would be US $110,000.For the2 Node RAC, that
would come to be(2 nodes) x (4 CPU) x
US$110,000=US$880,000.
The secondary site where your Active Data Guard
is being replicated is missing. That would be
double your cost to US$1,760,000(list).
Likewise, adding support of 22 percent brings
the figure to US$2,147,200(list).
You would not pay this price, as discounting has
not been applied. Using figures form Oracle’s
Store, we get a discounted figure of
US$1,610,400.
Oracle Pricing-good News
Some good news…Oracle has
revised the condition for which Oracle
Database Standard Edition (SE) and Standard
Edition One (SE1) may be licensed.
In the past, Oracle SE could
only be licensed on servers with
·
a
maximum capacity of 4 single core processors
or
·
Sum of
Cores*Core Processor Factor <= 4 and Sum
Cores < = 8
For a cluster environment,
·
The sum
of single core processors < = 4 or
·
Sum of
clustered Cores* Core Processor Factor < = 4
and Sum of clustered Cores < = 8
|