CN105830042B - 利用描述读取和写入请求的数据迁移系统和方法 - Google Patents

利用描述读取和写入请求的数据迁移系统和方法 Download PDF

Info

Publication number
CN105830042B
CN105830042B CN201380080628.0A CN201380080628A CN105830042B CN 105830042 B CN105830042 B CN 105830042B CN 201380080628 A CN201380080628 A CN 201380080628A CN 105830042 B CN105830042 B CN 105830042B
Authority
CN
China
Prior art keywords
driver
descriptor
description
data structure
tape
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201380080628.0A
Other languages
English (en)
Other versions
CN105830042A (zh
Inventor
C.巴拉德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Publication of CN105830042A publication Critical patent/CN105830042A/zh
Application granted granted Critical
Publication of CN105830042B publication Critical patent/CN105830042B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/008Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires
    • G11B5/00813Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0682Tape device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

可以接收描述读取请求。响应于描述读取请求可以返回对象和描述符。对象可以从卷中来检索。对象可以被分析以产生描述符,其可以指示该对象是磁带标记还是数据记录。

Description

利用描述读取和写入请求的数据迁移系统和方法
背景技术
磁带数据迁移是把源磁带卷上的数据转移到目标磁带卷的过程。源或目的磁带卷可以是虚拟或物理磁带卷。例如,可以将数据从物理磁带迁移到虚拟磁带以转换到新的备份解决方案。作为另一示例,可以将数据从虚拟磁带迁移到物理磁带用于存档的目的。作为进一步的示例,数据可以在不同的物理磁带之间进行迁移以利用改进的磁带技术。
附图说明
在以下详细的描述中并且参考附图对某些示例进行描述,其中:
图1图示出利用描述读取和写入请求的示例数据迁移系统;
图2图示出响应于描述读取请求的示例方法;
图3图示出示例描述数据结构;
图4图示出另一示例描述数据结构;
图5图示出包括描述写入器的示例驱动器;以及
图6图示出包括存储迁移指令的非暂时性计算机可读介质的计算机。
具体实施方式
数据可以被存储在磁带上作为对象的序列。对象可以包括以各种磁带标记散布的数据记录。例如,磁带标记可以包括划定数据记录的文件标记以及指示分区、卷、磁带的结束、磁带的开始、标志、索引和其他非用户数据结构的标记。
信息的结构可以在不同的磁带存储实现方式之间相差很大。例如,不同的磁带可以具有不同的容量、可以利用不同的编码方法、可以或者可以不支持加密,以及可以或者可以不支持分区。作为进一步的示例,一些磁带存储实现方式可以使用固定大小的数据记录存储数据,而其他实现方式可以使用可变大小的数据记录存储数据。
文件系统信息或许不可从存储在磁带上的信息中获得。取而代之,磁带存储应用程序可以将文件系统信息维持在单独的介质上。此外,不同于硬盘或闪存驱动器,磁带上的数据可以不具有位置地址,并且可能需要顺序访问技术来检索。
为了适应这些特征,当从源磁带卷中检索数据时,磁带迁移应用程序可以映射数据以从检索到的数据重新创建数据结构或文件系统。磁带迁移应用程序然后可以根据重新创建的数据结构处理数据,并且把写入命令发给目标磁带驱动器以在目标磁带卷上重新创建数据结构。这可能要求磁带迁移应用程序执行复杂的指令,并且以供应商特定的或磁带格式特定的方式来实现。
该技术的各方面可以提供用于读取存储卷的描述读取请求和响应。响应于描述读取请求可以提供描述数据结构。描述数据结构可以包括对象和描述对象的描述符。返回的对象除了数据记录以外还可以包括磁带标记。例如,描述数据结构可以包括数据记录和指示对象是数据记录的描述符。作为另一示例,描述数据结构可以包括磁带标记和指示对象是磁带标记的描述符。在这个示例中,描述符还可以指示磁带标记的类型。
描述数据结构可以在描述写入请求之后提供给目标驱动器。目标驱动器可以使用描述数据结构来使用特定于目标驱动器的格式写入等效对象。例如,如果描述符指示对应的对象是磁带标记,那么目标驱动器可以写入等效的磁带标记。例如,与目标磁带标记相比,源磁带标记可能已被不同地编码。类似地,如果描述符指示对应的对象是数据记录,那么目标驱动器可以使用特定于目标驱动器的格式写入数据记录。例如,目标驱动器可以使用与源介质上使用的格式不同的编码方法、压缩方法或加密方法写入数据记录。这可以允许用户把数据迁移到新的磁带,以利用改进的存储或附加的可用特征。
在一些实现方式中,可以通过在目标磁带上重新创建源磁带的结构来把数据从源磁带迁移到目的磁带。在这些实现方式中,描述数据结构可以提供源磁带格式和目标磁带格式之间的中间格式。这可以允许数据迁移在无需迁移应用程序的情况下解析源数据或重新创建源文件系统。
图1图示出利用描述读取和写入请求的示例数据迁移系统。在这个示例中,计算机100经由输入/输出(I/O)102(诸如,网络接口或SCSI存储器接口)被连接到源驱动器105和目标驱动器109。计算机100可以执行迁移应用程序104以将数据从源驱动器105的源卷108迁移到目标驱动器109的目标卷112。迁移应用程序104可以被存储在非暂时性计算机可读介质103(诸如,随机存取存储器(RAM)、闪速存储器或存储器)上。在一些实现方式中,源驱动器105或目标驱动器109可以是磁带存储器,而卷108、112可以是磁带。源驱动器105或目标驱动器109也可以是虚拟磁带存储器,而卷108、112可以是虚拟磁带。
在数据迁移期间,计算机100可以把描述读取请求发给源驱动器105。源驱动器105可以经由I/O 106(诸如,网络接口或SCSI存储器接口)接收该请求。例如,描述读取请求可以作为小型计算机系统接口(SCSI)命令使用光纤通道(FC),以太网光纤通道(FCoE)、互联网SCSI(iSCSI)或串列SCSI(SAS)连接被传送到源驱动器105。
计算机100可以从源驱动器105接收描述数据结构。描述数据结构可以被传送到目标驱动器109。例如,源计算机100可以经由I/O 102把描述写入请求传送到目标驱动器109,所述写入请求可以经由I/O 111被目标驱动器接收。在一些实现方式中,描述写入请求可以作为SCSI命令使用FC、FCoE、iSCSI或SAS连接被传送到目标驱动器109。在接收到可用性确认之后,计算机100可以把描述数据结构传送到源驱动器。
源驱动器105可以包括连接到源存储卷108和I/O 106的描述读取器107。例如,描述读取器107可以使用硬件(诸如,专用集成电路(ASIC)和现场可编程门阵列(FPGA))、存储在非暂时性计算机可读介质上并由控制器执行的软件,或硬件和软件的组合来实现。描述读取器107可以读取卷108,并且响应于来自计算机100的描述读取请求提供描述数据结构。在一些实现方式中,描述数据结构包括从卷108中检索到的对象以及指示该对象是磁带标记还是数据记录的描述符。
目标驱动器109可以包括连接到目标存储卷112和I/O 111的描述写入器110。例如,描述写入器110可以使用硬件(诸如,ASIC和FPGA)、存储在非暂时性计算机可读介质上并由控制器执行的软件,或硬件和软件的组合来实现。描述写入器110可以解析接收到的描述数据结构的描述符以确定对象是磁带标记还是数据记录。然后,描述写入器110可以把该对象写入卷112。在一些实现方式中,描述写入器110可以以与对象如何被存储在源卷108中不同的格式把该对象写入卷112。例如,可以使用较早的线性磁带开放(LTO)标准格式把数据存储在源卷108上,并且可以使用后来的LTO标准格式把数据存储在目标卷112上。作为另一示例,源卷108可以是磁盘阵列、云存储系统或网络附加存储器(NAS)。在这个示例中,源卷108上的数据可以被物理存储在磁盘存储器的地址块中,但呈现为存储在虚拟磁带卷中。目标卷112可以是使用磁盘阵列、云存储系统或NAS实现的另一虚拟磁带卷,或者目标卷112可以是磁带卷。
图2图示出响应于描述读取请求的示例方法。例如,示例方法可以在数据迁移过程期间由源驱动器(诸如,图1的源驱动器105)来执行。
所述示例方法可以包括接收描述读取请求的步骤201。例如,描述读取请求可能是SCSI命令的形式。在一些实现方式中,描述读取请求可以包括附加的参数。例如,描述读取请求可以包括指示响应的描述数据结构的最大长度的参数。作为另一示例,源驱动器可以支持加密,并且描述读取请求可以包括指示是否返回加密或解密数据的参数。例如,如果目标驱动器支持与源驱动器相同的加密协议,那么数据可以在不被解密的情况下从源卷迁移到目标卷。作为进一步的示例,源驱动器可以在将数据存储在源卷之前压缩该数据。描述读取请求可以包括指示是否返回压缩或未压缩数据的参数。如果目标驱动器支持与源驱动器相同的压缩协议,那么返回压缩数据可以降低带宽要求或速度数据迁移。
所述示例方法还可以包括读取卷以检索对象的步骤202。例如,卷可以是磁带卷或虚拟磁带卷。在一些实现方式中,对象可以是磁带标记或数据记录。
在一些实现方式中,对象可以是将要被驱动器读取的下一个对象。例如,卷可以被顺序访问,并且对象可能是磁带的当前位置后的序列中的下一个对象。
在一些实现方式中,如果对象是数据记录,则该数据记录可能是部分数据记录。例如,所述部分数据记录可能是存储在两个文件标记之间的用户数据的一部分。例如,如果在步骤201中接收到的描述读取请求包括最大长度,并且返回整个记录将超过所述最大长度,那么对象可以是不超过最大长度的部分数据记录。
在进一步的实现方式中,步骤202可以包括读取卷以检索多个对象。例如,如果在步骤201中接收到的请求包括最大长度,那么多个对象可以是具有小于最大长度的总长度的对象集。
所述示例方法还可以包括分析对象以产生指示该对象是磁带标记还是数据记录的描述符的步骤203。例如,如果对象是磁带标记,则描述符可以指示该对象是否是文件标记、分区标记、磁带指示符的结束、磁带指示符的开始、卷指示符或其他类型的磁带标记。在一些实现方式中,描述符可以是从对象类型到位序列的映射的范围中的位序列。例如,不同的位序列可以用于文件标记、分区标记、部分数据记录、整个数据记录、压缩数据记录、未压缩数据记录、加密数据记录、未加密数据标记,以及用于可被检索的每个其他类型的对象。
在一些实现方式中,描述符还可以指示与对象相关的其他参数。例如,描述符可以具有指示对象是磁带标记还是数据记录的第一字段,以及可以具有指示对象的长度的第二字段。
如果步骤202包括读取卷以检索多个对象,那么步骤203可以包括分析所述多个对象以产生对应的多个描述符。每个描述符可以指示对应的对象是磁带标记还是数据记录。此外,每个描述符可以指示后继描述符的位置。例如,如果每个描述符先于其对应的对象,那么每个描述符可以包括表示其对应对象的长度的字段。这可以指示后继描述符的位置。
在一些实现方式中,如果步骤202包括读取卷以检索多个对象,那么步骤203可以包括分析所述多个对象以产生针对相同对象类型的每个序列的不同描述符。例如,如果所述多个对象包括多个数据记录的序列,那么可以产生单一描述符来描述数据记录的序列。作为另一示例,如果所述多个对象包括多个文件标记的序列,那么可以产生单一描述符来描述文件标记的序列。在这些实现方式中,所产生的描述符可以包括指示由描述符描述的对象的数目的字段。
所述示例方法还可以包括返回对象和描述符的步骤204。例如,对象和描述符可以在描述数据结构中一起被返回。如果描述读取请求包括指示返回的数据类型(诸如,加密或未加密,或者压缩或未压缩)的参数,那么数据记录可以以由参数所指示的格式返回。在一些实现方式中,描述符可以指示数据记录的格式。如果步骤202包括读取卷以检索多个对象,那么步骤204可以包括返回所述多个对象及对应的描述符。在一些实现方式中,所述多个对象可以按照与它们在存储卷上存储的相同次序被返回。在其他实现方式中,可以按照与它们如何被存储在存储卷上不同的次序返回多个对象。在这些实现方式中,描述读取请求可以指定对象是否以它们存储的次序或以不同的次序被返回。
图3图示出可在步骤204中返回的示例描述数据结构300。例如,示例描述数据结构300可以是描述数据结构的有效载荷的全部或一部分。在这个示例中,结构300按照一对描述符301、303(每个后面是它们描述的对象302、304)的序列被组织。例如,每个描述符301、303可以形成头部,以及每个对象302、304可以形成主体。在一些实现方式中,描述符301、303包括后继描述符的位置的指示。例如,第一个描述符301可以包括表示对象302的长度的长度字段。这可以指示紧接着第一个对象302之后的第二个描述符的位置。在另一实现方式中,描述符301、303可以描述多个对象303、304。例如,描述符301、303可以描述具有相同类型的对象的序列。在这些实现方式中,描述符301、303可以包括指示由对应的描述符301、303所描述的对象302、304的数目的序列长度字段。
在一些实现方式中,对象302、304的集合具有小于或等于最大长度的总长度。在一些实现方式中,所述最大长度可以通过在步骤201中接收到的请求来设置。在其他实现方式中,最大长度被设置先验(priori)。例如,最大长度可以通过磁带驱动器制造商或应用程序按照用于固定大小访问模式的固定传送大小来设置。在各种实现方式中,部分数据记录可被允许作为对象302、304。例如,如果包括整个数据记录作为最后一个对象304将超过最大长度,那么最后一个对象304可以是部分数据记录。作为另一示例,最大长度可能比整个数据记录的大小更小,并且结构300可能仅包括单一部分数据记录作为对象302。在其他实现方式中,部分数据记录可能不会被允许作为对象302、304。在这样的实现方式中,数据结构300可以包括尽可能多的对象302、304而不超过最大长度。最后一个对象304之后的对象可以被包括在后继步骤204之后返回的后继数据结构300中。
图4图示出可在步骤204中返回的另一示例描述数据结构400。在这个示例中,描述符401、402被包括在数据结构400的第一部分中,而对象403、404被包括在该数据结构的第二部分中。例如,描述符401、402可被包括在数据结构的头部中,而对象403、404可被包括在该数据结构的主体中。对象403、404及描述符401、402可以以其他方式类似于数据结构300的对象302、304和描述符301、303。
图5图示出包括描述写入器502的示例驱动器500。例如,所述示例驱动器500可以是磁带迁移操作中的目标驱动器(诸如,图1的驱动器109)。在各种实现方式中,示例驱动器500可以是磁带驱动器或虚拟磁带驱动器。
示例驱动器500可以包括输入端501,以接收描述数据结构。例如,输入端501可以是接口,诸如FC接口、FCoE接口、SATA接口或其他存储器驱动器接口。描述数据结构可以包括指示对象是磁带标记还是数据记录的描述符和对象。在一些实现方式中,描述数据结构可以包括多对对象及对应的描述符。例如,描述数据结构可以是关于图3或4图示和描述的类型。
示例磁带驱动器500还可以包括描述写入器502,其可以包括分析仪503和写入器504。例如,描述写入器502可以类似于驱动器109的描述写入器110。在一些实现方式中,描述写入器502可以以硬件、软件或二者的组合实现。例如,描述写入器502可以使用ASIC、FPGA或存储在非暂时性计算机可读介质上并由控制器执行的软件来实现。
分析仪503可以解析描述数据结构的描述符,以确定对象是磁带标记还是数据记录。在一些实现方式中,如果对象是磁带标记,则分析仪503可以解析描述符以确定其是什么类型的磁带标记。此外,如果对象是数据记录,则分析仪503可以解析描述符以确定数据记录的格式。例如,分析仪503可以确定数据记录是否被压缩、未被压缩、加密或未被加密。如果分析仪503确定数据记录被压缩或加密,则分析仪503可以命令写入器504放弃否则可能会发生的压缩或加密步骤。
如上所讨论的,在一些实现方式中,描述数据结构包括多对描述符及对应的对象。在这些实现方式中,分析仪503可以解析多对中的每个相应的描述符。分析仪503可以确定每个相应的对应对象是磁带对象还是数据记录。此外,在一些实现方式中,描述符可以包括后继描述符的位置。例如,描述符可以包括指示对应对象长度的字段。如果描述数据结构具有交替布置的描述符及对应的对象,那么这一长度字段可以指示后继描述符的位置。在这些实现方式中,分析仪503可以分析描述符以确定后继描述符的位置。分析仪503然后可以分析后继描述符以确定后继对象是磁带标记还是数据记录。
写入器504可以把磁带标记或数据记录写入到存储卷505。例如,所述存储卷505可以是磁带上的卷,并且写入器504可以包括写入头部。作为另一示例,卷505可以是虚拟磁带驱动器。写入器504可以以与磁带标记或数据记录被最初存储的格式不同的格式把磁带标记或数据记录写入到存储卷505。例如,数据记录可能已经按第一代LTO的格式被存储,而写入器504可以使用第二代、不同的LTO格式写入数据记录。作为另一示例,数据记录可能已被存储在未加密状态,而写入器504可以以加密状态来存储数据记录。作为进一步的示例,数据记录可能已被存储在虚拟磁带驱动器中作为硬盘阵列上的数据块,而写入器504可以把数据记录存储在磁带卷505上。
如上所讨论的,在一些实现方式中,描述数据结构包括多对描述符及对应的对象。在这些实现方式中,写入器504可以写入多对中的每个相应的磁带标记或数据记录。
图6图示出包括存储迁移指令604的非暂时性计算机可读介质603的计算机600。在各种实现方式中,所述非暂时性介质603可以包括诸如随机存取存储器(RAM)、闪速存储器、存储器、其他非易失性介质或其组合之类的介质。计算机100可以包括接口601,以连接到源或目标驱动器。计算机100还可以包括连接到接口601和非暂时性介质603的处理器602,以执行迁移指令604。
计算机600可以执行迁移指令604以把源驱动器上的源卷的内容迁移到目标驱动器上的目标卷。例如,计算机600可以按类似于图1的计算机100的方式操作。
指令604可以包括描述读取请求指令集605。当执行时,描述读取指令集605可以致使处理器602把描述读取请求传送到驱动器。例如,处理器602可以使用接口601来把描述读取请求传送到源驱动器,诸如图1的源驱动器105。在一些实现方式中,描述读取请求可以包括指定期望的描述数据结构的参数的字段。例如,描述读取请求可以包括最大返回长度、用于压缩或未压缩数据的请求或用于加密或未加密数据的请求。
指令604还可以包括描述数据结构处理指令607。当执行时,处理指令可以致使处理器602从驱动器接收描述数据结构608。处理器602可以使用接口601来接收描述数据结构608,并且可以将描述数据结构608存储在介质603中。例如,计算机600可以将描述数据结构608暂时存储在RAM中,而指令604被存储在永久性存储器中。描述数据结构608可以包括对象610和描述符609。描述符609可以指示对象610是磁带标记还是数据记录。例如,描述数据结构608可以在执行描述读取方法(诸如关于图2所描述的方法)之后由源驱动器(诸如,源驱动器105)产生。在一些实现方式中,描述数据结构608可以具有关于图3或4描述的格式。
在一些实现方式中,指令604进一步包括描述写入请求指令集606。当执行时,描述写入请求指令集606可以致使处理器602把描述写入请求传送到第二驱动器。例如,处理器602可以使用接口601来把描述写入请求传送到目标驱动器。例如,第二驱动器可以类似于图1的驱动器109或者图5的驱动器500。在这些实现方式中,描述数据结构处理指令607可以致使处理器602把描述数据结构608传送到第二驱动器。
在一些实现方式中,当执行时,迁移指令604致使处理器602把第一驱动器的卷的内容迁移到第二驱动器的卷。例如,迁移指令604可以致使处理器602重复地执行描述读取请求指令605,以把多个描述读取请求传送到第一驱动器。迁移指令604还可以致使处理器602重复地执行处理指令607,以接收多个描述数据结构608以及把多个描述数据结构608传送到第二驱动器。在一些实现方式中,描述数据结构608可以按照它们被接收的相同次序来传送。此外,磁带标记和数据记录的次序可以被保存在描述数据结构608中。此外,计算机600可以在不使用检索到的数据重新创建源磁带数据结构或文件系统的情况下,通过使用描述数据结构608作为中间数据结构把源驱动器的内容迁移到目标驱动器。
在前面的描述中,阐述了许多细节以提供对本文所公开的主题的理解。然而,在没有这些细节的一些或全部的情况下,可以实施实现方式。其他实现方式可以包括从以上所讨论的细节的修改和变化。意在所附权利要求覆盖这样的修改和变化。

Claims (20)

1.一种响应于描述读取请求的方法,其包含:
在驱动器处,从主控设备接收描述读取请求,所述描述读取请求请求返回描述数据结构,其中每个描述数据结构包含对象和针对对象的描述符,所述描述符指示所述对象是磁带标记还是数据记录;
经由所述驱动器读取卷以检索第一对象;
经由所述驱动器分析第一对象以产生指示第一对象是磁带标记还是数据记录的第一描述符;以及
响应于所述描述读取请求,从所述驱动器向所述主控设备返回第一描述数据结构,第一描述数据结构包含第一对象和第一描述符。
2.如权利要求1所述的方法,其中:
所述描述读取请求包括最大长度;
分析第一对象包含分析包括第一对象的多个对象以产生包括第一描述符的对应的多个描述符,所述多个描述符中的每一个描述符指示所述多个对象的对应对象是磁带标记还是数据记录;
所述多个对象具有小于或等于所述最大长度的总长度,以及
第一描述数据结构包括所述多个对象和对应的多个描述符。
3.如权利要求2所述的方法,其中所述多个对象按次序被存储在所述卷上,并且所述多个对象按次序被布置在第一描述数据结构中。
4.如权利要求1所述的方法,其中所述第一对象是部分数据记录。
5.如权利要求1所述的方法,
其中所述驱动器是磁带驱动器和虚拟磁带驱动器之一,并且
所述卷是物理磁带卷和虚拟磁带卷之一。
6.如权利要求1所述的方法,其中:
第一数据结构包括相同类型对象的序列,相同类型对象的序列包括第一对象;以及
分析第一对象包含分析相同类型对象的序列以产生第一描述符,以及
所述第一描述符对应于对象的所述序列中的每个对象并指示对象的所述序列中的每个对象是磁带标记还是数据记录。
7.如权利要求1所述的方法,其中
所述描述读取请求指定格式,并且
所述方法进一步包含:经由所述驱动器在所述描述数据结构中以指定格式包括第一对象。
8.如权利要求1所述的方法,其中
所述描述读取请求指定压缩状态,并且
所述方法进一步包含:经由所述驱动器在所述描述数据结构中以指定压缩状态包括第一对象。
9.如权利要求1所述的方法,其中
所述描述读取请求指定加密状态,并且
所述方法进一步包含:经由所述驱动器在所述描述数据结构中以指定加密状态包括第一对象。
10.一种驱动器,其包含:
驱动器的输入端,用以从主控设备接收包含第一对象和指示第一对象是磁带标记还是数据记录的第一描述符的描述数据结构;
驱动器的分析仪,用以解析第一描述符以确定第一对象是磁带标记还是数据记录;以及
驱动器的写入器,用以把第一等效磁带标记或第一等效数据记录以特定于所述驱动器的第一格式写入到所述驱动器的卷,第一等效磁带标记或第一等效数据记录是第一对象的等效物。
11.如权利要求10所述的驱动器,其中:
描述数据结构包含多对描述符及对应的对象,所述多对描述符及对应的对象包括第一对象和第一描述符;
所述分析仪用以解析所述多对中的每个相应的描述符,以确定每个相应的对应对象是磁带标记还是数据记录;以及
针对所述多对中的每一对,所述写入器用以以第一格式把等效磁带标记或等效数据记录写入到所述卷,所述等效磁带标记或等效数据记录是相应对的对象的等效物。
12.如权利要求11所述的驱动器,其中:
所述描述数据结构的对象是按次序的;以及
所述写入器用以把等效磁带标记或等效数据记录按所述次序写入到卷。
13.如权利要求10所述的驱动器,其中:
所述第一描述符指示格式。
14.如权利要求10所述的驱动器,
其中所述描述数据结构中的所述对象具有不同于第一格式的第二格式。
15.一种存储指令的非暂时性计算机可读介质,所述指令当被执行时,致使处理器来:
把描述读取请求传送到第一驱动器,其中每个描述读取请求用以命令源驱动器返回描述数据结构,所述描述数据结构包含对象和针对对象的描述符,所述描述符指示所述对象是磁带标记还是数据记录;以及
从第一驱动器接收第一描述数据结构,所述第一描述数据结构包含第一对象和指示第一对象是磁带标记还是数据记录的第一描述符。
16.如权利要求15所述的非暂时性计算机可读介质,存储进一步的指令,当进一步的指令被执行时,致使处理器来:
把描述写入请求传送到第二驱动器;以及
把第一描述数据结构传送到第二驱动器。
17.如权利要求16所述的非暂时性计算机可读介质,存储进一步的指令,当进一步的指令被执行时,致使处理器来:
通过把包括所述描述读取请求的多个描述读取请求传送到第一驱动器并且把包括第一描述数据结构的多个描述数据结构传送到第二驱动器来把第一驱动器的第一卷的内容迁移到第二驱动器的第二卷。
18.如权利要求17所述的非暂时性计算机可读介质,
其中所述处理器用以在不解析所述描述数据结构的情况下向第二驱动器发送描述数据结构。
19.如权利要求16所述的非暂时性计算机可读介质,存储进一步的指令,当所述进一步的指令被执行时致使处理器来:
当第一驱动器和第二驱动器支持相同的加密协议时,在所述描述读取请求中指定对象以加密状态被包括在描述数据结构中。
20.如权利要求16所述的非暂时性计算机可读介质,存储进一步的指令,当所述进一步的指令被执行时致使处理器来:
当第一驱动器和第二驱动器支持相同的压缩协议时,在所述描述读取请求中指定对象以压缩状态被包括在描述数据结构中。
CN201380080628.0A 2013-08-31 2013-08-31 利用描述读取和写入请求的数据迁移系统和方法 Active CN105830042B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/057743 WO2015030831A1 (en) 2013-08-31 2013-08-31 Described object and descriptor

Publications (2)

Publication Number Publication Date
CN105830042A CN105830042A (zh) 2016-08-03
CN105830042B true CN105830042B (zh) 2019-06-18

Family

ID=52587173

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380080628.0A Active CN105830042B (zh) 2013-08-31 2013-08-31 利用描述读取和写入请求的数据迁移系统和方法

Country Status (4)

Country Link
US (1) US9847098B2 (zh)
JP (1) JP6277276B2 (zh)
CN (1) CN105830042B (zh)
WO (1) WO2015030831A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10620860B2 (en) * 2017-02-13 2020-04-14 Oracle International Corporation System for storing data in tape volume containers

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1048462A (zh) * 1989-06-28 1991-01-09 国际商业机器公司 把若干小的记录组合成一个记录块记录在某种记录介质上
CN101159158A (zh) * 2006-10-02 2008-04-09 国际商业机器公司 检测数据块中的损坏的方法和系统
CN100514270C (zh) * 2004-05-14 2009-07-15 国际商业机器公司 虚拟带服务器中虚拟卷数据的动态载入

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6484473A (en) * 1987-09-25 1989-03-29 Nec Corp Magnetic tape copy system
US5274772A (en) * 1989-06-28 1993-12-28 International Business Machines Corporation Data processing systems having means for selectively combining records into signal blocks for recording in a record medium
JPH05151716A (ja) * 1991-11-28 1993-06-18 Dainippon Printing Co Ltd 磁気テープのデータバツクアツプ方法
US6453396B1 (en) 1999-07-14 2002-09-17 Compaq Computer Corporation System, method and computer program product for hardware assisted backup for a computer mass storage system
US6675257B1 (en) * 2000-06-28 2004-01-06 Microsoft Corporation System and method for managing storage space on a sequential storage media
JP4381678B2 (ja) 2000-10-06 2009-12-09 アムペックス・コーポレイション 記録装置間でデータを転送するシステムおよび方法
KR20030085843A (ko) 2002-05-02 2003-11-07 주식회사 케이티 테이프 드라이브 에뮬레이터의 데이터 기록 방법
US7047377B2 (en) 2002-08-20 2006-05-16 Gruintine Pueche, Inc. System and method for conducting an auction-based ranking of search results on a computer network
JP2005122433A (ja) 2003-10-16 2005-05-12 Fujitsu Ltd 磁気テープ装置
JP2008016117A (ja) 2006-07-05 2008-01-24 Fujitsu Ltd テープへのデータ書込方法、テープへのデータ書込プログラム、及びテープ記憶装置
US8862600B2 (en) 2008-04-29 2014-10-14 Accenture Global Services Limited Content migration tool and method associated therewith

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1048462A (zh) * 1989-06-28 1991-01-09 国际商业机器公司 把若干小的记录组合成一个记录块记录在某种记录介质上
CN100514270C (zh) * 2004-05-14 2009-07-15 国际商业机器公司 虚拟带服务器中虚拟卷数据的动态载入
CN101159158A (zh) * 2006-10-02 2008-04-09 国际商业机器公司 检测数据块中的损坏的方法和系统

Also Published As

Publication number Publication date
US20160217810A1 (en) 2016-07-28
US9847098B2 (en) 2017-12-19
JP6277276B2 (ja) 2018-02-07
JP2016533585A (ja) 2016-10-27
WO2015030831A1 (en) 2015-03-05
CN105830042A (zh) 2016-08-03

Similar Documents

Publication Publication Date Title
US10795578B2 (en) Deduplicating data based on boundary identification
US8898428B2 (en) Mapping locations of logical volume records on a physical stacked volume
AU2020203915B2 (en) Attributing consumed storage capacity among entities storing data in a storage array
US9870176B2 (en) Storage appliance and method of segment deduplication
US7251708B1 (en) System and method for maintaining and reporting a log of multi-threaded backups
US20220286511A1 (en) Network attached device for accessing removable storage media
US8856436B2 (en) Locating host data records on a physical stacked volume
US20160283340A1 (en) Methods and systems for real-time activity tracing in a storage environment
CN105830042B (zh) 利用描述读取和写入请求的数据迁移系统和方法
CN106611138B (zh) 一种ghost文件保密检查方法及装置
US11620089B2 (en) Non-volatile storage of high resolution tape directory
CN114556283B (zh) 一种数据写入、一致性检查和读取的方法及装置
KR101669722B1 (ko) 데이터베이스 관리 장치 및 방법
US12003776B2 (en) Reducing file sizes for media content
CN116069742B (zh) 一种压缩和解压方法及装置
US20230209089A1 (en) Reducing file sizes for media content
US10338855B2 (en) Optimized reading of multiple objects from tape
CN114610678A (zh) 一种文件访问方法、存储节点以及网卡
JP2013206489A (ja) 画像取得装置、画像取得方法及び画像取得プログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant