|
 |
|
Oracle Database Tips by Donald Burleson
|
Introduction to Oracle Data Caching
Leveraging RAM resources has always been one of
the central tasks of the Database Administrator (DBA). By definition,
almost all databases are I/O intensive, and minimizing the expensive
physical disk I/O has always been a major priority to ensure
acceptable performance. Historically, RAM has been a scarce and
expensive resource, and the DBA was challenged to find the best
working set of highly used data to cache on their precious RAM media.
However, RAM is quite different than other
hardware. Unlike CPU speed, which improves every year, RAM speed is
constrained by the physics of silicon technology. Instead of speed
improvements, there has been a constant decline in price. CPU speed
also continues to outpace RAM speed. This means that RAM subsystems
must be localized to keep the CPU's running at full capacity.
In the 1980's, a billion bytes of RAM cost over a
million dollars; whereas, today one gigabyte of high-speed RAM storage
can be acquired for less than $300.00. As a reference point, a
billion bytes of RAM is equal to 1 Gigabyte. Some other pricing data
points are outlined in Table 1.1 below:
YEAR |
PRICE PER GBYTE TO ADD MEMORY TO SOLID
STATE DISK
(Texas Memory Systems) |
1998 |
$9,000 (TMS) |
1999 |
$6,000 (TMS) |
2000 |
$5,000 (TMS) |
2001 |
$5,000 (TMS) |
2002 |
$3,000 (TMS) |
2003 |
$2,500 (TMS) |
2004 |
$1,500 (TMS) |
Table 1.1:
RAM pricing data points
Historically, RAM I/O bandwidth grows one bit
every 18 months, making the first decade of the 21st
Century the era of 64-bit RAM technology as shown in Table 1.2:
YEAR |
RAM I/O BANDWIDTH SIZES |
1970's |
8 bit |
1980's |
16 bit |
1990's |
32 bit |
2000's |
64 bit |
2020's |
128 bit |
Table 1.2:
RAM I/O bandwidth sizes
The bandwidth information is interesting. These
numbers typically have as much to do with matching the bus width of
the computer as they do with the speed of the RamSan chip. It is also
more commonly used to describe SIMM performance as 8 bit/16/32/64 bit,
so it might not be a good measure of chip performance. The data in
Table 1.3 below was taken from a Kingston Memory webpage. It was part
of their ultimate guide to memory:
YEAR |
MEMORY TYPE |
ACCESS TIME |
1987 |
FPM |
50ns |
1995 |
EDO |
50ns |
1997 |
SDRAM |
15ns |
1998 |
SDRAM |
10ns |
1999 |
SDRAM |
7.5ns |
2000 |
DDR SDRAM |
3.75ns |
2001 |
DDR SDRAM |
3ns |
2002 |
DDR SDRAM |
2.3ns |
2003 |
DDR SDRAM |
2ns |
Table 1.3:
The Kingston Memory guide to memory
It is clear that the dramatic decreases in RAM
prices are going to change Oracle RAC database architectures. With
RAM a once scarce and expensive resource, the Oracle DBA had to spend
a huge amount of time managing Oracle memory allocation and
optimization. This is about to change.
Today 128 gigabytes of SSD (i.e. Texas Memory
Systems) can be purchased for about $150,000. By 2015, a Gigabyte of
RAM is expected to cost much less. Of course, less expensive solid
state disks will mean a dramatic change in Oracle database
architecture as the old-fashioned model of disk-based data management
will be abandoned in favor of a cache-based approach.
According to David Ensor, Oracle tuning expert,
author, and Former Vice President of the Oracle Corporation's
Performance Group, the increase in CPU power has shifted the
bottleneck of many systems to disk I/O.
"Increased server
power has meant that disk I/O has replaced CPU power and memory as
the limiting factors on throughput for almost all applications and
clustering is not a cost-effective way of increasing I/O
throughput."
See
code depot for complete scripts
This is an excerpt from the book
Oracle RAC & Tuning with Solid State Disk.
You can get it for more than 30% by buying it directly from the
publisher and get immediate access to working code examples.
Market Survey of SSD vendors for
Oracle:
There are many vendors who offer rack-mount solid-state disk that
work with Oracle databases, and the competitive market ensures that
product offerings will continuously improve while prices fall.
SearchStorage notes that SSD is will soon replace platter disks and that
hundreds of SSD vendors may enter the market:
"The number of vendors in this category could rise to several
hundred in the next 3 years as enterprise users become more familiar
with the benefits of this type of storage."
As of January 2015, many of the major hardware vendors (including Sun and
EMC) are replacing slow disks with RAM-based disks, and
Sun announced that all
of their large servers will offer SSD.
Here are the major SSD vendors for Oracle databases
(vendors are listed alphabetically):
2008 rack mount SSD Performance Statistics
SearchStorage has done a comprehensive survey of rack mount SSD
vendors, and lists these SSD rack mount vendors, with this showing the
fastest rack-mount SSD devices:
manufacturer |
model |
technology |
interface |
performance metrics and notes |
IBM |
RamSan-400 |
RAM SSD |
Fibre
Channel
InfiniBand
|
3,000MB/s random
sustained external throughput, 400,000 random IOPS |
Violin Memory |
Violin 1010 |
RAM SSD
|
PCIe
|
1,400MB/s read,
1,00MB/s write with ×4 PCIe, 3 microseconds latency |
Solid Access Technologies |
USSD 200FC |
RAM SSD |
Fibre Channel
SAS
SCSI
|
391MB/s random
sustained read or write per port (full duplex is 719MB/s), with
8 x 4Gbps FC ports aggregated throughput is approx 2,000MB/s,
320,000 IOPS |
Curtis |
HyperXCLR R1000 |
RAM SSD |
Fibre Channel
|
197MB/s sustained
R/W transfer rate, 35,000 IOPS |
Choosing the right SSD for Oracle
When evaluating SSD for Oracle databases you need
to consider performance (throughput and response time), reliability (Mean Time Between failures) and
TCO (total cost of ownership). Most SSD vendors will provide a
test RAM disk array for benchmark testing so that you can choose the
vendor who offers the best price/performance ratio.
Burleson Consulting does not partner with any SSD vendors and we
provide independent advice in this constantly-changing market. BC
was one of the earliest adopters of SSD for Oracle and we have been
deploying SSD on Oracle database since 2005 and we have experienced SSD
experts to help any Oracle shop evaluate whether SSD
is right for your application. BC experts can also help you choose
the SSD that is best for your database. Just
call 800-766-1884 or e-mail.:
for
SSD support details. DRAM SSD
vs. Flash SSD
With all
the talk about the Oracle “flash cache”, it is important to note that there
are two types of SSD, and only DRAM SSD is suitable for Oracle database
storage. The flash type SSD suffers from serious shortcomings, namely
a degradation of access speed over time. At first, Flash SSD is 5
times faster than a platter disk, but after some usage the average read time
becomes far slower than a hard drive. For Oracle, only rack-mounted
DRAM SSD is acceptable for good performance:
|
Avg. Read speed
|
Avg. write speed
|
Platter disk
|
10.0 ms.
|
7.0 ms.
|
DRAM SSD
|
0.4 ms.
|
0.4 ms.
|
Flash SSD
|
1.7 ms.
|
94.5 ms.
|
|

|
|