读数据的方法、数据处理方法及相关存储设备的制造方法
【技术领域】
[0001] 本发明涉及数据处理领域,尤其涉及读数据的方法、数据处理方法及相关存储设 备。
【背景技术】
[0002] 快照(Snapshot)是对指定数据集合的一个完全可用的拷贝,该拷贝包含源数据拷 贝时间点的静态映像,其作用主要是在线数据备份与恢复。虚拟快照是快照技术的一种,虚 拟快照不生成完整的物理上的数据拷贝,而是通过映射表来定位数据位置。存储设备可以 划分为多个卷,卷与卷之间存在级联关系。卷可以分为源卷和快照卷,源卷为第一个快照卷 的上级卷,第一快照卷为源卷的下级卷,第二快照卷为第一快照卷的下级卷,依此类推其他 快照卷之间的级联关系。
[0003] 现有技术中读数据的方法大致如下:主机向存储设备发送读I/O指令,若数据没有 写在该读I/O指令指定的卷中,那么存储设备会查询指定卷的上一级卷,以从下级到上级的 顺序,逐一查询存储设备包含的卷,直至查找到数据所在卷,从其中读取数据。
[0004] 在实际应用中,数据可能写在与指定卷有级联关系的任意一个卷上,如果数据没 有写在指定卷,那么需要对指定卷的上级卷进行逐级查询,在最坏的情况下在源卷中才能 读取数据,当卷的级数很多时,需要进行多次查询,因此读写性能不佳。另外,由于数据存储 位置的不确定,因此查询数据的次数是随机的,在多次读数据的情况下,读数据的时间可能 相差很大,读数据性能会发生波动。
【发明内容】
[0005] 本申请提供了读数据的方法、数据处理方法以及相关存储设备,能够提高读写数 据的效率,提高数据读写性能的稳定性。
[0006] 本申请第一方面提供一种读数据的方法,所述方法应用于存储设备中,存储设备 包括卷,卷包括源卷和多个快照卷,源卷用于保存写入存储设备的数据;多个快照卷中的第 一个快照卷是源卷的快照,除第一快照卷之外的其余快照卷均是最近一次快照卷的快照, 并且每个卷分配有标识;所述方法包括:接收读数据指令,读数据指令包括卷的标识和起始 地址;根据起始地址确定数据块标识,根据卷的标识,以及数据块标识与预先设置的对应关 系确定待读取数据所在的快照卷的标识,预先设置的对应关系包括卷的标识、数据块标识、 与快照卷的标识之间的对应关系;从与确定出的快照卷的标识对应的快照卷中读取待读取 数据。
[0007] 按照这种实施方式,当主机读快照时,由于存储设备为每个卷的数据块预先设置 了相应的对应关系,存储设备利用卷标识和数据块标识进行一次查找,就可以查找到待读 取数据并返回给主机,无需进行多次查找,因此提高了读快照的效率。另外,在多次读快照 的情况下,每次读取数据的时间非常相近,因此提高了读快照的稳定性。
[0008] 结合第一方面,在第一方面的第一种实现方式中,每个快照卷包含有预先设置的 对应关系。
[0009]按照这种实施方式,在存储设备根据读数据指令查询任意一个快照卷时,就能够 根据其包含的预设对应关系确定待读取数据所在快照,提供了本发明实施的可行性。
[0010]本申请第二方面提供一种数据处理方法,所述方法应用于存储设备中,存储设备 包括卷,卷包括源卷和多个快照卷,源卷用于保存写入存储设备的数据;多个快照卷中的第 一个快照卷是源卷的快照,除第一快照卷之外的其余快照卷均是最近一次快照卷的快照, 并且每个卷分配有标识;所述方法包括:接收写数据指令,写数据指令包括待写数据、卷的 标识和起始地址;根据起始地址确定数据块标识,根据卷的标识、数据块标识以及预先设置 的对应关系,预先设置的对应关系包括卷的标识、数据块标识,与快照卷的标识之间的对应 关系;从与确定出的快照卷的标识对应的快照卷中获取需保护数据,将需保护数据写入卷 的标识对应的卷,将待写数据写入卷的标识对应的卷,并在预先设置的对应关系中,将快照 卷的标识修改为卷的标识。
[0011]按照这种实施方式,在快照卷的映射对象由需保护数据更改为待写数据的过程 中,存储设备利用卷标识和数据块标识,通过一次查找,可以查找到快照卷所映射的数据, 并对该数据进行保护,无需逐级查找快照卷,减少了查找数据的时间,因此提高了数据处理 效率。另外,在多次执行上述数据处理方法的情况下,每次数据处理的时间非常相近,因此 提高了数据处理的稳定性。
[0012] 结合第二方面,在第二方面的第一种实现方式中,将需保护数据写入卷的标识对 应的卷包括:将需保护数据写入数据保护空间,数据保护空间属于与卷的标识对应的卷。
[0013] 按照这种实施方式,将需保护数据写入数据保护空间之后,主机读快照时,可以从 快照中读取需保护数据,避免了需保护数据被后来写入的数据覆盖而丢失的情况。
[0014] 结合第二方面的第一种实现方式,在第二方面的第二种实现方式中,将需保护数 据写入卷的标识对应的卷包括:根据卷的标识以及数据块标识,将待写数据写入卷的数据 块,卷的数据块与数据块标识对应。
[0015] 按照这种实施方式,当主机读数据时,存储设备可以从该卷的数据块中读取待写 数据。
[0016] 结合第二方面的以上任意一种实现方式,在第二方面的第四种实现方式中,每个 快照卷包含有预先设置的对应关系。
[0017] 按照这种实施方式,在存储设备根据写数据指令查询任意一个快照卷时,就能够 根据其包含的预设对应关系确定需保护数据所在快照,提供了本发明实施的可行性。
[0018] 本申请第三方面提供一种存储设备,具有实现第一方面读数据方法的功能,功能 可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多 个与上述功能相对应的模块。
[0019] -种可能的实现方式中,存储设备包括通讯接口、控制器、存储器以及总线;通讯 接口、控制器和存储器之间通过总线相互连接,存储器用于存储数据以及操作指令,其中, 通过调用存储器存储的操作指令,控制器用于执行以下方法:控制通讯接口接收读数据指 令,读数据指令包括卷的标识和起始地址,根据起始地址确定数据块标识,根据卷的标识, 以及数据块标识与预先设置的对应关系确定待读取数据所在的快照卷的标识,预先设置的 对应关系包括卷的标识、数据块标识、与快照卷的标识之间的对应关系,从与确定出的快照 卷的标识对应的快照卷中读取待读取数据。
[0020] 按照这种实施方式,当主机读快照时,由于每个卷的数据块预先设置了相应的对 应关系,控制器利用卷标识和数据块标识进行一次查找,就可以查找到待读取数据并返回 给主机,无需进行多次查找,因此提高了读快照的效率。另外,在多次读快照的情况下,每次 读取数据的时间非常相近,因此提高了读快照的稳定性。
[0021] 可选的,每个快照卷包含有预先设置的对应关系。
[0022] 第四方面提供一种存储设备,具有实现第二方面中数据处理方法的功能。
[0023] -种可能的实现方式中,存储设备包括通讯接口、控