Exdata与DDN存储性能测试方案.docx
《Exdata与DDN存储性能测试方案.docx》由会员分享,可在线阅读,更多相关《Exdata与DDN存储性能测试方案.docx(21页珍藏版)》请在冰点文库上搜索。
Exdata与DDN存储性能测试方案
高性能数据库存储性能测试方案
DDN与Exadata性能测试对比
目录
一、测试目的5
二、测试环境5
三、测试场景设计原则7
3.1数据装载测试对比,信令系统数据装载主要采用sql*ldr,所以测试指标为装载时间与性能消耗对比。
7
3.2压缩测试对比,主要测试Exadata压缩表的比例和时间,然后与DDN非压缩表查询速度对比(DDN暂定采用oracle普通压缩,具体压缩方式由DDN决定)。
7
3.3单条查询测试对比,即返回结果很少的查询,一般即时查询,测试查询Exadata与DDN查询速度对比。
(Exadata没有建立索引,DDN是否要采用索引?
)7
3.4并行查询测试对比,一般为报表类统计查询,返回大量的结果集,由于开启了并发,测试指标包括查询速度及CPU消耗。
7
3.5数据汇聚测试对比,指的是数据库中insert操作,对CPU和IO响应速度要求较高,测试指标包括执行速度及性能消耗。
7
四、测试内容7
4.1数据装载测试对比8
4.1.1测试描述8
4.1.2测试指标8
4.1.3测试步骤8
4.1.4测试结果9
4.2压缩测试对比10
4.2.1测试描述10
4.2.2测试指标10
4.2.3测试步骤10
4.2.4测试结果11
4.3单条查询测试对比11
4.3.1测试描述11
4.3.2测试指标11
4.3.3测试步骤12
4.3.4测试结果12
4.4并行查询测试对比13
4.4.1测试描述13
4.4.2测试指标13
4.4.3测试步骤13
4.4.4测试结果14
4.5数据汇聚测试对比14
4.5.1测试描述14
4.5.2测试指标15
4.5.3测试步骤15
4.5.4测试结果16
五、存储性能测试16
5.1测试工具:
orion16
5.1.1测试描述16
5.1.2测试指标17
5.1.3测试步骤17
5.1.4测试结果18
5.2测试工具:
calibrate_io18
5.2.1测试描述19
5.2.2测试指标19
5.2.3测试步骤19
5.2.4测试结果21
5.3测试工具:
xdd21
5.3.1测试描述21
5.3.2测试指标22
5.3.3测试步骤22
5.3.4测试结果23
一、测试目的
本次测试主要以信令系统的业务场景进行测试,主要目的是验证ddn存储构建高性能数据库的优势与劣势,为今后广东移动系统建设规划提供指导性的建议,为了客观对比现网生产环境的基准处理性能,测试环境基于1/4配置的Exadata数据库一体机,具体测试的内容主要包括:
●数据装载测试对比
●压缩测试对比
●单条查询测试对比
●并行查询测试对比
●数据汇聚测试对比
二、测试环境
Exadata:
按ORACLEEXADATAX4(第五代)的四分之一配来评估。
●计算节点的配置(共2台)
处理器
2个Intel®Xeon®E5-2697v2十二核处理器(2.7GHz)
内存
256GB(16个16GB)—可扩展至512GB(16个32GB)
本地磁盘
4个600GB10KRPMSAS磁盘(可热交换)
磁盘控制器
磁盘控制器HBA(带512MB缓存)
网络
2个InfiniBand4XQDR(40Gb/s)端口(PCIe3.0)—两个端口均处于活动状态
4个1GbE/10GbEBase-T以太网端口
2个10GbE以太网SFP+端口
●存储节点的配置(共3台)
处理器
2个Intel®Xeon®E5-2630v2六核处理器(2.6GHz)
内存
96GB(4个8GB+4个16GB)
磁盘
12个1.2TB10KRPM高性能SAS(可热交换)—2.5”磁盘大小
或者
12个4TB7.2KRPM大容量SAS(可热交换)—3.5”磁盘大小
闪存
4个800GBSunFlashAcceleratorF80PCIe卡
磁盘控制器
磁盘控制器HBA(带512MB缓存)
网络
2个InfiniBand4XQDR(40Gb/s)端口(PCIe3.0)—两个端口均处于活动状态
嵌入式千兆以太网端口用于管理连接
DDN存储构建高性能数据库(文档中全部简称DDN)
由DDN从以下配置中挑选,不超过Exadata1/4硬件配置。
X86服务器扩容(27台)
4路高端应用服务器,配置不低于ibm3950X52.67GHz主频的CPU,256GB内存;4*300GBSAS磁盘,RAID0/1/5,2块4口千兆以太网电口网卡,2块8Gb双口HBA卡,1*光驱,2个以太网与FC融合10Gb接口卡,2个10GSFP光模块,冗余电源
X86服务器扩容(11台)
2路机架X86服务器,配置不低于2路八核处理器,2.3GHZ主频的CPU,64GB内存,12*2TBSATA硬盘,2*450GSAS硬盘,4*GE网口;支持RAID0/1/5,光驱,冗余电源
三、测试场景设计原则
1
2
3
1.
2.
3.
3.1数据装载测试对比,信令系统数据装载主要采用sql*ldr,所以测试指标为装载时间与性能消耗对比。
3.2压缩测试对比,主要测试Exadata压缩表的比例和时间,然后与DDN非压缩表查询速度对比(DDN暂定采用oracle普通压缩,具体压缩方式由DDN决定)。
3.3单条查询测试对比,即返回结果很少的查询,一般即时查询,测试查询Exadata与DDN查询速度对比。
(Exadata没有建立索引,DDN是否要采用索引?
)
3.4并行查询测试对比,一般为报表类统计查询,返回大量的结果集,由于开启了并发,测试指标包括查询速度及CPU消耗。
3.5数据汇聚测试对比,指的是数据库中insert操作,对CPU和IO响应速度要求较高,测试指标包括执行速度及性能消耗。
四、测试内容
存储需求:
至少2T文件系统和6T共享存储。
DDN需要根据这项需求合理安排配置。
4
4.
4.1数据装载测试对比
1
2
3
4
4.1
1
2
3
4
4.1
4.1.1测试描述
测试文本数据加载效率:
用户提供性能数据文本文件,通过Load方式加载到数据库,测试数据加载效率,并测试当数据量线性增长时,数据加载效率变化情况。
分别记录Exadata与DDN加载时间、IO、CPU占用等测试指标。
4.1.2测试指标
序号
参数
指标
1
Cpu
记录在数据装载期间内的DB和StorageCell的Cpu占用率。
在数据装载开始后作为基准点,以后每隔1分钟采集一次数据装载期间内的Cpu占用率。
2
时间
记录总数据加载时间
3
总大小
记录装载的表总大小,单位:
G。
4
平均装载速度
测试数据装载期间的装载速度,单位条/秒.
5
平均每秒数据吞吐量
测试数据装载期间的装载吞吐量,单位MB/秒,即表的总大小/总时间。
6
并行度
查询开启并行度。
4.1.3测试步骤
●使用sql*ldr将文本文件加载到数据库中。
●记录CPU利用作为率和磁盘IO速度,评估整体效率、时间、IO、CPU等关键指标。
●采用生产业务表I_USER_TRACE_STAT_D(用户漫入漫出表)作为源数据
●装载数据量从40亿、80亿、120亿、160亿条逐步递增。
●并行度从1个,2个,3个,4个逐步递增,一个并行度对应一个文件,一个文件大约400G,40亿条数据左右,所以装载文件由1个,2个逐步递增到4个。
●I_USER_TRACE_STAT_D表结构如下:
●测试语句如下:
4.1.4测试结果
关键指标
SQL1(Exadata)
SQL2
(Exadata)
SQL1
(DDN)
SQL2
(DDN)
CPU
总时间
并行度
表的总大小(G)
平均装载速度
平均每秒数据吞吐量
4.2压缩测试对比
4.2
4.2.1测试描述
对大表采用ExadataHCC压缩方式(信令目前有两种压缩方式)对其进行压缩,记录压缩比率,与压缩时间。
DDN暂定采用oracle普通压缩,实际情况由DDN方面决定。
4.2.2测试指标
序号
参数
指标
1
总大小
记录装载的表总大小,单位:
G。
2
压缩比
测试数据压缩前大小与压缩后大小比值,单位:
压缩前大小/压缩后大小。
3
表记录数
表的总记录数
4.2.3测试步骤
●创建不同压缩方式的表,然后从dba_segments查询其大小,并与原始table比较得到压缩率。
●采用生产业务表I_USER_TRACE_STAT_D(用户漫入漫出表)作为源数据
●压缩表数据量从40亿、80亿、120亿、160亿条逐步递增
●测试语句如下:
4.2.4测试结果
关键指标
压缩方式1(Exadata)
压缩方式2
(Exadata)
DDN
表的总大小(G)
表的记录数
压缩比
4.3单条查询测试对比
4.3
4.3.1测试描述
信令系统中存在较多的即时查询,即返回记录数很少,所以要求响应速度也非常高。
从大表中查询几条数据,记录执行时间。
4.3.2测试指标
序号
参数
指标
1
表大小
测试数据表大小。
2
表记录
测试数据表记录。
3
返回结果数
测试返回记录数。
4
查询时间
查询所需时间,单位:
秒。
5
压缩选项
是否对表进行压缩,Y或者N
4.3.3测试步骤
●从大表中查询几条数据,以信令系统中挑选部分即时查询场景,记录Exadata与DDN执行时间。
●表数据量由原始数据逐步翻倍递增,例如100%、200%、400%。
●采用生产业务表I_USER_TRACE_STAT_D、F_LTE_SOC_QOE_USER_01_H、F_LTE_SOC_HTTP_CAUSE_H、F_LTE_SOC_QOE_VIP_H作为源数据
●分别对表压缩和不压缩进行测试
●测试语句如下:
4.3.4测试结果
关键指标
sql1(Exadata)
sql2
(Exadata)
sql1
(DDN)
sql2
(DDN)
表的总大小(G)
表的记录数
返回结果数
查询时间
是否压缩
4.4并行查询测试对比
4.4
4.4.1测试描述
对于报表类的查询,或者取数类查询,通常非常耗时,一般都会开启并行提供查询速度。
测试并行查询速度,记录执行时间和CPU消耗情况。
4.4.2测试指标
序号
参数
指标
1
Cpu
记录在数据装载期间内的DB和StorageCell的Cpu占用率。
在数据装载开始后作为基准点,以后每隔1分钟采集一次数据装载期间内的Cpu占用率。
2
并行度
查询开启并行度。
3
表大小
测试数据表大小。
4
返回结果数
测试返回记录数。
5
执行时间
查询所需时间,单位:
秒。
6
压缩选项
是否对表进行压缩,Y或者N
4.4.3测试步骤
●以信令系统中挑选部分取数查询场景,记录Exadata与DDN执行时间。
●采用生产业务表I_USER_TRACE_STAT_D、F_LTE_SOC_HTTP_CAUSE_H、F_LTE_SOC_QOE_VIP_H、F_LTE_SOC_QOE_USER_01_H作为源数据
●表数据量由原始数据逐步翻倍递增,例如100%、200%、400%。
●并行度分别从4个、8个、16个逐步递增
●分别对表压缩和不压缩进行测试
●测试语句如下:
4.4.4测试结果
关键指标
sql1(Exadata)
sql2
(Exadata)
sql1
(DDN)
sql2
(DDN)
Cpu
并行度
表大小
返回结果数
执行时间
是否压缩
4.5数据汇聚测试对比
4.5
4.5.1测试描述
数据汇聚主要指的是根据条件从表筛选出数据插入其他表中,测试数据库insert操作性能,一般也会开启并行。
4.5.2测试指标
序号
参数
指标
1
Cpu
记录在数据装载期间内的DB和StorageCell的Cpu占用率。
在数据装载开始后作为基准点,以后每隔1分钟采集一次数据装载期间内的Cpu占用率。
2
执行时间
查询所需时间,单位:
秒。
3
并行度
查询开启并行度。
4
表大小
测试数据表大小。
5
插入结果数
测试插入记录数。
6
压缩选项
是否对表进行压缩,Y或者N
4.5.3测试步骤
●主要以信令系统中I表到F表的数据汇聚场景,F表一般为空表或者空分区,记录执行时间与性能消耗。
●采用生产业务表I_USER_TRACE_STAT_D、I_LTE_SOC_HTTP_CAUSE_H作为源数据
●表数据量由原始数据逐步翻倍递增,例如100%、200%、400%。
●并行度分别从4个、8个、16个逐步递增
●分别对表压缩和不压缩进行测试
●测试语句如下:
4.5.4测试结果
关键指标
sql1(Exadata)
sql2
(Exadata)
sql1
(DDN)
sql2
(DDN)
Cpu
执行时间
并行度
表大小
插入结果数
是否压缩
五、存储性能测试
5.
5.1测试工具:
orion
此次存储性能测试主要采用oracle官方推出的软件orion工具,ORION(OracleI/OCalibrationTool)是校准用于Oracle数据库的存储系统I/O性能的独立工具,对于了解存储系统的性能有很大帮助。
5
5.1
5.1.1测试描述
测试目标是为了检测磁盘极限性能,此次测试随机抽取用作数据文件的磁盘,通过运行工具orion得到关键指标,并对比Exadata与DDN存储的性能。
5.1.2测试指标
序号
输出文件
指标
1
***_mbps.csv
PerformanceresultsoflargeIOsinMBPS(吞吐量)
2
***_iops.csv
PerformanceresultsofsmallIOsinIOPS(每秒IO次数)
3
***_lat.csv
LatencyofsmallIOs(响应时间)
5.1.3测试步骤
1解压缩ORION
用root用户解压软件:
unziporion_linux_x86-64.gz
解压完成后,生成ORION软件:
orion_linux_x86-64
2配置.lun文件,即将需要测试的磁盘写入该文件,例如:
/dev/sdc1
3执行orion命令:
orion_linux_x86-64-runsimple-testname***(lun文件名)-num_disks1
--注意这里的testname参数,只需要写文件名就可以了,orion会自动补上扩展名,如果写上扩展名,反而会报错。
4重复执行步骤2,3,测试其他磁盘,保证结果的准确性。
5.1.4测试结果
关键指标
Exadata
Disk1
Exadata
Disk2
DDN
Dsik1
DDN
Disk2
MaximumLargeMBPS
MaximumSmallIOPS
MinimumSmallLatency
注:
可以定制一些特殊的压力测试,如:
●测试32K和1MB随机读的组合
●测试1MB连续写流,仿真1MB的raid-0条带化
●假定IO类型全部是8K随机操作,压力类型,自动加压,从小到大,一直到存储压力极限
5.2测试工具:
calibrate_io
DBMS_RESOURCE_MANAGER.CALIBRATE_IO是11g引入的一个I/O校准的函数。
5.2
5.2.1测试描述
calibrate_io的特点:
1.能自动感知RAC架构,并非是从单个节点测试得到的结果;
2.测试以数据库的数据文件为基准,是与数据库贴合最紧密的一种测试方式;
3.测试的结果只有整体的性能数据,看不到单个物理磁盘的信息。
5.2.2测试指标
序号
参数
含义
1
max_iops
最大IOPS,即每秒所能获得的最大的I/O请求数。
其测试的I/O请求为基于随机分布,数据库块大小的读操作;
2
max_mbps
最大MBPS,即每秒所能获取的最大吞吐量,单位为MB。
其测试的请求I/O请求基于随机分布1M大小的读操作;
3
actual_latency
实际延迟,在最大IOPS的时候,基于数据库块大小的I/O请求的平均延迟,单位为毫秒。
5.2.3测试步骤
1.timed_statistics必须设置为TRUE;
2.异步I/O已经启用;如果使用文件系统,则FILESYSTEMIO_OPTIONS需要设置为SETALL。
3.可以通过以下命令来查询数据文件的异步I/O是否已经启用:
COLNAMEFORMATA50
SELECTNAME,ASYNCH_IOFROMV$DATAFILEF,V$IOSTAT_FILEI
WHEREF.FILE#=I.FILE_NO
ANDFILETYPE_NAME='DATAFILE';
4.DBMS_RESOURCE_MANAGER.CALIBRATE_IO这个函数需要提供2个参数作为输入;
num_physical_disks(物理磁盘的数量,默认为1)以及max_latency(物理磁盘的最大延迟,默认为20ms),测试完成以后生成3个结果;
5.测试语句:
SETSERVEROUTPUTON
DECLARE
latINTEGER;
iopsINTEGER;
mbpsINTEGER;
BEGIN
DBMS_RESOURCE_MANAGER.CALIBRATE_IO(1,10,
iops,mbps,lat);
DBMS_OUTPUT.PUT_LINE('max_iops='||iops);DBMS_OUTPUT.PUT_LINE('latency='||lat);DBMS_OUTPUT.PUT_LINE('max_mbps='||mbps);
END;
/
测试完成以后,会在底下显示测试的结果。
当然Oracle也提供了相应的动态性能视图供查询:
select*fromgv$io_calibration_status;
select*fromDBA_RSRC_IO_CALIBRATE;
5.2.4测试结果
关键指标
Exadata
DDN
max_iops
max_mbps
actual_latency
5.3测试工具:
xdd
5.3
5.3.1测试描述
XDD是一款常用的IO性能测试工具,可以运行在Linux,Windows平台,可提供存储磁盘阵列IO的准确性能。
5.3.2测试指标
序号
参数
含义
1
Bandwidth
存储盘阵可提供的裸设备持续读写带宽;
2
IOPS
存储盘阵可提供裸设备IOPS性能;
5.3.3测试步骤
测试示例:
读测试
xdd–opread–targets1/dev/sda9–reqsize128-mbytes64–passes3–verbose
写测试:
xdd–opwrite–targets1/dev/sda9–reqsize128-mbytes64–passes3–verbose
读写混合测试:
./xdd.linux-rw50-targets1/dev/sda9-reqsize2-mbytes1024–verbose
Xdd主要测试参数:
-blocksize[target]<#bytes/block>设置块字节大小,默认为1024字节。
-processorprocesor_number 设置运行在那个cpu上面
-reqsize 固定请求的字节大小(一次读写请求的字节大小,以块为单位)
-targets 指定要操作的目标对象
-op[target]read|write指定运行的是read还是write操作
-numreqs 限制传输的块的数量,(目的就是设置此次操作总共需要读或写的字节数量)
-kbytes 固定以k为单位限制传输的大小
-mbytes 固定以M为单位限制传输的大小
-rwratio(or–rw) 描述读写的比率,例如:
-rwratio30.2表示30.2%为读操作,剩余的为写操作
-passes运行的次数
-timelimit限定时间
5.3.4测试结果
关键指标
Exadata
DDN
Read/Writebandwidth
IOPS