JP6277276B2 - 記述オブジェクト及び記述子 - Google Patents

記述オブジェクト及び記述子 Download PDF

Info

Publication number
JP6277276B2
JP6277276B2 JP2016536071A JP2016536071A JP6277276B2 JP 6277276 B2 JP6277276 B2 JP 6277276B2 JP 2016536071 A JP2016536071 A JP 2016536071A JP 2016536071 A JP2016536071 A JP 2016536071A JP 6277276 B2 JP6277276 B2 JP 6277276B2
Authority
JP
Japan
Prior art keywords
tape
drive
descriptor
description
data structure
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
JP2016536071A
Other languages
English (en)
Other versions
JP2016533585A (ja
Inventor
バラード,カーティス
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 JP2016533585A publication Critical patent/JP2016533585A/ja
Application granted granted Critical
Publication of JP6277276B2 publication Critical patent/JP6277276B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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)

Description

テープデータ移行(migration)は、ソーステープボリューム上のデータをターゲットテープボリュームへ移動するプロセスである。ソース又はデスティネーションテープボリュームは、仮想的又は物理的なテープボリュームとすることが可能である。例えば、データは、新たなバックアップソリューションに移行するために物理的なテープから仮想的なテープへと移行することが可能である。別の例として、データは、アーカイブを目的として仮想的なテープから物理的なテープへと移行することが可能である。更なる例として、データは、改良されたテープ技術を利用するために異なる物理的なテープ間で移行することが可能である。
記述(described)読み出し要求及び記述(described)書き込み要求を使用した例示的なデータ移行システムを示している。 記述読み出し要求に応答する例示的な方法を示している。 例示的な記述(described)データ構造を示している。 別の例示的な記述データ構造を示している。 記述(described)書き込み手段を含む例示的なドライブを示している。 移行命令を格納した持続性コンピュータ読み取り可能媒体を含むコンピュータを示している。
以下では、図面を参照して特定の実施形態について説明する。
データは、一連のオブジェクトとしてテープ上に格納することが可能である。複数の該オブジェクトは、様々なテープマークが散在する複数のデータレコードを含むことが可能である。例えば、テープマークは、データレコードを区切るファイルマーク、並びに、パーティション、ボリューム、テープの終わり、テープの始まり、ラベル、インデックス、及びその他の非ユーザデータ構造を示すマークを含むことが可能である。
情報の構造は、異なるテープ記憶装置の実施形態間で大きく異なり得るものである。例えば、異なるテープは、異なる容量を有する可能性があり、異なる符号化方法を使用する可能性があり、暗号化をサポートし又はサポートしない可能性があり、及びパーティションをサポートし又はサポートしない可能性がある。更なる例として、テープ記憶装置の一実施形態では固定サイズのデータレコードを使用してデータを格納する可能性があり、別の実施形態では可変サイズのデータレコードを使用してデータを格納する可能性がある。
ファイルシステム情報は、テープ上に格納されている情報から得ることができない可能性がある。テープ記憶装置の応用例では、ファイルシステム情報を別個の媒体上に維持する場合がある。更に、ハードディスク又はフラッシュドライブとは異なり、テープ上のデータはロケーションアドレスを有さない可能性があり、及び読み出しのためにシーケンシャルアクセス技術を必要とする可能性がある。
かかる特徴に適応するために、テープ移行アプリケーションは、データがソーステープボリュームから読み出される際に、該読み出されたデータからデータ構造又はファイルシステムを再作成するように該データをマッピングする場合がある。次いで該テープ移行アプリケーションは、該再作成されたデータ構造に従ってデータを処理し、及びターゲットドライブへ書き込みコマンドを発行して、該ターゲットテープドライブ上に該データ構造を再作成することが可能である。これは、テープ移行アプリケーションが複雑な命令を実行することを必要とし、及び該テープ移行アプリケーションをベンダ固有又はテープフォーマット固有の態様で実施することを必要とするものである。
本技術の一態様は、記憶ボリュームから読みだしを行うための記述読み出し要求及び応答を提供することが可能である。記述データ構造は、前記読み出し要求に応じて提供することが可能である。該記述データ構造は、オブジェクト及び該オブジェクトを記述する記述子を含むことが可能である。返されるオブジェクトは、複数のデータレコードに加えて複数のテープマークを含むことが可能である。例えば、該記述データ構造は、データレコードと、オブジェクトがデータレコードであることを示す記述子とを含むことが可能である。別の例として、該データ構造は、テープマークと、オブジェクトがテープマークであることを示す記述子とを含むことが可能である。この例では、該記述子は、テープマークのタイプも示すことが可能である。
前記記述データ構造は、記述書き込み要求の後にターゲットドライブへ提供することが可能である。該ターゲットドライブは、該ターゲットドライブに固有のフォーマットを用いた等価なオブジェクトを書き込むために、前記記述データ構造を使用することが可能である。例えば、対応するオブジェクトがテープマークであることを記述子が示す場合、ターゲットドライブは、等価なテープマークを書き込むことが可能である。例えば、ソーステープマークは、ターゲットテープマークとは異なるよう符号化されたものであることが可能である。同様に、対応するオブジェクトがデータレコードであることを記述子が示す場合、ターゲットドライブは、該ターゲットドライブに固有のフォーマットを使用してデータレコードを書き込むことが可能である。例えば、ターゲットドライブは、ソース媒体上で使用されているフォーマットとは異なる所与の符号化方法、圧縮方法、又は暗号化方法を使用してデータレコードを書き込むことが可能である。これにより、ユーザが、改良された記憶装置又は更なる利用可能な特徴を利用するために、新たなテープへデータを移行することが可能となる。
実施形態によっては、ソーステープの構造をターゲットテープ上で再作成することにより、ソーステープからデスティネーションテープへデータを移行することが可能である。この実施形態では、記述データ構造は、該ソーステープのフォーマットと該ターゲットテープのフォーマットとの間の中間フォーマットを提供することが可能である。これにより、移行アプリケーションがソースデータを解析し又はソースファイルシステムを再作成することを必要とすることなく、データを移行することが可能となる。
図1は、前記記述読み出し要求及び記述書き込み要求を用いた例示的なデータ移行システムを示している。この実施形態では、コンピュータ100は、入出力102(ネットワークインタフェイス又はSCSIストレージインタフェイスなど)を介してソースドライブ105及びターゲットドライブ109に接続されている。コンピュータ100は、ソースドライブ105のソースボリューム108からターゲットドライブ109のターゲットボリューム112へデータを移行するために移行アプリケーション104を実行することが可能である。該移行アプリケーション104は、持続性コンピュータ読み取り可能媒体103(ランダムアクセスメモリ(RAM)、フラッシュメモリ、又はストレージなど)上に格納することが可能である。実施形態によっては、ソースドライブ105又はターゲットドライブ109をテープドライブとし、ボリューム108,112をテープとすることが可能である。また、ソースドライブ105又はターゲットドライブ109を仮想的なテープドライブとし、ボリューム108,112を仮想的なテープとすることが可能である。
移行時に、コンピュータ100は、ソースドライブ105に対し、記述読み出し要求を発行することが可能である。ソースドライブ105は、該読み出し要求を入出力106(ネットワークインタフェイス又はSCSIストレージインタフェイスなど)を介して受信することが可能である。例えば、該記述読み出し要求は、ファイバチャネル(FC)、FCoE(FC over Ethernet)、iSCSI(Internet SCSI)、又はSAS(Serial Attached SCSI)接続を使用してSCSI(Small Computer System Interface)コマンドとしてソースドライブ105へ送信することが可能である。
コンピュータ100は、ソースドライブ105から記述データ構造を受信することが可能である。該記述データ構造は、ターゲットドライブ109へ送信することが可能である。例えば、コンピュータ100は、記述書き込み要求を入出力102を介してターゲットドライブ109へ送信することが可能であり、該記述書き込み要求は、入出力111を介してターゲットドライブ109により受信されることが可能である。実施形態によっては、該記述書き込み要求は、FC、FCoE、iSCSI、又はSAS接続を使用してSCSIコマンドとしてターゲットドライブ109へ送信することが可能である。可用性応答を受信した後、コンピュータ100は、前記記述データ構造をソースドライブへ送信することが可能となる。
ソースドライブ105は、ソース記憶ボリューム108及び入出力106に接続された記述読み出し手段107を含むことが可能である。例えば、該記述読み出し手段107は、ハードウェア(ASIC(Application Specific Integrated Circuit)及びFPGA(Field Programmable Gate Array)など)、持続性コンピュータ読み取り可能媒体に格納され及びコントローラにより実行されるソフトウェア、又はハードウェア及びソフトウェアの組み合わせを使用して実施することが可能である。該記述読み出し手段107は、コンピュータ100からの記述読み出し要求に応じてボリューム108を読み出して記述データ構造を提供することが可能である。実施形態によっては、該記述データ構造は、該ボリューム108から読み出されたオブジェクトと、該オブジェクトがテープマークであるかデータレコードであるかを示す記述子とを含むものとなる。
ターゲットドライブ109は、ターゲット記憶ボリューム112及び入出力111に接続された記述書き込み手段110を含むことが可能である。例えば、該記述書き込み手段110は、ハードウェア(ASIC及びFPGAなど)、持続性コンピュータ読み取り可能媒体に格納され及びコントローラにより実行されるソフトウェア、又はハードウェア及びソフトウェアの組み合わせを使用して実施することが可能である。該記述書き込み手段110は、受信した前記データ構造の記述子を解析して前記記述データ構造のオブジェクトがテープマークであるかデータレコードであるかを判定することが可能である。次いで、該記述書き込み手段110は、該オブジェクトをボリューム112に書き込むことが可能である。実施形態によっては、該記述書き込み手段110は、ソースボリューム108に該オブジェクトが書き込まれた態様とは異なるフォーマットでボリューム112に該オブジェクトを書き込むことが可能である。例えば、以前のLTO(Linear Tape-Open)規格フォーマットを使用してソースボリューム108にデータを格納することが可能であり、及び最近のLTO規格フォーマットを使用してターゲットボリューム112にデータを格納することが可能である。別の例として、ソースボリューム108は、ディスクアレイ、クラウドストレージシステム、又はNAS(Network Attached Storage)とすることが可能である。この例では、ソースボリューム108上のデータは、ディスクストレージのアドレス指定されたブロック内に物理的に格納されるが、仮想的なテープボリューム内に格納されたものとして提示することが可能である。ターゲットボリューム112は、ディスクアレイ、クラウドストレージシステム、又はNASを用いて実施されたもう1つの仮想的なテープボリュームとすることが可能であり、又はターゲットボリューム112はテープボリュームとすることが可能である。
図2は、記述読み出し要求に応答する例示的な方法を示している。例えば、該例示的な方法は、データ移行プロセス中にソースドライブ(図1のソースドライブ105など)により実行することが可能である。
該例示的な方法は、前記記述読み出し要求を受信するステップ201を含むことが可能である。例えば、該記述読み出し要求は、SCSIコマンドという形をとることが可能である。実施形態によっては、該記述読み出し要求は、更なるパラメータを含むことが可能である。例えば、該記述読み出し要求は、応答する記述データ構造の最大長を示すパラメータを含むことが可能である。別の例として、前記ソースドライブは、暗号化をサポートすることが可能であり、該記述読み出し要求は、暗号化されたデータを返すべきか復号化されたデータを返すべきかを示すパラメータを含むことが可能である。例えば、ターゲットドライブがソースドライブと同じ暗号化プロトコルをサポートする場合には、該ソースドライブから該ターゲットドライブへデータを復号化なしで移行することが可能である。更なる例として、ソースドライブは、該ソースドライブにデータを格納する前に該データを圧縮することが可能である。前記読み出し要求は、圧縮データを返すべきか非圧縮データを返すべきかを示すパラメータを含むことが可能である。ターゲットドライブがソースドライブと同じ圧縮プロトコルをサポートする場合には、圧縮データを返すことにより帯域幅要件を軽減させ又はデータ移行速度を上昇させることが可能となる。
前記例示的な方法はまた、ボリュームに対して読み出しを行って1つのオブジェクトを読み出すステップ202を含むことが可能である。例えば、該ボリュームは、テープボリューム又は仮想的なテープボリュームとすることが可能である。実施形態によっては、前記オブジェクトは、テープマーク又はデータレコードとすることが可能である。
実施形態によっては、該オブジェクトは、ドライブにより読み出されるべき次のオブジェクトとすることが可能である。例えば、ボリュームに対してシーケンシャルにアクセスし、前記オブジェクトを、該テープの現在のロケーションの後のシーケンス中の次のオブジェクトとすることが可能である。
実施形態によっては、前記オブジェクトがデータレコードである場合、該データレコードは、部分的なデータレコードとすることが可能である。例えば、該部分的なデータレコードは、2つのファイルマーク間に格納されているユーザデータの一部とすることが可能である。例えば、前記ステップ201で受信した前記読み出し要求が最大長を含み、1レコード全体を返すと該最大長を超えることになる場合、前記オブジェクトは該最大長を超えない部分的なデータレコードとすることが可能である。
更なる実施形態では、前記ステップ202は、ボリュームに対して読み出しを行って複数のオブジェクトを読み出すことを含むことが可能である。例えば、前記ステップ201で受信した前記記述読み出し要求が最大長を含んでいる場合、該複数のオブジェクトは、該最大長未満の全長を有する一組のオブジェクトとすることが可能である。
この例示的な方法はまた、前記オブジェクトを解析して、該オブジェクトがテープマークであるかデータレコードであるかを示す記述子を生成するステップ203を含むことが可能である。例えば、該オブジェクトがテープマークである場合、該記述子は、該オブジェクトが、ファイルマーク、パーティションマーク、テープ終わり指示子、テープ始まり指示子、ボリューム指示子、又はその他のタイプのテープマークであることを示すことが可能である。実施形態によっては、該記述子は、複数のオブジェクトタイプから複数のビットシーケンスへの所定のマッピング範囲内の1つのビットシーケンスとすることが可能である。例えば、1つの異なるビットシーケンスは、ファイルマーク、パーティションマーク、部分的なデータレコード、全データレコード、圧縮データレコード、非圧縮データレコード、暗号化データレコード、非暗号化データマーク、及び読み出すことが可能なオブジェクトの互いのタイプに関するものとすることが可能である。
実施形態によっては、該記述子はまた、該オブジェクトに関する他のパラメータを示すことが可能である。例えば、該記述子は、該オブジェクトがテープマークであるかデータレコードであるかを示す第1のフィールドを有することが可能であり、及び該オブジェクトの長さを示す第2のフィールドを有することが可能である。
前記ステップ202が、ボリュームに対して読み出しを行って複数のオブジェクトを読み出すことを含む場合には、前記ステップ203は、該複数のオブジェクトを解析してそれらに対応する複数の記述子を生成することを含むことが可能である。該複数の記述子の各々は、それに対応するオブジェクトがテープマークであるかデータレコードであるかを示すことが可能である。更に、該複数の記述子の各々は、後続する記述子のロケーションを含むことが可能である。例えば、各記述子がそれに対応するオブジェクトに先行する場合、該各記述子は、それに対応するオブジェクトの長さを示すフィールドを含むことが可能である。これは、後続する記述子のロケーションを示すことが可能なものである。
実施形態によっては、前記ステップ202が、ボリュームに対して読み出しを行って複数のオブジェクトを読み出すことを含む場合には、前記ステップ203は、該複数のオブジェクトを解析して、同一のオブジェクトタイプの各シーケンス毎に異なる記述子を生成することが可能である。例えば、該複数のオブジェクトが、複数のデータレコードからなる1つのシーケンスを含む場合、該複数のデータレコードからなる該1つのシーケンスを記述するために単一の記述子を生成することが可能である。別の例として、該複数のオブジェクトが、複数のファイルマークからなる1つのシーケンスを含む場合、該複数のファイルマークからなる該1つのシーケンスを記述するために単一の記述子を生成することが可能である。この実施形態では、生成された記述子は、該記述子により記述される該複数のオブジェクトの個数を示すフィールドを含むことが可能である。
この例示的な方法はまた、前記オブジェクト及び前記記述子を返すステップ204を含むことが可能である。例えば、前記オブジェクト及び前記記述子は、所定の記述データ構造で共に返すことが可能である。前記記述読み出し要求が、戻り(returned)データタイプを示すパラメータ(暗号化又は非暗号化、圧縮又は非圧縮など)を含む場合には、該パラメータにより示されるフォーマットでデータレコードを返すことが可能である。実施形態によっては、前記記述子は、前記データレコードのフォーマットを示すことが可能である。前記ステップ202が、前記ボリュームに対して読み出しを行って複数のオブジェクトを読み出すことを含む場合には、前記ステップ204は、該複数のオブジェクトとそれらに対応する複数の記述子とを返すことを含むことが可能である。実施形態によっては、該複数のオブジェクトは、前記記憶ボリューム上に格納されている順序と同じ順序で返すことが可能である。別の実施形態では、該複数のオブジェクトは、前記記憶ボリューム上に格納されている順序とは異なる順序で返すことが可能である。これら実施形態において、前記記述読み出し要求は、該複数のオブジェクトがそれらが格納されていた順序で返されるのか又はそれとは異なる順序で返されるのかを指定することが可能である。
図3は、前記ステップ204で返すことができる例示的な記述データ構造300を示している。例えば、該例示的なデータ構造300は、記述データ構造のペイロードの全部又は一部とすることが可能である。この例では、該データ構造300は、記述対象となるオブジェクト302,304がそれぞれ後続する記述子301,303からなる複数の対をなす1つのシーケンスとして編成されている。例えば、各記述子301,303はヘッダを形成することが可能であり、及び各オブジェクト302,304はボディを形成することが可能である。実施形態によっては、記述子301,303は、後続の記述子のロケーションの指示を含むことが可能である。例えば、第1の記述子301は、オブジェクト302の長さを示す長さフィールドを含むことが可能である。これは、第1のオブジェクト302の直後に続く第2の記述子のロケーションを示すことが可能である。更なる実施形態では、1つの記述子301,303が複数のオブジェクト303,304を記述することが可能である。例えば、1つの記述子301,303は、同じタイプを有する複数のオブジェクトからなる1つのシーケンスを記述することが可能である。これらの実施形態では、1つの記述子301,303は、該1つの記述子301,303により記述される対応する複数のオブジェクト302,304の個数を示すシーケンス長フィールドを含むことが可能である。
実施形態によっては、一組のオブジェクト302,304は、所定の最大長以下の全長を有する。実施形態によっては、該最大長は、ステップ201で受信した前記読み出し要求により設定することが可能である。別の実施形態では、該最大長は先験的に設定することが可能である。例えば、該最大長は、テープドライブの製造業者又はアプリケーションにより、固定サイズアクセスモードで使用するための固定転送サイズとして設定することが可能である。様々な実施形態において、部分的なデータレコードをオブジェクト302,304とすることが可能である。例えば、最後のオブジェクト304として1つのデータレコード全体を含むと最大長を超えてしまう場合、該最後のオブジェクト304を部分的なデータレコードとすることが可能である。別の例として、最大長は、1データレコード全体のサイズよりも小さくすることが可能であり、前記データ構造300は、オブジェクト302として単一の部分的なデータレコードのみを含むことが可能である。別の実施形態では、部分的なデータレコードをオブジェクト303,304としないことが可能である。かかる実施形態では、前記データ構造300は、前記最大長を超えることなく可能な限り多数のオブジェクト302,304を含むことが可能である。最後のオブジェクト304に続くオブジェクトは、後続のステップ204の後に返された後続のデータ構造300内に含めることが可能である。
図4は、前記ステップ204で返すことが可能なもう1つの例示的な記述データ構造400を示している。この例では、記述子401,402は、該データ構造400の第1の部分に含まれ、オブジェクト403,404は、該データ構造400の第2の部分に含まれる。例えば、該記述子401,402は、該データ構造400のヘッダ内に含めることが可能であり、オブジェクト403,404は、該データ構造400のボディ内に含めることが可能である。オブジェクト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を含むことが可能であり、該記述書き込み手段502は、解析手段503及び書き込み手段504を含むことが可能である。例えば、該記述書き込み手段502は、ドライブ109の記述書き込み手段110と同様のものとすることが可能である。実施形態によっては、該記述書き込み手段502は、ハードウェア、ソフトウェア、又はそれらの組み合わせで実施することが可能である。例えば、該記述書き込み手段502は、ASIC、FPGA、又は持続性コンピュータ読み取り可能媒体に格納され及びコントローラにより実行されるソフトウェアを使用して実施することが可能である。
前記解析手段503は、前記記述データ構造の前記記述子を解析して、前記オブジェクトがテープマークであるかデータレコードであるかを判定することが可能である。実施形態によっては、該オブジェクトがテープマークである場合、該解析手段503は、該記述子を解析してそれが如何なるタイプのテープマークであるかを判定することが可能である。更に、該オブジェクトがデータレコードである場合、該解析手段503は、該記述子を解析して該データレコードのフォーマットを判定することが可能である。例えば、該解析手段503は、該データレコードが圧縮、非圧縮、暗号化、又は非暗号化されたものであることを判定することが可能である。該解析手段503は、該データレコードが圧縮されまたは暗号化されたものであると判定した場合、該解析手段503は、そうでない場合に生じるはずの圧縮又は暗号化をやめるよう書き込み手段502に命じることが可能である。
上述のように、実施形態によっては、前記記述データ構造は、複数対の記述子及びそれに対応するオブジェクトを含む。かかる実施形態では、解析手段503は、前記複数対のそれぞれの記述子を解析することが可能である。該解析手段503は、該複数対のそれぞれの記述子に対応するオブジェクトがテープマークであるかデータレコードであるかを判定することが可能である。更に、実施形態によっては、該記述子は、後続の記述子のロケーションを含むことが可能である。例えば、該記述子は、対応するオブジェクトの長さを示すフィールドを含むことが可能である。前記記述データ構造が、記述子とそれに対応するオブジェクトの交互配置を有する場合、この長さは、後続の記述子のロケーションを示すことが可能である。かかる実施形態では、解析手段503は、該記述子を解析して後続の記述子のロケーションを判定することが可能である。次いで、該解析手段503は、該後続の記述子を解析して後続のオブジェクトがテープマークであるかデータレコードであるかを判定することが可能である。
書き込み手段504は、記憶ボリューム505にテープマーク又はデータレコードを書き込むことが可能である。例えば、該記憶ボリューム505は、テープ上のボリュームとすることが可能であり、該書き込み手段504は、書き込みヘッドを含むことが可能である。別の例として、該記憶ボリューム505は、仮想的なテープドライブとすることが可能である。該書き込み手段504は、テープマーク又はデータレコードを、該テープマーク又はデータレコードが元々格納されていたフォーマットとは異なるフォーマットで記憶ボリューム505に書き込むことが可能である。例えば、データレコードが第1のLTO世代フォーマットで格納されており、該書き込み手段504が該データレコードを第2の異なるLTO世代フォーマットを使用して書き込むことが可能である。別の例として、データレコードは、非暗号化状態で格納されている場合があり、該書き込み手段504は、該データレコードを暗号化状態で格納することが可能である。更なる例として、データレコードは、ハードディスクアレイ上のデータブロックとして仮想的なテープドライブ内に格納されている場合があり、前記書き込み手段504は、該データレコードをテープボリューム505上に格納することが可能である。。
上述のように、実施形態によっては、前記記述データ構造は、複数対の記述子及びそれに対応するオブジェクトを含む。かかる実施形態では、書き込み手段504は、該複数対のそれぞれのテープマーク又はデータレコードを書き込むことが可能である。
図6は、移行命令604が格納された持続性コンピュータ読み取り可能媒体603を含むコンピュータ600を示している。様々な実施形態において、該持続性コンピュータ読み取り可能媒体603は、ランダムアクセスメモリ(RAM)、フラッシュメモリ、ストレージ、その他の不揮発性媒体、又はそれらの組み合わせ等の媒体を含むことが可能である。該コンピュータ600は、ソース又はターゲットドライブに接続するためのインタフェイス601を含むことが可能である。該コンピュータ600はまた、該インタフェイス601及び該持続性コンピュータ読み取り可能媒体603に接続されて前記移行命令604を実行するプロセッサ602を含むことが可能である。
該コンピュータ600は、該移行命令604を実行して、ソースドライブ上のソースボリュームの内容をターゲットドライブ上のターゲットボリュームへ移行することが可能である。例えば、該コンピュータ600は、図1のコンピュータ100と同様の態様で動作することが可能である。
前記移行命令604は、記述読み出し要求命令セット605を含むことが可能である。実行時に、該記述読み出し要求命令セット605は、プロセッサ602に記述読み出し要求をドライブへ送信させることが可能である。例えば、プロセッサ602は、前記インタフェイス601を使用して記述読み出し要求をソースドライブ(例えば、図1のソースドライブ105)に送信することが可能である。実施形態によっては、該記述読み出し要求は、所望の記述データ構造のパラメータを指定するフィールドを含むことが可能である。例えば、該記述読み出し要求は、最大戻り長、圧縮若しくは非圧縮データの要求、又は暗号化若しくは非暗号化データの要求を含むことが可能である。
前記移行命令604はまた、記述データ構造操作命令607を含むことが可能である。実行時に、該記述データ構造操作命令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に第2のドライブへ記述書き込み要求を送信させることが可能である。例えば、該プロセッサ602は、前記インタフェイス601を使用して該記述書き込み要求をターゲットドライブへ送信することが可能である。例えば、該第2のドライブは、図1のドライブ109又は図5のドライブ500と同様のものとすることが可能である。かかる実施形態では、前記記述データ構造操作命令607は、該プロセッサ602に該第2のドライブへ前記記述データ構造608を送信させることが可能である。
実施形態によっては、実行時に、前記移行命令604は、プロセッサ602に第1のドライブのボリュームの内容を第2のドライブのボリュームへ移行させる。例えば、該移行命令604は、該プロセッサ602に前記記述読み出し要求命令セット605を繰り返し実行させて複数の記述読み出し要求を該第1のドライブへ送信することが可能である。該移行命令604はまた、該プロセッサ602に前記データ構造操作命令607を繰り返し実行させて複数の前記記述データ構造608を受信し及び該複数の記述データ構造608を前記第2のドライブへ送信することが可能である。実施形態によっては、該複数の記述データ構造608は、それらが受信された順序と同じ順序で送信することが可能である。更に、テープマーク及びデータレコードの順序は、該記述データ構造608内で維持することが可能である。したがって、コンピュータ600は、読み出されたデータを使用してソーステープデータ構造又はファイルシステムを再作成することなく、記述データ構造608を中間データ構造として使用することにより、ソースドライブの内容をターゲットドライブへ移行することが可能である。
上記説明では、本書で開示する要旨の理解を提供すべく多数の細部について説明した。しかし、本発明の実施形態は、それらの細部の一部又は全部を用いることなく実施することが可能である。他の実施形態は、上記で説明した細部に対する修正又は変更を含むことが可能である。特許請求の範囲は、かかる修正及び変更等を網羅することを意図したものである。

