[发明专利]一种存储系统数据一致性验证方法、系统、设备以及介质在审
申请号: | 202110840687.X | 申请日: | 2021-07-25 |
公开(公告)号: | CN113608692A | 公开(公告)日: | 2021-11-05 |
发明(设计)人: | 张洪鑫;孟祥瑞 | 申请(专利权)人: | 济南浪潮数据技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 刘小峰;陈黎明 |
地址: | 250000 山东省济南市中国(山东)自由贸易*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 存储系统 数据一致性 验证 方法 系统 设备 以及 介质 | ||
本发明公开了一种存储系统数据一致性验证方法,包括以下步骤:响应于接收到获取存储位置的指令,确定存储系统的引擎的类型;响应于引擎的类型为第一类型,根据指令中携带的对象的标识获取对象对应的元数据;基于元数据获取对象对应的逻辑地址和物理地址;将逻辑地址和物理地址返回发送指令的客户端以使客户端根据逻辑地址和物理地址直接在存储设备上获取对象对应的第一数据;通过存储系统读取对象对应的第二数据并将第一数据与第二数据进行对比,以对存储系统的数据一致性进行验证。本发明还公开了一种系统、计算机设备以及可读存储介质。本发明提出的方案能够快速定界不一致数据是写入硬盘时失败还是磁盘数据正确但在系统读取过程中出现错误。
技术领域
本发明涉及存储领域,具体涉及一种存储系统数据一致性验证方法、系统、设备以及存储介质。
背景技术
分布式存储系统会定义一种抽象的对象存储引擎称为ObjectStore,该存储引擎会针对不同类型的存储介质提供无差异、符合事务语义的本地对象存储服务,FileStore、BluesStore都是ObjectStore的一种具体实现。
在分布式存储系统开发及实际应用过程中经常有需要知道对象数据写入到磁盘上的实际位置以及获取对象在磁盘上的数据的需求,比如定位数据不一致问题时检查通过存储系统读取的对象数据与直接从磁盘上获取的对象数据是否一致以快速定界不一致数据是写入时失败还是磁盘数据正确但在系统读取过程中出现错误;查看对象数据在磁盘上的碎片化程度来对系统性能优化提供参考。
由于FileStore是通过操作系统自带的本地文件系统间接管理磁盘,所以通过FileStore写入的对象在操作系统级可以直接在写入目录下看到,能够比较方便的查看对象在磁盘上的数据。BlueStore是由自身接管裸设备从而可以绕过本地文件系统,不再需要执行对象与文件直接的转换,而是直接操作对象,这使得BlueStore的I/O路径大大缩短,I/O时延也随之得到改善,但是对获取对象在磁盘位置来查看对象在磁盘上数据产生了障碍。目前没有一种能够获取BlueStore下的对象数据在磁盘具体位置的方法。
发明内容
有鉴于此,为了克服上述问题的至少一个方面,本发明实施例提出一种存储系统数据一致性验证方法,包括以下步骤:
响应于接收到获取存储位置的指令,确定存储系统的引擎的类型;
响应于所述引擎的类型为第一类型,根据所述指令中携带的对象的标识获取所述对象对应的元数据;
基于所述元数据获取所述对象对应的逻辑地址和物理地址;
将所述逻辑地址和所述物理地址返回发送所述指令的客户端以使所述客户端根据所述逻辑地址和所述物理地址直接在存储设备上获取所述对象对应的第一数据;
通过所述存储系统读取所述对象对应的第二数据并将所述第一数据与所述第二数据进行对比,以对所述存储系统的数据一致性进行验证。
在一些实施例中,根据所述指令中携带的对象的标识获取所述对象对应的元数据,进一步包括:
在用于接收客户端的指令的线程中启动套接字线程;
利用所述套接字线程解析所述指令以得到待获取存储位置的对象的标识。
在一些实施例中,还包括:
根据所述对象对应的逻辑地址和物理地址确定所述第一数据在存储设备上的碎片化程度。
在一些实施例中,还包括:
响应于所述引擎的类型为第二类型,直接返回不支持。
在一些实施例中,还包括:
响应于所述引擎的类型为第二类型,返回所述对象在存储设备上的文件路径。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于济南浪潮数据技术有限公司,未经济南浪潮数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110840687.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种密封性好的高压油管接头
- 下一篇:一种水泥窑结圈结皮高效清理装置