NDMPダンプおよびリストアフェーズの説明
環境
ONTAP 9
回答
用語
ダンプ フェーズの説明で使用される主な用語は次のとおりです。
- Inode:
- ファイルシステム上のすべてのファイルには識別子が関連付けられています。
- このidはinodeと呼ばれます。
- 通常、ファイルシステムにはinodeがあらかじめ割り当てられています。
- ONTAPの
df -i
の出力には、ボリュームの合計使用済みinode数と空きinode数が表示されます。 - このドキュメントでは、inodeとfileという用語を同じ意味で使用します。
- ファイルシステム上のすべてのファイルには識別子が関連付けられています。
- Inodeファイル:
- これはファイルシステム上の特別なファイルで、ボリューム内のすべてのinodeとその詳細のリストが含まれています。
- Inodeマップ:
- ボリュームのinodeの数と同じ数の要素を持つアレイ。
- inode番号は、その対応するエントリが配列内でインデックスとして機能します。
- 任意のエントリの値が1の場合、対応するファイルが特定のバックアップに存在することを示します。
- オフセットマップ:
- ボリュームのinodeの数と同じ数の要素を持つアレイ。
- inode番号は、配列内の対応するエントリのインデックスの役割を果たします。
- バックアップにinodeが存在する場合、その対応するエントリには、バックアップイメージ内のファイルデータの先頭を示すテープ上の物理アドレスが格納されます。
ダンプフェーズ
- ファイル履歴をオンにしてNDMPで開始されたバックアップの場合、dumpはフェーズIIIおよびIVでファイル履歴を生成し、フェーズIIIbでオフセットマップを生成する必要があります。
- ファイル履歴とオフセットマップを生成することで、これらのフェーズにおけるNDMPバックアップにはいくらかのコストが追加されますが、NDMPはバックアップインデックス作成、DAR、Enhanced DARなどの貴重な機能を提供できます。
- ファイル履歴の詳細については、FAQ: NDMP File Historyを参照してください。
フェーズ I
- dumpはバックアップする必要があるファイルのリストを生成します。
- このフェーズの出力はinodeマップと呼ばれます。
- inodeマップにはボリューム上のすべてのinodeのエントリが含まれます。
- バックアップされるinodeのエントリは1に設定され、バックアップされないinodeのエントリは0に設定されます。
注: inodeの数が多いほど、フェーズIの完了に要する時間が長くなります。 たとえば、inodeが10億個のボリュームは、inodeが1,000万個のボリュームよりも大幅に時間がかかります。
フェーズII
- dumpは、フェーズIで生成されたinodeマップをテープに書き込みます。
フェーズIII
- dump は、バックアップ データセットのディレクトリ構造全体をテープに書き込みます。
- 有効にすると、このフェーズでディレクトリのファイル履歴が生成され、バックアップ アプリケーションに伝達されます。
- フェーズIIIa:
- ACL フェーズ: このフェーズでは、ダンプはデータセットの ACL をテープにバックアップします。
- データセット内の多くのファイルに ACL がある場合、このステップにはより多くの時間がかかることがあります。
- フェーズIIIb:
- このフェーズは、ファイル履歴が有効になっているNDMPバックアップに対してのみ実行されます。
- このフェーズの出力はオフセットマップです。
- 任意のバックアップの各ファイルについて、オフセットマップにはバックアップイメージ内のファイルの先頭を示すテープ上の物理アドレスが含まれます。
- フェーズIIIa:
注: ディレクトリinodeの数が多いほど、フェーズIIIの完了に時間がかかります。 さらに、dumpはディレクトリツリー全体をトラバースするため、ディレクトリ構造が深い場合、広い場合、またはその両方の場合、単純なディレクトリ構造よりも読み取りに時間がかかることがあります。
フェーズ IV
- このフェーズでは、実際のファイルデータをテープにダンプします。
- このフェーズはinodeの順に動作します。
- その結果、小さいinode番号が大きいinode番号よりも先に検出されることが保証されます。
- 有効にすると、このフェーズ中にファイルの履歴が生成され、バックアップ アプリケーションに通知されます。
フェーズ V
- これはPhase IIIaの複製です。
- これは従来NetAppネイティブダンプに存在していたものです。
- このフェーズは下位互換性のために保持されていますが、ONTAPの最新バージョンでは何も行われません。
復元フェーズ
- フェーズI:
- バックアップイメージのディレクトリ構造全体が inofile に読み込まれ、ファイル情報が inomap に読み込まれます。
- フェーズ II:
- リストア用に選択されたすべてのファイルとディレクトリは、フェーズIで作成されたinofileとinomapに基づいてファイルシステム上に作成されます。
- リストア処理の性質上、フェーズIIで作成されたファイルとディレクトリは、ファイルシステムの参照時または一覧表示時にゼロバイトとして表示されます
- ゼロバイトのファイルとディレクトリのエントリはゼロ以外の値に変更され、リストアがフェーズIIIに入るとサイズが増加することがあります
- フェーズIII:
- 個々のファイルの内容がバックアップイメージから読み取られ、フェーズ II で作成されたツリー構造にデータが取り込まれます。
qtree/ボリュームダンプ vs. 非qtreeサブディレクトリダンプ
- ダンプのフェーズIの動作は、ユーザがボリューム/qtreeのバックアップを開始したか、非qtreeサブディレクトリ/サブツリーのバックアップを開始したかによって異なります。
- サブディレクトリダンプの場合、バックアップの指定されたルートの下にある各ディレクトリとファイルを調べて、バックアップに含めるべきかどうかを判断する必要があります。
- この処理は、特にサブディレクトリに数百万のinode(ファイル)が含まれている場合には、時間がかかります。
- ボリュームおよびqtreeベースのバックアップでは、バックアップする必要があるものを特定するためにディレクトリツリー全体を調べる必要はありません。
- 代わりにONTAPはバックアップSnapshotのinodeファイルを調べることができます。
- inodeファイルを見るだけで、inodeが存在するかどうか、またそれが特定のqtree/ボリュームの一部かどうかを判断できます。
- inodeファイルの使用は、ディレクトリトラバーサルと比較してはるかに高速かつ効率的なプロセスです。
- inodeファイルには、非qtreeサブディレクトリダンプで同じことを行うのに十分な情報が含まれていないため、非qtreeサブディレクトリではなく、可能な限りqtreeおよびボリュームをバックアップすることを推奨します。
- exclude NDMP環境変数を使用すると、qtreeおよびボリュームダンプでも低速なディレクトリトラバーサル方式が実行されることに注意してください。
- バックアップ速度が重要な場合は、NDMPで開始されるダンプバックアップで除外を使用しないでください。