Claims (21)

  1. テープボリュームを含むテープドライブにより実行される方法であって、
    記述データ構造を返すことを要求する記述読み出し要求をホスト装置から受信し、該記述データ構造が、オブジェクトと、該オブジェクトがテープマークであるかデータレコードであるかを示す該オブジェクトのための記述子とを含み、
    前記テープボリュームに対して読み出しを行って前記オブジェクトを読み出し、
    該オブジェクトを解析して該オブジェクトがテープマークであるかデータレコードであるかを示す記述子を生成し、及び、
    前記記述読み出し要求に応じて該オブジェクト及び該記述子を含む記述データ構造を前記ホスト装置へ返す
    ことからなる方法。
  2. 前記記述読み出し要求が最大長を含み、
    前記オブジェクトが複数のオブジェクトのうちの1つであり、該複数のオブジェクトが前記最大長以下の全長を有し、
    前記オブジェクトを解析することが、前記複数のオブジェクトを解析して対応する複数の記述子を生成することを含み、該複数の記述子の各々が、該複数のオブジェクトのうちの対応する1つのオブジェクトが対応するテープマークであるか対応するデータレコードであるかを示すものであり、及び、
    前記オブジェクト及び前記記述子を返すことが、前記複数のオブジェクト及び前記対応する複数の記述子を返すことを含む、
    請求項1に記載の方法。
  3. 前記複数のオブジェクトが所定の順序で前記テープボリューム上に格納されており、及び該複数のオブジェクトが該順序で返される、請求項2に記載の方法。
  4. 前記データレコードが部分的なデータレコードである、請求項1に記載の方法。
  5. 前記オブジェクトが一連の同一タイプの複数のオブジェクトのうちの1つであり、
    前記オブジェクトを解析することが、前記複数のオブジェクトを解析して1つの記述子を生成することを含み、該1つの記述子が、前記一連のオブジェクトが一連のテープマークであるか一連のデータレコードであるかを示すものであり、及び、
    前記オブジェクト及び前記記述子を返すことが、該複数のオブジェクト及び前記1つの記述子を返すことを含む、請求項1に記載の方法。
  6. 前記記述子が前記オブジェクトの長さを更に示すものである、請求項1ないし請求項5の何れか一項に記載の方法。
  7. 前記テープボリュームを含む前記テープドライブが、物理的なテープボリュームを含む物理的なテープドライブ、又は仮想的なテープボリュームを含む仮想的なテープドライブである、請求項1ないし請求項6の何れか一項に記載の方法。
  8. 前記記述読み出し要求が所定のフォーマットを指定し、及び、
    該指定されたフォーマットで前記オブジェクトを前記記述データ構造に含めることを更に含む、
    請求項1に記載の方法。
  9. 前記フォーマットが、圧縮状態及び/又は暗号化状態を含む、請求項8に記載の方法。
  10. 物理的なテープボリューム又は仮想的なテープボリュームを含むテープドライブであって、
    オブジェクトと該オブジェクトがテープマークであるかデータレコードであるかを示す記述子とを含む記述データ構造をホスト装置から受信する入力と、
    該記述子を解析して該オブジェクトがテープマークであるかデータレコードであるかを判定する解析手段と、
    等価なテープマーク又は等価なデータレコードを前記テープドライブに固有の第1のフォーマットで前記物理的なテープボリューム又は前記仮想的なテープボリュームに書き込む書き込み手段であって、該等価なテープマーク又は該等価なデータレコードが前記オブジェクトと等価である、書き込み手段と
    を備えている、テープドライブ。
  11. 前記記述データ構造が、複数の対をなす記述子及びそれに対応するオブジェクトを含み、
    前記解析手段が、該複数の対のそれぞれの記述子を解析して該それぞれの記述子に対応するオブジェクトがそれぞれテープマークであるかデータレコードであるかを判定し、及び、
    前記書き込み手段が、該それぞれのテープマーク又はデータレコードを書き込む、
    請求項10に記載のテープドライブ。
  12. 前記記述データ構造の複数の前記オブジェクトが所定の順序を有しており、及び、
    前記書き込み手段が、前記それぞれのテープマーク又はデータレコードを該順序で前記物理的なテープボリューム又は前記仮想的なテープボリュームに書き込む、
    請求項11に記載のテープドライブ。
  13. 前記記述データ構造が、前記記述子を含むヘッダと前記オブジェクトを含むボディとを含む、請求項10ないし請求項12の何れか一項に記載のテープドライブ。
  14. 前記記述子が、後続の記述子のロケーションを含み、
    前記解析手段が、該後続の記述子を解析して前記記述データ構造の後続のオブジェクトが後続のテープマークであるか後続のデータレコードであるかを判定する、
    請求項10ないし請求項13の何れか一項に記載のテープドライブ。
  15. 前記記述子が、前記データレコードのフォーマットを示す、請求項10ないし請求項14の何れか一項に記載のテープドライブ。
  16. 前記記述データ構造内の前記オブジェクトが、前記第1のフォーマットとは異なる第2のフォーマットを有する、請求項10ないし請求項15の何れか一項に記載のテープドライブ。
  17. 複数の命令を格納したコンピュータ読み取り可能媒体であって、該命令が、その実行時に、
    物理的なテープボリュームを含む物理的なテープドライブ又は仮想的なテープボリュームを含む仮想的なテープドライブからなる第1のドライブへ記述読み出し要求を送信し、該記述読み出し要求が、オブジェクトと、該オブジェクトがテープマークであるかデータレコードであるかを示す該オブジェクトのための記述子とを含む記述データ構造を該第1のドライブに返させるためのものであり、及び、
    オブジェクトと該オブジェクトがテープマークであるかデータレコードであるかを示す記述子とからなる記述データ構造を該第1のドライブから受信する
    ことをプロセッサに行わせるものである、コンピュータ読み取り可能媒体。
  18. 記述書き込み要求を物理的なテープボリュームを含む物理的なテープドライブ又は仮想的なテープボリュームを含む仮想的なテープドライブを含む第2のドライブへ送信し、及び、
    前記記述データ構造を該第2のドライブへ送信する
    ことを実行時に前記プロセッサに行わせる更なる命令を格納している、請求項17に記載のコンピュータ読み取り可能媒体。
  19. 複数の記述読み出し要求を前記第1のドライブへ送信し及び複数の記述データ構造を前記第2のドライブへ送信することにより該第1のドライブの前記テープボリュームの内容を該第2のドライブの前記テープボリュームへ移行する
    ことを実行時に前記プロセッサに行わせる更なる命令を格納している、請求項18に記載のコンピュータ読み取り可能媒体。
  20. 前記プロセッサが、前記記述データ構造を前記第2のドライブへ送信する前に該記述データ構造を解析しない、請求項18又は請求項19に記載のコンピュータ読み取り可能媒体。
  21. 前記第1のドライブ及び前記第2のドライブが同じ暗号化プロトコルをサポートする場合に、前記オブジェクトを所定の暗号化状態で前記記述データ構造に含めることを前記記述読み出し要求において指定し、及び/又は、
    前記第1のドライブ及び前記第2のドライブが同じ圧縮プロトコルをサポートする場合に、前記オブジェクトを所定の圧縮状態で前記記述データ構造に含めることを前記記述読み出し要求において指定する
    ことを実行時に前記プロセッサに行わせる更なる命令を格納している、請求項1ないし請求項20の何れか一項に記載のコンピュータ読み取り可能媒体。
