

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

# の AWS DataSync 仕組み
<a name="how-datasync-transfer-works"></a>

オンプレミスとクラウドのロケーションからデータを転送する方法など AWS DataSync 、転送に関連する主要な概念と用語について説明します。

## DataSync 転送アーキテクチャ
<a name="datasync-archtecture"></a>

次の図は、DataSync が一般的にストレージデータを転送する方法と場所を示しています。DataSync でサポートされているストレージシステムとサービスの完全なリストについては、「[でデータを転送できる場所 AWS DataSync](working-with-locations.md)」を参照してください。

**Topics**
+ [オンプレミスストレージと 間の転送 AWS](#onprem-aws)
+ [AWS ストレージサービス間の転送](#in-cloud-transfer)
+ [他のクラウドの AWS ストレージサービスとストレージシステム間の転送](#ec2-agent-in-region)

### オンプレミスストレージと 間の転送 AWS
<a name="onprem-aws"></a>

次の図は、DataSync がセルフマネージド型のオンプレミスストレージシステムと 間でファイルを転送する方法の概要を示しています AWS のサービス。

![\[オンプレミスストレージシステムからサポートされているストレージ AWS リソース (Amazon S3 バケットや Amazon EFS ファイルシステムなど) にデータが転送される一般的な DataSync シナリオの概要。\]](http://docs.aws.amazon.com/ja_jp/datasync/latest/userguide/images/DataSync-chart-on-prem.png)


この図は、一般的な DataSync のユースケースを示しています。
+ オンプレミスストレージシステムからデータをコピーする DataSync エージェント。
+ Transport Layer Security (TLS) を使用して暗号化された AWSデータの移動。
+ DataSync は、サポートされている AWS ストレージサービスにデータをコピーします。

### AWS ストレージサービス間の転送
<a name="in-cloud-transfer"></a>

次の図は、同じ AWS のサービス 内の 間でファイルを転送する DataSync の概要を示しています AWS アカウント。

![\[AWS ストレージリソース (Amazon S3 バケットや Amazon EFS ファイルシステムなど) 間でデータを転送する一般的な DataSync シナリオの概要。\]](http://docs.aws.amazon.com/ja_jp/datasync/latest/userguide/images/DataSync-chart-agentless.png)


この図は、一般的な DataSync のユースケースを示しています。
+ サポートされている AWS ストレージサービスからデータをコピーする DataSync。
+ TLS を使用して暗号化された AWS リージョンデータを移動する。
+ DataSync は、サポートされている AWS ストレージサービスにデータをコピーします。

同じアカウントの AWS ストレージサービス間で転送する場合 (同じ AWS リージョン パーティション内のストレージサービス間または同じパーティション AWS リージョン 内のストレージサービス間で転送する場合）、エージェントは必要ありません。データは AWS ネットワークに残り、パブリックインターネットを経由しません。

**重要**  
間で転送されたデータに対して料金が発生します AWS リージョン。これは、ソースリージョンから転送先リージョンへのデータ転送出力として請求されます。詳細については、「[データ転送料金表](https://aws.amazon.com/ec2/pricing/on-demand/#Data_Transfer)」を参照してください。

### 他のクラウドの AWS ストレージサービスとストレージシステム間の転送
<a name="ec2-agent-in-region"></a>

DataSync を使用すると、他のクラウドストレージシステムと AWS のサービスの間でデータを転送できます。この場合、クラウドストレージシステムには以下が含まれます。
+  AWS内の仮想プライベートクラウド (VPC) の NFS ファイルサーバーなどのセルフマネージドストレージシステム。
+ 別のクラウドプロバイダーがホストするストレージシステムまたはサービス。詳細については、「[を使用した他のクラウドストレージとの間の転送 AWS DataSync](transferring-other-cloud-storage.md)」を参照してください。

DataSync は、エージェントの使用の有無にかかわらず、他のクラウドとの間でデータをコピーできます。エージェントを使用するタイミングの詳細については、「[Do I need an AWS DataSync agent?](https://docs.aws.amazon.com/datasync/latest/userguide/do-i-need-datasync-agent.html)」を参照してください。

次の図は、 AWS ストレージサービスと別のクラウドプロバイダー間でデータを転送する DataSync の概要を示しています。

![\[AWS ストレージサービス (Amazon S3 バケットや Amazon EFS ファイルシステムなど) と別のクラウドプロバイダー間でデータを転送する一般的な DataSync シナリオの概要。\]](http://docs.aws.amazon.com/ja_jp/datasync/latest/userguide/images/datasync-diagram-other-clouds.png)


## 概念と用語
<a name="terminology"></a>

DataSync の転送機能をよく理解してください。

**Topics**
+ [[エージェント]](#sync-agents)
+ [場所](#sync-locations)
+ [タスク](#tasks)
+ [タスクの実行](#task-executions)

### [エージェント]
<a name="sync-agents"></a>

*エージェント*は、DataSync が転送中にストレージからの読み取りとストレージへの書き込みに使用する仮想マシン (VM) アプライアンスです。DataSync には 2 種類のエージェントがあり、1 つは基本モードタスクを処理し、もう 1 つは拡張モードタスクを処理します。ユースケースのエージェントの選択の詳細については、「」を参照してください[タスクモードのエージェントの選択](do-i-need-datasync-agent.md#choose-task-mode-agent)。

エージェントは、VMware ESXi、Linux カーネルベースの仮想マシン (KVM)、Nutanix AHV (KVM エージェントイメージを使用）、または Microsoft Hyper-V ハイパーバイザーのストレージ環境にデプロイできます。の仮想プライベートクラウド (VPC) にストレージする場合は AWS、エージェントを Amazon EC2 インスタンスとしてデプロイできます。

開始するには、「[AWS DataSync エージェントが必要ですか?](do-i-need-datasync-agent.md)」を参照してください。

### 場所
<a name="sync-locations"></a>

*場所*とは、データのコピー元またはコピー先の場所を表します。各 DataSync 転送 (「*タスク*」とも呼ばれます) には、転送元の場所と転送先の場所があります。詳細については、[でデータを転送できる場所 AWS DataSync](working-with-locations.md)を参照してください。

### タスク
<a name="tasks"></a>

*タスク*には DataSync 転送についての説明があります。転送元と転送先のロケーションを特定し、それらのロケーション間でデータをコピーする方法の詳細も示します。タスクがメタデータ、削除されたファイル、およびアクセス許可をどのように処理するかを指定することもできます。

### タスクの実行
<a name="task-executions"></a>

*タスクの実行*とは、個々の DataSync 転送タスクの実行です。タスクの実行にはいくつかの段階があります。詳細については、「[タスクの実行ステータス](run-task.md#understand-task-execution-statuses)」を参照してください。

## DataSync がファイルやオブジェクト、ディレクトリを転送する仕組み
<a name="transferring-files"></a>

[タスクの実行](run-task.md)中に、DataSync はデータの準備、転送、検証を行います。DataSync がこれらのアクションを実行する方法は、[タスクモード](choosing-task-mode.md)などの DataSync タスクオプションをどのように設定したかによって異なります。基本モードタスクはデータを順番に準備、転送、検証し、拡張モードタスクはこれらを並行して実行します。

**Topics**
+ [DataSync がデータ転送を準備する方法](#how-datasync-prepares)
+ [DataSync がデータを転送する方法](#how-datasync-transfers)
+ [DataSync がデータの整合性を検証する方法](#how-verifying-works)
+ [DataSync がオープンファイルとロックファイルを処理する方法](#open-locked-files)
+ [定期的な転送オプション](#how-recurring-transfers-work)

### DataSync がデータ転送を準備する方法
<a name="how-datasync-prepares"></a>

デフォルトでは、DataSync は送信元と送信先の場所を調べて転送する内容を決定し、転送の準備をします。これは、両方の場所のコンテンツとメタデータをスキャンし、その相違点を特定することによって行われます。

**注記**  
[すべてのデータを転送する](configure-metadata.md#task-option-transfer-mode)ようにタスクを設定した場合、準備は行われません。タスクを開始すると、DataSync は場所を比較せずに、送信元から送信先にすべてを即座に転送します。

DataSync が転送を準備する方法はタスクモードによっても異なります。


| 拡張モードの準備 | 基本モードの準備 | 
| --- | --- | 
|  DataSync は、送信元の場所で見つかったオブジェクトを準備します。準備は、送信元にリストされているオブジェクトがなくなるまで、タスクの実行中に続行されます。 基本モードとは異なり、DataSync はタスクの実行ごとに事実上無制限の数のオブジェクトを準備できます。  |  このプロセスは、両方の場所のファイル、オブジェクト、またはディレクトリの数とストレージのパフォーマンスに応じて、数分から数時間、またはそれ以上かかる場合があります。 DataSync が送信元と送信先でインベントリする項目は、[タスククォータ](datasync-limits.md#task-hard-limits)にカウントされます。これらのクォータは、各タスクの実行中に DataSync が転送する項目の数に基づくものではありません。  | 

DataSync は、準備中に一部のファイル、オブジェクト、ディレクトリをスキップすることがあります。スキップする理由は、タスクの設定方法やストレージシステムのアクセス許可などさまざまな要因に応じて異なります。次に例を示します。
+ 送信元と送信先のロケーションに存在するファイルがあります。送信元のファイルは、前回のタスク実行以降、変更されていません。[変更されたデータのみを転送している](configure-metadata.md#task-option-transfer-mode)ため、DataSync は次のタスクの実行中にはそのファイルを転送しません。
+ 両方の場所に存在するオブジェクトが送信元で変更されます。タスクを実行すると、DataSync は送信先のこのオブジェクトをスキップします。これは、タスクが[送信先のデータを上書き](configure-metadata.md#task-option-file-object-handling)しないためです。
+ DataSync は、[アーカイブストレージクラス](create-s3-location.md#using-storage-classes)を使用していて復元されていない、送信先の場所のオブジェクトをスキップします。DataSync がオブジェクトを読み取るには、アーカイブされたオブジェクトを復元する必要があります。
+ DataSync は、送信先の場所にある読み取り不能なファイル、オブジェクト、ディレクトリをスキップします。これが予期せず発生する場合は、ストレージシステムのアクセス許可を確認し、スキップされた内容を DataSync が読み取れることを確認してください。

### DataSync がデータを転送する方法
<a name="how-datasync-transfers"></a>

DataSync はタスクオプションに基づいて、データ (メタデータを含む) を送信元から送信先にコピーします。例えば、オプションとして、コピーする[メタデータ](configure-metadata.md)を指定したり、特定のファイルを[除外](filtering.md)したり、DataSync が使用する[帯域幅](configure-bandwidth.md)を制限したりできます。

DataSync がデータを転送する方法はタスクモードによっても異なります。


| 拡張モードの転送 | 基本モードの転送 | 
| --- | --- | 
|  DataSync は、準備ができたらすぐに各オブジェクトを転送します。  |  DataSync がすべてのデータを準備すると、転送が開始されます。  | 

DataSync は、転送中に一部の項目をスキップすることがあります。[すべてのデータを転送する](configure-metadata.md#task-option-transfer-mode)ようにタスクを設定している場合、[アーカイブストレージクラス](create-s3-location.md#using-storage-classes)を使用していて復元されていない、送信元の場所のオブジェクトで発生する可能性があります。

### DataSync がデータの整合性を検証する方法
<a name="how-verifying-works"></a>

DataSync は転送中に必ずデータの整合性チェックを実行します。転送の終了時に、DataSync は転送されたデータのみ、または両方の場所のデータセット全体に対して追加のチェックを実行することもできます。詳細については、「[AWS DataSync がデータ整合性を検証する方法の設定](configure-data-verification-options.md)」を参照してください。

DataSync は、データの整合性をチェックする際に、場所内のファイル、オブジェクト、またはディレクトリのチェックサムとメタデータを計算して比較します。DataSync が場所間の相違点を検出した場合、検証は失敗し、エラーが発生します。例えば、`Checksum failure`、`Metadata failure`、`Files were added`、`Files were removed` などのエラーが表示される可能性があります。

検証の仕組みは、タスクモードと、転送終了時にデータの整合性を検証するように DataSync を設定しているかどうかによって異なります。


| 拡張モードの検証 | 基本モードの検証 | 
| --- | --- | 
|  DataSync は、オブジェクトが送信先に転送される際に各オブジェクトを検証します。 拡張モードでは、DataSync は[転送されたデータのみを検証します](configure-data-verification-options.md)。  |  転送の終了時に、DataSync はデータの整合性を検証します。 [データ検証の設定](configure-data-verification-options.md)方法によっては、大規模なデータセットではかなりの時間がかかる場合があります。  | 

### DataSync がオープンファイルとロックファイルを処理する方法
<a name="open-locked-files"></a>

オープン (使用中) またはロックされているファイルを転送するときは、次の点に注意してください。
+ 一般的に、DataSync は制限が一切ないオープンファイルを転送できます。
+ 転送中にファイルが開いていて書き込まれている場合、DataSync は転送タスクの検証フェーズでこの種の不整合を検出する場合があります。ファイルの最新バージョンを取得するには、タスクを再実行する必要があります。
+ ファイルがロックされていて、DataSync がそのファイルを開くことがサーバーによって禁止されている場合、DataSync は転送中にそのファイルをスキップし、エラーを記録します。
+ DataSync はファイルをロックまたはロック解除できません。

### 定期的な転送オプション
<a name="how-recurring-transfers-work"></a>

DataSync は、1 回限りの転送に加えて、定期的にデータを転送することもできます。これらの状況のオプションには、次のようなものがあります。
+ タスク実行時の[スケジューリング](task-scheduling.md)。
+ 前回のタスク実行以降に、[変更されたデータのみ](configure-metadata.md)を転送します。
+ ソースに存在しなくなった[転送先の場所内のデータを削除します](configure-metadata.md)。