大容量のファイルサーバでデータ移行を実施する際には、データ移行ツールやシステムを利用するのが一般的です。現在、もっとも知られているデータ移行ツールは、Windowsのファイル転送ユーティリティであるrobocopyでしょう。私たちARIが提供するデータ移行システム「ZiDOMA data」をお客様にご説明する際には、必ずと言っていいほどに「robocopyと何が違うの?」というお言葉をいただきます。
もちろん、UIの使いやすさやファイルサーバ状況の可視化などの機能面では、無料のユーティリティであるrobocopyよりも、有料のシステムであるZiDOMA dataの方が優秀なのは当然です。
そこで今回は、あえてデータ移行の速度面だけに絞り、robocopyとZiDOMA dataの性能をガチ検証してみました。
今回は約70GBのデータ移行について、初回移行と差分移行、それぞれにかかる時間について検証しました。なお、検証の条件は以下となります。
・移行のデータ容量:71.3GB
・移行のファイル数:139,796ファイル
・移行のディレクトリ数:46,226
この条件で測定した結果が以下の表となります。
robocopyおよびZiDOMA dataのデータ移行速度比較 | ||||||||
移行手段 | 所要時間 |
実効速度 (Mバイト/秒) |
ファイル処理数 (ファイル数/秒) |
|||||
---|---|---|---|---|---|---|---|---|
初回移行 | ZiDOMA data | 1:41:48 | 11.96 | 22.89 | ||||
robocopy | 7:18:03 | 2.78 | 5.32 | |||||
差分移行 |
ZiDOMA data ※初回移行はZiDOMA dataで実施 |
2:17:40 | 8.84 | 16.92 | ||||
robocopy ※初回移行はrobocopyで実施 |
0:32:51 | 37.04 | 70.93 |
表をご覧の通り、初回移行についてZiDOMA dataはrobocopyと比べて、約1/4の時間で移行が完了しました。一方、差分移行については勝敗が逆転して、robocopyの方が速いという結果となりました。
この測定結果は今回設定した条件における数値なので、すべてのケースにおいて当てはまるものではありません。できることなら、両方とも完勝といきたかったところですが、「ガチ検証」と謳っている以上、結果は結果として受け止めるつもりです。
では次に、今回のような検証結果が出た理由について、考察してみます。
初回移行でZiDOMA dataが早かった理由は明白です。ZiDOMA dataはデフォルトで複数フォルダの転送を並列処理します。そのため、移行するデータ量が多ければ多いほど、デフォルトでは並列処理を行わないrobocopyとは転送時間に差が出ます。
もちろん、ZiDOMA dataは差分データについても並列処理を行います。にもかかわらず差分データの移行においては、robocopyより時間がかかる結果となったのは何故でしょうか?
ZiDOMA dataの差分移行で時間がかかった理由は、アクセス許可情報を移行する際の手順によるものです。
差分移行を実行する際、robocopyでは移行元のMFT(マスター ファイル テーブル)時刻の差異から、アクセス許可情報の差分を判断して移行を行います。
一方、ZiDOMA dataでは、まず移行元と移行先のアクセス許可情報の取得を行い、それぞれを比較した上で移行を行います。また、アクセス日時やタイムスタンプなどのメタデータも漏れなくコピーします。これらの手順を実施する分、時間がかかっていると考えられます。
もちろん、この手順を省略することで移行速度は速くなります。しかし、その場合はアクセス許可情報の移行でのエラーを招きやすくなります。セキュリティの観点からも、重要なデータであればあるほど、これらの手順は軽視できないものだと私たちは考えています。
今回は、あくまでも移行にかかる時間について検証を行いましたが、実際の作業では、移行時間に加えて、さまざまな設定や準備にかかる時間が必要となります。robocopyで各種設定を行う場合はコマンドプロンプトに、たとえば以下のようなコマンドラインを入力します。
●今回の検証で実施したコマンドライン
<コマンドライン>
・初回移行時
robocopy \\コピー元フォルダ \\コピー先フォルダ /MIR /COPYALL /XO /R:1 /W:1 /V /FP /B /XJ /DCOPY:DAT /NP /LOG+
・差分移行時
robocopy \\コピー元フォルダ \\コピー先フォルダ /MIR /COPYALL /XO /R:1 /W:1 /V /FP /B /XJ /DCOPY:DAT /NP /LOG+
コマンドやオプションの詳細は以下を参照してください。
https://learn.microsoft.com/ja-jp/windows-server/administration/windows-commands/robocopy
robocopyでは、ファイル移行のみならず、ログの出力(/LOG+)や再試行時のオプション(/R:1 /W:1)などのオプションも設定できます。
ただ、ご覧の通り、すべての設定をコマンドラインで入力する必要があるので、知識がない人やコマンド入力に慣れていない人にとっては、設定にかなりの時間と手間がかかることでしょう。逆に、ほとんどのコマンドラインを把握している熟練者であれば、短時間での設定も可能になると思われます。
一方、ZiDOMA dataでは、すべての設定をマウス操作と簡単なキーボード入力で行います。たとえば、先ほど記載したrobocopyのコマンドラインと同様の設定を行う場合でも、基本的に項目を選択するだけで可能です。
・ZiDOMA dataの操作
「参照ボタン」をクリックしてコピー元フォルダとコピー先フォルダを選択。
設定画面でルールやコピーするメタデータなどを選択。
並列実行やアクセス権限の移行なども簡単に設定可能。
ご覧の通り、コマンドライン入力が必要なrobocopyと比べると、簡単かつ手軽に設定できることがおわかりいただけることでしょう。一般的なユーザが利用する場合は、robocopyよりもZiDOMA dataの方が、手軽かつ短時間で設定が可能となり、同時に人的ミスも最小限に抑えられると考えられます。
また、エラーへの対応についても違いがあります。
エラーが発生した場合、robocopyでは一覧のログ情報からエラーログを探し出さなければなりません。エラーログの中には、無視できるような軽微なものもあるので、それらの中から、対処する必要があるエラーを見つけ出すのは、なかなか大変な作業です。
一方、ZiDOMA dataでは、必要なエラーだけを表示するフィルタ設定があります。それらの表示は、グラフィカルなUIでわかりやすく表示されます。
エラー対応という点で見ても、ZiDOMA dataの方がわかりやすく、かつ対処すべきエラーを見つけやすいと言えます。
ZiDOMA dataによるエラーログ(上部)とフィルタ設定(下部)
robocopyは無料のユーティリティであるため、ZiDOMA dataとの単純比較はできません。また、今回の測定結果を見ての通り、条件次第では大きな効果を生み出す優れたツールです。単純なデータ移行であれば、robocopyを選択することも間違いではありません。ただし、ここまで説明したように、誰もが簡単に利用できる代物ではなく、頼りすぎるとデータ管理の属人化を招く可能性が高くなるので注意が必要です。
また、「大容量のデータを安全かつ正確に移行したい」場合や「ストレージの状況を可視化・分析して適切に管理したい」場合は、robocopyにはそれらの機能が備わっていないため、ZiDOMA dataなどの有料ツールやシステムを検討する必要があるでしょう。
なお、ZiDOMA dataには14日の無料トライアルがあります。データの移行を検討する場合、どちらが自社の条件に適しているか、一度試してみてはいかがでしょうか?
※文中に記載されている会社名、商品名、サービス名は各社の商標または、登録商標となります。