JP2016536071A 2013-08-31 2013-08-31 記述オブジェクト及び記述子 Active JP6277276B2 (ja)

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
JP2016533585A JP2016533585A (ja) 2016-10-27
JP6277276B2 true JP6277276B2 (ja) 2018-02-07

Family

ID=52587173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016536071A Active JP6277276B2 (ja) 2013-08-31 2013-08-31 記述オブジェクト及び記述子

Country Status (4)

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

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

Family Cites Families (14)

* 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
US5200864A (en) * 1989-06-28 1993-04-06 International Business Machines Corporation Combining small records into a single record block for recording on a record media
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
WO2002029540A2 (en) 2000-10-06 2002-04-11 Ampex Corporation System and method for transferring data between recording devices
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 磁気テープ装置
US7487288B2 (en) 2004-05-14 2009-02-03 International Business Machines Corporation Dynamic loading of virtual volume data in a virtual tape server
JP2008016117A (ja) 2006-07-05 2008-01-24 Fujitsu Ltd テープへのデータ書込方法、テープへのデータ書込プログラム、及びテープ記憶装置
US7793159B2 (en) * 2006-10-02 2010-09-07 International Business Machines Corporation Method, computer program product, and computer system for detecting a corruption in a data block stored by a tape recording apparatus
US8862600B2 (en) 2008-04-29 2014-10-14 Accenture Global Services Limited Content migration tool and method associated therewith

