新浪博客

vdbench常见问题

2017-03-23 17:18阅读:
1-f参数后面多个配置文件是同时执行还是顺序执行;
-f后面的配置文件里的参数通过parseParameterLines()函数进行顺序解析,写入并生成输出文件parmfile.htmlparmscan.html(包含了完整的参数配置)。
vdbench常见问题
执行时,首先运行rd,进入RD中调用的wdfwd,然后进入WDFWD中的sdfsd(若有HD,同上调用)。
2-v校验中逻辑字节地址/数据校验关键字是存储在哪个位置;
数据块的大小是xfersize的值,数据校验时,每写入数据块512个字节包含一个8字节的lba和一个1字节的key值。
其中lba指的是字节地址,与文件系统的偏移量和文件的偏移量有关。
Key值记录了写入块的次数,每写入块一次,key值加
1,加到126后直接返回1
3-v校验中的校验是发生在什么时候;
每写入一次数据块时,先读后写,写前写后内容进行校验。
进行数据校验需要执行-v,也可以在参数文件中写入Validate=yes,也就是说,在配置文件执行生成系统文件后,校验一直进行。
4-vt时间戳显示在哪,是什么意思,是否可以查看;
内存中最后一次写入或读取成功的时间戳。可以在输出结果中查看:
vdbench常见问题 vdbench常见问题
5、逻辑地址有啥用。
Lba记录了每个数据块的地址,校验时根据lba方便查找校验错误的地方。
vdbench常见问题 vdbench常见问题
6、校验错输出script_name什么意思,data_errors参数的作用;
返回校验错误,描述出错的位置,方便测试人员定位查阅。如问题5,定位在fsd=fsd1文件系统中出错及第二行中显示的文件名字及出错的位置。
7-v该末尾一个字节。是否能校验么,报错的位置是否正确;
在文件末尾插入字节,可以被校验出。报错位置正确,定位在文件的结尾位置。
vdbench常见问题
8lba后面的值有什么意思;
lba指的是逻辑字节地址,与文件系统的偏移量和文件的偏移量有关。校验错误返回的lba指的是在文件中的出错位置。
9-j-v之间的区别;
-v的数据校验,校验文件会输出到内存中,但是一旦vdbench关闭或者系统重启,校验就会失败。而-j能进行持续校验,等下次重启时,会恢复原始数据重新校验。如果只写-j而不加-v,也会进行-v操作。
10-j中有几个fsd就有几个jnl文件map文件
是的
vdbench常见问题
运行./vdbench –j –f testcount ,生成日志文件所在的目录如下:
vdbench常见问题
11jnlmap文件有什么区别么?
开始执行时,vdbench会生成两个文件Map backup filejournal file。系统出现故障时(仅仅丢失了内存映射表中的数据),这两个文件由于保留了原始数据(恢复数据时首先读取journal文件的数据,如果失败,再从Map backup文件中写入),方便测试人员继续进行读写和校验。
1)正常时:内存中数据校验映射表的内容写入到backupjournal文件。日志更新内容持续写入到journal文件结尾部分并生成日志记录。
2)系统出现问题时: Vdbench重启并进行数据修复,从journal文件开始部分读出原始数据,并把数据更新到内存映射表中。一旦journal到达文件结尾,读取并验证用“modified” 标记的所有数据块。接着执行(1)过程。
如果由于系统崩溃,journal文件的原始数据写入内存映射表中失败,直接读取backup文件内容并写入。
综上,可以看出,map backup文件修复数据性能更高。
12、命令之间有没有冲突
没有,但是命令设置时必须-f后面加 parmfile文件,如果有-s命令则会模拟执行文件。如果命令中只有-j却无-v,则隐含着进行数据校验生成日志文件。
13count参数的意思
count=nn,mm 快速创建SD序列(nn是开始数字,mm是数字个数)
fsd=fsd,anchor=/ww,count=1,5)在/ww1-/ww5中创建fsd1-fsd5
如运行:
vdbench常见问题
/mnt目录下显示的目录结构如下:
vdbench常见问题
若在wd中限定fsd1,则只显示wwz1一个目录:
vdbench常见问题
若在fsd中限定fsd1,则会出错,如下
vdbench常见问题
vdbench常见问题
14rangewd的寻找范围,是否可以运用到fsd
文件系统中不可用, 测试过程如下:
vdbench常见问题
vdbench常见问题
15rdpct-rhpct-whpct区别
Sd中:
rdpct=nn
读操作的比例,默认为100%rdpct=80代表读写比例41
rhpct=nn
只在读裸设备时使用,读缓存命中率,默认值为0
whpct=nn
只在写裸设备时使用,写缓存命中率,默认值为0
Fsd中不存在rhpctwhpct参数:
rdpct在文件上的读写操作比例。rdpct=80代表读写比例41。必须同时添加fileio=random参数,不能留空(系统默认fileio=sequential
计算公式如下:
rdpct = read.operations * 100. / (read.operations + write.operations);
16、缓存命中,rhpct部分,1M的意思。
只针对sd而言。
每一个存储体积被分成两部分:hit area指用于缓存命中部分(这由hitarea=nn设定,hitarea默认为1M)miss areaSD剩下的部分缓存未命中的部分。
17xfersize=1-64kd)执行顺序
在文件系统中不支持这种方式。只支持xfersize=nnxfersize=x1,nn1,x2,nn2,…)其中nn1+nn2+…=100,报错如下:
vdbench常见问题
18xfersize=1k,10)这种格式,是报错还是按照4k块大小执行剩余的90%
直接报错,代码如下:
vdbench常见问题
19skewIO倾斜比,没有IOrate参数时,参数是否生效;
直接会报错
fsd中,fwdrate不存在时
vdbench常见问题
20skewIOPS生效还是对带宽生效
iops生效,skew时对fwdrateiorate的分配
21iorate指的是带宽还是iops
iops
22rd的名字是否有要求
没有要求,可以任意定义,只是个名字而已。
23count中,是否创建多个fsd?还是创建了5个目录?
多个fsd,每个fsd下又存在多个目录,见问题13
24count中,rd引入部分fsd是否可以?
可以,见问题13

我的更多文章

下载客户端阅读体验更佳

APP专享