SnowBall

#AWS Snowball デバイスとは

> AWS Snowball サービスでは、物理ストレージデバイスを使用して、Amazon Simple Storage Service (Amazon S3) とオンサイトのデータストレージロケーション間で、インターネットよりも高速に大量のデータを転送します。AWS Snowball を使用すると、時間と費用を節約できます。Snowball には、ジョブの作成、データの追跡、ジョブの完了までのステータスの追跡に使用できる強力なインターフェイスが用意されています。

##AWS Snowball デバイスの相違点
> Snowball と Snowball Edge は 2 つの異なるデバイスです。

<img width="678" alt="スクリーンショット 2020-05-28 18.19.35.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/321923/143164c6-a11c-7a73-9265-0aa98b960c2d.png">

##AWS Snowball ハードウェアの相違点
<img width="689" alt="スクリーンショット 2020-05-28 18.20.05.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/321923/3c184c6f-e1f3-a038-6e81-b3823d4b479e.png">

##ストレージ容量
<img width="646" alt="スクリーンショット 2020-05-28 18.20.38.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/321923/9551cfe5-d135-e523-b0aa-28a758b5df6d.png">

#インポートの仕組み
> 各インポートジョブには、1 つの Snowball アプライアンス を使用します。AWS Snowball マネジメントコンソール またはジョブマネジメント API でジョブを作成すると、当社から Snowball が配送されます。Snowball が数日でお手元に届いたら、ネットワークに接続し、Amazon S3 にインポートするデータを Snowball クライアント または Snowball 用 Amazon S3 Adapter を使用して Snowball に転送します。

データ転送が完了したら、AWS に Snowball を返送します。その後、AWS でデータを Amazon S3 にインポートします。

#エクスポートの仕組み
> 各エクスポートジョブでは任意の数の Snowball アプライアンス を使用できます。AWS Snowball マネジメントコンソール または ジョブ管理 API でジョブを作成すると、Amazon S3 でリストオペレーションが起動されます。このリストオペレーションによって、ジョブがパートに分割されます。各ジョブパートの最大サイズは約 80 TB であり、各ジョブパートに関連付けられる Snowball は 1 つだけです。ジョブパートが作成されると、最初のジョブパートが [Preparing Snowball] ステータスになります。

その後すぐに、Snowball へのデータのエクスポートが開始されます。通常、データのエクスポートには 1 営業日かかります。ただし、この処理に長くかかる場合もあります。エクスポートが完了すると、AWS はリージョンのキャリアへ Snowball の集荷を手配します。Snowball が数日でお客様のデータセンターまたはオフィスに届いたら、Snowball をネットワークに接続して、サーバーにインポートするデータを Snowball クライアント または Snowball 用 Amazon S3 Adapter を使用して転送します。

データ転送が終了したら、Snowball を AWS に返送します。当社では、返送されたエクスポートジョブパートの Snowball を受領すると、Snowball の完全消去を実行します。この消去作業は National Institute of Standards and Technology (NIST) 800-88 基準に準拠しています。このステップにより、特定のジョブパートが完了します。他にもジョブパートがある場合は、次のジョブパートが発送準備されます。

#AWS Snowball のネットワークのベストプラクティス
> ワークステーションがデータ転送のボトルネックになると考えられるため、ワークステーションには、プロセス、メモリ、ネットワーキングの面で高レベルの要求に応える強力なコンピューターを使用することを強くお勧めします。

> ワークステーションはローカルでデータをホストする必要があります。パフォーマンス上の理由から、データを転送するときは、Snowball を使用してネットワーク全体のファイルを読み込みことをおすすめしません。ネットワーク全体でデータを転送する必要がある場合、Snowball にコピーする前にローカルのキャッシュをバッチして、コピーオペレーションができるだけ速く処理できるようにします。

> データ転送を高速化するために、複数のターミナルでそれぞれコピーオペレーションを使用して、Snowball クライアント のインスタンスを同時に実行できます。

#AWS Snowball のパフォーマンス
<img width="523" alt="スクリーンショット 2020-05-28 18.24.32.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/321923/522511e8-b24f-945c-6ddd-c99fbdcbcbba.png">

##データ転送の高速化
* 一度に複数のコピーオペレーションを実行
* ファイルではなくディレクトリを転送

#ペタバイト単位のデータを効率的に転送する方法
##大規模な転送の計画
ステップ 1: 何をクラウドに移行するのかを理解する

ステップ 2: ワークステーションを準備する

ステップ 3: 目標転送速度を計算する

ステップ 4: 何台の Snowball が必要かを特定する

ステップ 5: AWS Snowball マネジメントコンソール を使ってジョブを作成する

ステップ 6: データを転送セグメントに分割する

##並列データ転送
> Snowball を使って高速でデータを転送するには、並列転送が効果的な場合があります。並列転送は、以下のいずれかのシナリオで行います。

* 1 台の Snowball を接続した 1 台のワークステーションで複数の Snowball クライアント のインスタンスを使用する

* 1 台の Snowball を接続した複数のワークステーションで複数の Snowball クライアント のインスタンスを使用する

* 複数の Snowball を接続した複数のワークステーションで複数の Snowball クライアント のインスタンスを使用する

#Snowball を使ったデータ転送
* Snowball クライアント
* Snowball 用 Amazon S3 Adapter