Also Published As

Publication number Publication date
CN105830042A (zh) 2016-08-03
WO2015030831A1 (en) 2015-03-05
US9847098B2 (en) 2017-12-19
CN105830042B (zh) 2019-06-18
JP2016533585A (ja) 2016-10-27
US20160217810A1 (en) 2016-07-28

Similar Documents

Publication Publication Date Title
US10740018B2 (en) Data migration method and apparatus applied to computer system, and computer system
US9870176B2 (en) Storage appliance and method of segment deduplication
JP6227007B2 (ja) データ圧縮領域へのデータの実時間分類
AU2020203915B2 (en) Attributing consumed storage capacity among entities storing data in a storage array
CN107111531B (zh) 使用分配图的数据恢复的系统、方法和存储介质
US8473787B2 (en) Intelligent LUN generation and management
US9558232B1 (en) Data movement bulk copy operation
US9235471B2 (en) Background initialization for protection information enabled storage volumes
US20170371592A1 (en) Data unit classification for selective data processing
US20220286511A1 (en) Network attached device for accessing removable storage media
US8949528B2 (en) Writing of data of a first block size in a raid array that stores and mirrors data in a second block size
JP6277276B2 (ja) 記述オブジェクト及び記述子
US8468312B2 (en) Indication of a destructive write via a notification from a disk drive that emulates blocks of a first block size within blocks of a second block size
US10168939B2 (en) Reading records from a tape medium
US9836475B2 (en) Streamlined padding of deduplication repository file systems
US10067888B1 (en) I/O optimization with track splitting
JP6374180B2 (ja) データストレージ装置およびシステム、ならびにデータストレージ方法
US20150286647A1 (en) Directly accessing archived data and executable files
CN115525228A (zh) 一种数据的存储方法、装置、电子设备和存储介质
CN117742616A (zh) 小io随机读写处理方法、设备及计算机可读介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180115

R150 Certificate of patent or registration of utility model

Ref document number: 6277276

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250