一种数据测试方法、系统、装置及介质与流程
- 国知局
- 2024-07-31 20:14:24
本技术涉及数据处理领域,特别涉及一种数据测试方法、系统、装置及介质。
背景技术:
1、ssd(solid state drive,固态硬盘)数据一致性指的是保证存储在固态硬盘上的数据在各种操作和情况下都能正确、完整地存储和访问。在计算环境中,数据一致性对于数据的可靠性和完整性至关重要,一旦数据不一致或损坏,可能会导致数据丢失、系统崩溃或应用程序错误。
2、trim指令(擦除指令)是一种接口指令,用于告诉ssd要擦除哪些数据。具体而言,trim指令的执行包括如下两个步骤,步骤一:当操作系统删除ssd上的一个文件时,它会将文件占用的地址标记为“空”,以告诉硬盘此区域的数据可以擦除,但实际上这些数据仍然存在,硬盘本身并不知道这些数据已经无效。步骤二:当空闲时,主动垃圾回收将删除这部分标记为“空”的地址区域中的数据。
3、由此可见,trim的行为是分开的,且在步骤一完成之后,待擦除的文件对应的数据仍然时存在于ssd中的,只有在步骤二中的垃圾回收时才会将这部分数据回收。如果在垃圾回收之前发生了数据搬移或写入等,那么此时就会有数据发生错误的风险。造成数据前后不一致的问题。
技术实现思路
1、本技术的目的是提供一种数据测试方法、系统、装置及介质,强制搬移操作模拟垃圾回收过程,通过将强制搬移操作和预设操作结合,模拟了不同情况下的垃圾回收过程,在执行目标操作之后,通过判断是否与预期数据相同,确定测试地址中的数据在垃圾回收过程中是否发生错误,确保在测试过程中对固态硬盘中的数据进行了全面的检查,以有效地发现和解决数据一致性问题。
2、第一方面,本技术提供了一种数据测试方法,包括:
3、接收用户发送的测试需求,根据所述测试需求确定固态硬盘中的测试地址;
4、对所述测试地址中的数据执行目标操作,所述目标操作包括强制搬移和预设操作,所述预设操作为读写操作或无操作;
5、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,以评估所述固态硬盘中数据在执行所述强制搬移时数据的准确度。
6、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
7、根据所述测试需求从所述固态硬盘的所有地址中随机确定一段测试逻辑地址;
8、对所述测试地址中的数据执行目标操作,包括:
9、根据所述测试逻辑地址确定对应的测试物理地址,对所述测试物理地址中的数据进行强制垃圾回收;
10、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,包括:
11、在强制垃圾回收后,读取所述测试物理地址中的数据,并判断所述测试物理地址中的数据是否为0。
12、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
13、根据所述测试需求确定所述测试地址为所述固态硬盘的全部地址;
14、对所述测试地址中的数据执行目标操作,包括:
15、遍历所述固态硬盘的全部逻辑地址,得到所述固态硬盘对应的全部物理地址,对所述固态硬盘中的全部物理地址中的数据进行强制垃圾回收;
16、在执行所述目标操作,判断所述测试地址中的数据是否与预期数据相同,包括:
17、在强制垃圾回收后,读取所述固态硬盘的全部物理地址中的数据,并判断所述固态硬盘的全部物理地址中的数据是否均为0。
18、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
19、根据所述测试需求从所述固态硬盘的所有地址中随机确定n段测试逻辑地址,n段所述测试逻辑地址之间互不交叉,n为大于1的整数;
20、对所述测试地址中的数据执行目标操作,包括:
21、根据每段所述测试逻辑地址确定和自身测试逻辑地址对应的测试物理地址;
22、同时对n段所述测试物理地址中的数据进行强制垃圾回收;
23、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,包括:
24、在强制垃圾回收后,读取n段所述测试物理地址中的数据,并判断n段所述测试物理地址中的数据是否均为0。
25、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
26、根据所述测试需求从所述固态硬盘的所有地址中确定目标逻辑地址,所述目标逻辑地址依次为随机确定的一段测试逻辑地址、全盘逻辑地址及随机确定n段测试逻辑地址,所述全盘逻辑地址为所述固态硬盘的全部逻辑地址,n为大于1的整数;
27、对所述测试地址中的数据执行目标操作,包括:
28、在所述目标逻辑地址为随机确定的一段测试逻辑地址时,根据所述测试逻辑地址确定对应的测试物理地址,对所述测试物理地址中的数据进行强制垃圾回收;
29、在所述目标逻辑地址为全盘逻辑地址时,遍历所述固态硬盘的全部逻辑地址,确定所述全部逻辑地址对应的全部物理地址,对所述全部物理地址中的数据进行强制垃圾回收;
30、在所述目标逻辑地址为随机确定的n段测试逻辑地址时,确定每段所述测试逻辑地址对应的测试物理地址,同时对n段所述测试物理地址中的数据进行强制垃圾回收;
31、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,包括:
32、在所述目标逻辑地址为随机确定的一段测试逻辑地址时,读取所述测试物理地址中的数据,并判断所述测试物理地址中的数据是否为0;
33、在所述目标逻辑地址为全盘逻辑地址时,读取所述固态硬盘的全部物理地址中的数据,并判断所述固态硬盘的全部物理地址中的数据是否均为0;
34、在所述目标逻辑地址为随机确定的n段测试逻辑地址时,读取n段所述测试物理地址中的数据,并判断n段所述测试物理地址中的数据是否均为0。
35、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
36、根据所述测试需求从所述固态硬盘的全部地址中随机确定一段搬移测试逻辑地址和一段读写测试逻辑地址;
37、对所述测试地址中的数据执行目标操作,包括:
38、根据所述搬移测试逻辑地址确定对应的搬移测试物理地址,根据所述读写测试逻辑地址确定对应的读写测试物理地址;
39、对所述搬移测试物理地址中的数据进行强制垃圾回收,并同时从所述读写测试物理地址中读取数据或向所述读写测试物理地址中写入预设数据;
40、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,包括:
41、判断所述搬移测试物理地址中的数据是否为0、以及从所述读写测试物理地址中读出的数据是否为目标数据或向所述读写测试物理地址中写入的数据是否为所述预设数据。
42、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
43、根据所述测试需求确定所述固态硬盘的一半逻辑地址为搬移测试逻辑地址、以及确定所述固态硬盘的另一半逻辑地址为读写测试逻辑地址;
44、对所述测试地址中的数据执行目标操作,包括:
45、根据所述搬移测试逻辑地址确定对应的搬移测试物理地址,根据所述读写测试逻辑地址确定对应的读写测试物理地址;
46、对所述搬移测试物理地址中的数据进行强制垃圾回收,并同时从所述读写测试物理地址中读取数据或向所述读写测试物理地址中写入预设数据;
47、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,包括:
48、判断所述搬移测试物理地址中的数据是否为0、以及从所述读写测试物理地址中读出的数据是否为目标数据或所述读写测试物理地址中的数据是否为所述预设数据。
49、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
50、根据所述测试需求从所述固态硬盘的全部地址中随机确定n段搬移测试逻辑地址和n段读写测试逻辑地址,且n段所述搬移测试逻辑地址和n段所述读写测试逻辑地址之间互不交叉,n为大于1的整数;
51、对所述测试地址中的数据执行目标操作,包括:
52、根据每段所述搬移测试逻辑地址和每段读写测试逻辑地址确定对应的搬移测试物理地址和读写测试物理地址;
53、同时对n段所述搬移测试物理地址中的数据进行强制垃圾回收,并同时从n段所述读写测试物理地址中读取数据或同时向n段所述读写测试物理地址中写入预设数据;
54、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,包括:
55、判断n段所述搬移测试物理地址中的数据是否均为0、以及从所述读写测试物理地址中读出的数据是否均为目标数据或n段所述读写测试物理地址中的数据是否均为所述预设数据。
56、在一种实施例中,根据所述测试需求确定固态硬盘中的测试地址,包括:
57、根据所述测试需求从所述固态硬盘的所有地址中确定目标逻辑地址,所述目标逻辑地址依次为随机确定的一段搬移测试逻辑地址和一段读写测试逻辑地址、所述固态硬盘的一半逻辑地址作为搬移测试逻辑地址及所述固态硬盘的另一半逻辑地址作为读写测试逻辑地址、随机确定的n段搬移测试逻辑地址和n段读写测试逻辑地址,且n段所述搬移测试逻辑地址和n段所述读写测试逻辑地址之间互不交叉,n为大于1的整数;
58、对所述测试地址中的数据执行目标操作,包括:
59、在所述目标逻辑地址为随机确定的一段搬移测试逻辑地址和一段读写测试逻辑地址时,或,在所述目标逻辑地址是所述固态硬盘的一半逻辑地址作为搬移测试逻辑地址及所述固态硬盘的另一半逻辑地址作为读写测试逻辑地址时,根据所述搬移测试逻辑地址确定对应的搬移测试物理地址,根据所述读写测试逻辑地址确定对应的读写测试物理地址;对所述搬移测试物理地址中的数据进行强制垃圾回收,并同时从所述读写测试物理地址中读取数据或向所述读写测试物理地址中写入预设数据;
60、在所述目标逻辑地址为随机确定的n段搬移测试逻辑地址和n段读写测试逻辑地址时,根据每段所述搬移测试逻辑地址和每段读写测试逻辑地址确定对应的搬移测试物理地址和读写测试物理地址;同时对n段所述搬移测试物理地址中的数据进行强制垃圾回收,并同时从n段所述读写测试物理地址中读取数据或同时向n段所述读写测试物理地址中写入预设数据;
61、在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同,包括:
62、在所述目标逻辑地址为随机确定的一段搬移测试逻辑地址和一段读写测试逻辑地址时,或,在所述目标逻辑地址是所述固态硬盘的一半逻辑地址作为搬移测试逻辑地址及所述固态硬盘的另一半逻辑地址作为读写测试逻辑地址时,判断所述搬移测试物理地址中的数据是否为0、以及从所述读写测试物理地址中读出的数据是否为目标数据或所述读写测试物理地址中的数据是否为所述预设数据;
63、判断n段所述搬移测试物理地址中的数据是否均为0、以及从所述读写测试物理地址中读出的数据是否均为目标数据或n段所述读写测试物理地址中的数据是否均为所述预设数据。
64、第二方面,本技术还提供了一种数据测试系统,包括:
65、地址确定单元,用于接收用户发送的测试需求,根据所述测试需求确定固态硬盘中的测试地址;
66、操作执行单元,用于对所述测试地址中的数据执行目标操作,所述目标操作包括强制搬移和预设操作,所述预设操作为读写操作或无操作;
67、判断单元,用于在执行所述目标操作后,判断所述测试地址中的数据是否与预期数据相同。
68、第三方面,本技术还提供了一种数据测试装置,包括:
69、存储器,用于存储计算机程序;
70、处理器,用于在执行计算机程序时,实现上述所述的数据测试方法的步骤。
71、第四方面,本技术还提供了一种非易失性存储介质,所述非易失性存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述所述的数据测试方法的步骤。
72、本技术提供了一种数据测试方法、系统、装置及介质,涉及数据处理领域,用于解决强制搬移过程中存在的数据一致性问题。该方案接收用户发送的测试需求,根据这些需求,确定测试地址,并对测试地址执行目标操作,这些目标操作包括强制搬移和预设操作;在执行目标操作后,对测试地址中的数据进行检查,以确定它们是否与预期数据相同。本技术中,强制搬移操作模拟垃圾回收过程,通过将强制搬移操作和预设操作结合,模拟了不同情况下的垃圾回收过程,在执行目标操作之后,通过判断是否与预期数据相同,确定测试地址中的数据在垃圾回收过程中是否发生错误,确保在测试过程中对固态硬盘中的数据进行了全面的检查,以有效地发现和解决数据一致性问题。
本文地址:https://www.jishuxx.com/zhuanli/20240731/185511.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表