AWS Snowball のパフォーマンス - AWS Snowball

このガイドは廃止中です。更新は終了予定です。

注記

第 1 世代 80 TB Snowball デバイスは利用できなくなりました。すべてのデータ転送ジョブに、Snowball Edge ストレージ最適化デバイスを使用します。Snowball Edge のドキュメントについては、AWS Snowball Edgeデベロッパーガイド

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Snowball のパフォーマンス

以下は、AWS Snowball のパフォーマンスについての情報です。ここでは、一般的なパフォーマンスについて説明します。オンプレミス環境はそれぞれネットワ&ク技術、ハードウェア、オペレーティングシステム、手順などが異なるさまざまな方法で稼働しているためです。

次の表は、ネットワークの転送速度によって Snowball にデータが収まるまでの時間がどのように影響を受けるかについて概説しています。小さいファイルを大きなファイルにバッチせずに転送すると、オーバーヘッドが増加するため転送速度が低下します。

レート (MB/秒) 42 TB の転送時間 72 TB の転送時間
800 14 時間 1 日
450 1.09 日間 1.8 日間
400 1.16 日間 2.03 日間
300 1.54 日間 2.7 日間
277 1.67 日間 2.92 日間
200 2.31 日間 4 日間
100 4.63 日間 8.10 日間
60 8 日間 13 日間
30 15 日間 27 日間
10 46 日間 81 日間

以下では、どのような場合にインターネットでのデータ転送ではなく Snowball を使用するかの判断や、データソースから Snowball へのデータ転送を高速化する方法について説明します。

データ転送の高速化

一般的に、データソースから Snowball への転送速度は、次の方法で改善できます。パフォーマンスに与える良い影響が大きいものから順に並んでいます。

  1. 最新の Mac または Linux Snowball クライアントを使用する— Mac および Linux 向けの最新の Snowball クライアントはどちらも、x86 命令セットアーキテクチャへの Advanced Encryption Standard New Instructions (AES-NI) 拡張をサポートします。この拡張により、Snowball と Mac または Linux ワークステーション間で転送中のデータの暗号化や復号化の速度が改善されます。サポートされるハードウェアを含む AES-NI の詳細については、ウィキペディアの AES 命令セットを参照してください。

  2. 小容量ファイルの一括Batch— コピーオペレーションによっては、暗号化によりオーバーヘッドが生じる場合があります。そのため、個々のファイル上で多数の転送を実行すると、大容量ファイルで同数のファイルを転送するよりも全体のパフォーマンスは遅くなります。1 つの snowball cp コマンドでバッチ処理することで、小容量ファイルの転送速度を大幅に向上させることができます。Amazon S3 へのインポート処理中に、これらのバッチファイルは自動的に元の状態に解凍されます。詳細については、「snowball cp コマンドのオプション」を参照してください。

  3. 一度に複数のコピー操作を実行— ワークステーションが十分に強力であれば、複数のsnowball cpコマンドを 1 度だけ実行します。これには、同じ Snowball に接続されているすべてのコマンドを Snowball クライアントの個別のインスタンスで実行します。

  4. 複数のワークステーションからコピーする— 単一の Snowball を複数のワークステーションに接続できます。各ワークステーションは、Snowball クライアントのインスタンスを別々にホストできます。

  5. ファイルではなくディレクトリを転送する— それぞれのオーバーヘッドがあるためsnowball cpコマンドを使用すると、多数のコピーコマンドを 1 つずつキューに入れることはお勧めしません。多数のコマンドをキューイングすると、転送パフォーマンスに大きな悪影響を及ぼします。

    たとえば、C:\\MyFiles と呼ばれるディレクトリに、file1.txt、file2.txt、file3.txt の 3 ファイルのみ含まれているとします。次の 3 つのコマンドを発行します。

    snowball cp C:\\MyFiles\file1.txt s3://mybucket snowball cp C:\\MyFiles\file2.txt s3://mybucket snowball cp C:\\MyFiles\file3.txt s3://mybucket

    このシナリオでは、次のコピーコマンドを使用してディレクトリ全体を転送した場合の 3 倍のオーバーヘッドになります。

    Snowball cp –r C:\\MyFiles\* s3://mybucket
  6. 転送中にファイルに対して他の操作を実行しない:転送時のファイル名変更、ファイルメタデータの変更、コピーオペレーション時のファイルへのデータ書き込みは、転送パフォーマンスに大きな悪影響を及ぼします。転送時、ファイルは静的な状態にされることをお勧めします。

  7. ローカルネットワークの使用を減少— Snowball はローカルネットワークを介して通信します。これにより、Snowball、接続されているスイッチとデータソースをホストしているワークステーション間のローカルネットワークトラフィックを減少させることは、データ転送の速度向上につながります。

  8. 不要なホップを排除— Snowball、データソース、ワークステーションを設定して、これらのみが単一のスイッチを介するマシン通信であるようにすることが推奨されます。これにより、データ転送速度を大幅に向上できます。

パフォーマンスの大幅向上

お客様のパフォーマンスの結果は、ご使用のハードウェア、ネットワーク、ファイルの数と大きさ、保存方法によって異なります。したがって、希望するパフォーマンスが得られない場合は、パフォーマンスメトリクスを試してみることをお勧めします。

はじめに、全体の転送パフォーマンスが低下するまでコピーオペレーションを複数回行います。コピーオペレーションを一度に複数回実行すると、転送パフォーマンス全体に著しく良い影響を与える可能性があります。たとえば、ターミナルウィンドウで実行中の snowball cp コマンドが 1 つであり、データ転送が 30 MB/秒であることが判ったとします。2 つめのターミナルウィンドウを開き、転送する別のファイルセットで 2 つめの snowball cp コマンドを実行します。ここで、両方のコマンドが 30 MB/秒で実行されていることが判ります。 この場合、合計の転送パフォーマンスは 60 MB/秒です。

ここで、別のワークステーションから Snowball に接続するとします。そのワークステーションから Snowball クライアントを実行して、3 番目のsnowball cp転送したい別のファイルセットでコマンドを実行します。ここでパフォーマンスを確認し、snowball cp コマンドの 3 つのインスタンスがすべて 25 MB/秒のパフォーマンスで稼働しているとわかった場合、合計パフォーマンスは 75 MB/秒です。この例では、各インスタンスのそれぞれのパフォーマンスは低下しましたが、全体のパフォーマンスは増加しました。

データ転送の高速化」に掲載されている技術を使用したこの方法は、データ転送パフォーマンスを最適化するのに役立ちます。