Analysis de Performance
Analysis de Performance
HUAWEI OceanStor Dorado2100 and Dorado5100 are SAN storage systems using all solid state disks
Oracle ASM Preferred Read Failure Group feature make it possible for mirroring SSD RAID0 with HDD to
Jarvis WANG
1
Why ASM PRFG
As we know, whether in OLTP (online transactional processing) or OLAP (online
analytical processing) systems, Oracle is I/O intensive. Using SSDs (solid state disks,
also known as flash disk) to store oracle files, user can benefit from the low latency, high
random IOPS, high sequential throughput and low power consumption features. SSD is
expensive, so you may pay a lot of money for the redundancy data on SSDs to
guarantee the reliability of your IT system. Mirroring SSD with HDD and only reading
from SSD is a good idea to balance performance and cost. ASM Preferred Read Failure
The following table shows the top 5 wait events in one oracle OLTP database running on
OLTP
Bottleneck traditional magnets disks (10K RPM SAS disk). 96.87% of DB time is spent on waits of
“db file sequential read”, and each wait costs 15 milliseconds. The high latency of the
The following table shows the top 5 wait events in one oracle OLAP database running on
OLAP
Bottleneck traditional magnets disks (10K RPM SAS disk). More than 80% of DB time is spent on
User I/O. The User I/O is definitely the bottleneck of the OLAP system.
2
Capacity and The following table shows the capacity and performance change of enterprise hard disk
Performance in the last 5 years, the capacity is increased year by year, but the performance stays the
of Hard Disk same level. When deploying Oracle OLTP database on hard disk, users will buy much
more spindles than the capacity needs to suport the high random I/O requirements,
while the free capacity can’t be used to store other things because that will make the
performance of database bad. Tiering storage or pure SSD solution are now strongly
recommended in Oracle OLTP database, and the idea that mirroring SSDs with HDDs is
OceanStor HUAWEI OceanStor Dorado2100 and Dorado5100 are SAN storage systems using all
Dorado solid state disks, they are designed to eliminate IO bottleneck, and accelerate
The following chart shows the SPC1-LIKE (OLTP workload) benchmark results of
OceanStor Dorado and traditional storage systems. The latency of Dorado is lower than
1ms, but the latency of traditional storage is higher than 10ms. Dorado could
3
Dorado2100 Dorado5100 Traditional Mid-End Traditional High-End
16.00
14.00
12.00
10.00
Latency (ms)
8.00
6.00
4.00
2.00
0.00
0 100,000 200,000 300,000 400,000 500,000 600,000
IOPS
ASM PRFG ASM normal redundancy disk group is created on two or more fail groups; each block on
one fail group has a copy on one of the other fail groups. The following figure describes
a normal redundancy disk group created on two fail groups. One fail group is created on
two HDD RAID5 arrays from OceanStor T series storage, and the other is created on two
SSD RAID0 arrays from OceanStor Dorado storage. The SSD fail group is set as
preferred read group. DB blocks are only read from SSD fail group except the group fails,
and “dirty pages” are both written to HDD and SSD fail groups. The low latency of
4
Write Read
Read
Write Write
ASM Normal Redundancy
HDD Fail Group Disk Group SSD Fail Group
RAID5 RAID0
OLTP The following chart shows the improvement of maximum number of active end users
Acceleration (Act. Users) and transaction response time (Avg. RT) when setting SSD as preferred
read failure group. The maximum number of active end users is increased from
from 247.02 ms to 17.95 ms, reduced to 7.3%. Users are significantly benefited from
250.00 10000
active end users
200.00 8000
150.00 6000
100.00 4000
2000
50.00 2000
17.95
0.00 0
Base Line - Preferred Read from Preferred Read from SSD
HDD
5
The following chart shows the improvement of analytical queries execute time and text
OLAP
Acceleration data load time when setting SSD as preferred read failure group. The queries execute
time is reduced from 77 minutes to 24 minutes, reduced to 31%. The data load
significantly benefited from the low latency and high random throughput of Dorado.
100
90 90 s
80
77 min
70
60
50
40
30 24 min
20
16 s
10
0
Base Line - Preferred Read from HDD Preferred Read from SSD
6
How to Use ASM PRFG
It’s very simple to use ASM Preferred Read Failure Group (PRFG). The following steps
introduce an example of using ASM PRFG with OceanStor Dorado and T Series Storage.
Create RAID 1. Create two RAID5 group on T Series Storage, each with seven 300GB SAS disks.
2. Create one LUN on each HDD RAID5 groups and map to the oracle host group
admin:/> createlun -rg 0 -susize 128 -n HDD1 -c a
admin:/> createlun -rg 1 -susize 128 -n HDD2 -c b
admin:/> addhostmap -group 1 –devlun 0
admin:/> addhostmap -group 1 –devlun 1
3. Create two RAID0 groups on Dorado storage, each with nine 200GB SLC SSDs.
ssh admin@Dorado5100
admin@Dorado5100's password: Admin@storage
admin:/>createrg -n SSD1 -l 0 -list
1,4:1,5:1,6:1,7:1,8:1,9:1,10:1,11:1,12:
admin:/>createrg -n SSD2 -l 0 -list
1,13:1,14:1,15:1,16:1,17:1,18:1,19:1,20:1,21:
4. Create one LUN on each SSD RAID0 group and map to the host
admin:/> createlun -rg 0 -susize 128 -n SSD1 -c a
admin:/> createlun -rg 1 -susize 128 -n SSD2 -c b
admin:/> addhostmap -group 1 –devlun 0
admin:/> addhostmap -group 1 –devlun 1
7
6. Change the I/O scheduler of HDD LUNs to “deadline” and SSD LUNs to “noop”
for sd in `ls -l /dev/disk/by-id/scsi-360022a110004* | awk -F '/' '{print
$NF}'`; do echo deadline > /sys/block/$sd/queue/scheduler; done
for sd in `ls -l /dev/disk/by-id/scsi-360022a110005* | awk -F '/' '{print
$NF}'`; do echo noop > /sys/block/$sd/queue/scheduler; done
7. Change the owner of the device to Oracle OS User and make soft link
chown oracle:dba /dev/disk/by-id/scsi-360022a11000*
su – oracle
cd /opt/oracle/data
ln -s /dev/disk/by-id/scsi-360022a1100046452037bab7100000000 hdd1
ln -s /dev/disk/by-id/scsi-360022a11000464521884063200000001 hdd2
ln -s /dev/disk/by-id/scsi-360022a1100050c500188610100000000 ssd1
ln -s /dev/disk/by-id/scsi-360022a1100050c5001886cf500000001 ssd2
8. Done.
2. Done.
2. Done.
8
ASM PRFG Best Practices
This chapter introduces best practices when using ASM Preferred Read Failure Group
RAID Level Dorado provides 4 kinds of RAID level: RAID10, RAID5, RAID0, and RAID1. When using
ASM PRFG, data is redundant between fail groups, so it’s unnecessary to redundant the
data in RAID level. Level RAID0 provides maximum random performance and is the
best RAID level for ASM PRFG. In despite of the high reliability of SSDs, RAID0 has
chances to fail. When that happens, all blocks will be read from HDD fail group, the
performance will degrade, if that can’t be tolerated, you could chose RAID5 or
RAID10 to avoid.
Write Policy Dorado provides 3 kinds of write policies for LUN: write through, write back with cache
mirroring, and write back without cache mirroring. Write through is the default policy, in
which mode “dirty pages” evicted out of Oracle Buffer Cache are directly written to the
backend SSDs on Dorado, which policy can be used for LUNs store user tables and
indexes. For LUNs store redo log files and archive logs, you could change the policy
to “write back with cache mirroring” with the help of HUAWEI technical support
engineers.
In “write back” mode, “dirty pages” are written to Dorado Cache Pool, and later synced
to SSDs in the background with LRU-LIKE algorithm. The latency is very low because
blocks are only written to Dorado memory. With “cache mirroring”, each write I/O from
Oracle is first written to the cache of LUN’s owner controller, and at the same time
transferred to another controller through the mirror channel between the two controllers,
making the latency of write I/O higher than “no cache mirroring”.
Linux I/O Oracle database is widely deployed on Linux operating system. There’re 4 kinds of I/O
Scheduler scheduler on block devices in Linux kernel 2.6: “noop”, “anticipatory”, “deadline”, and
9
“cfq”. The default I/O scheduler is “cfq”, which is not suitable for Dorado. For Oracle
Using the following command, you can change the I/O scheduler of “/dev/sdb” to “noop” and “/dev/sdc” to “deadline”:
Two types of SSD are supported on Dorado, SLC (Single-Layer Chip) and eMLC
SLC or eMLC
(Enterprise Multi-Layer Chip). SLC has much better random write performance and more
number of block erase count, but more expensive than eMLC. SLC and eMLC almost
The write ratio of OLTP workload is typically 20% - 60%, but there’re scenarios lower
than 20%. For write intensive OLTP workload, SLC is a better choice considering
performance and erase count. For read-mostly or read-only OLTP workload, eMLC is a
better choice.
In OLAP database, the data is written once and read many times, and the data is
periodically loaded into database. Choosing eMLC is a better idea for OLAP workload.
10
Copyright © Huawei Technologies Co., Ltd. 2012. All rights reserved.
No part of this document may be reproduced or transmitted in any form or by any means without prior written consent of Huawei Technologies Co., Ltd.
Trademark Notice
HUAWEI, and are trademarks or registered trademarks of Huawei Technologies Co., Ltd.
Other trademarks, product, service and company names mentioned are the property of their respective owners.
The information in this document may contain predictive statements including, without limitation, Huawei Industrial Base
statements regarding the future financial and operating results, future product portfolio, new Bantian Longgang
technology, etc. There are a number of factors that could cause actual results and developments Shenzhen 518129, P.R. China
to differ materially from those expressed or implied in the predictive statements. Therefore, such Tel: +86-755-28780808
information is provided for reference purpose only and constitutes neither an offer nor an www.huawei.com
acceptance. Huawei may change the information at any time without notice.
11