---
articleId: 9a979b90-f6a0-430a-92b9-d23852461be4
slug: incremental-data-transfer
title: 差分転送機能
parentCategoryId: 169898c2-b3f5-4615-9c4c-b7fedbddda33
languageCode: ja
---
## 概要
転送設定内の転送元で指定可能な「差分転送機能」のDocsです。
## 差分転送とは
前回転送時からの増分データのみを転送するモードです。
差分転送を有効化した場合、転送時に「どこまで転送したか」を保持します。
そのため前回転送時以降に追加された新しいファイルを特定でき、その増分ファイルのみを転送する挙動となります。
## 対応コネクタ
### カラムを利用して差分転送を行うコネクタ
[転送元 - MongoDB](/docs/data-source-mongodb)
[転送元 - MySQL](/docs/data-source-mysql)
[転送元 - Oracle Database](/docs/data-source-oracle-database)
[転送元 - PostgreSQL](/docs/data-source-postgresql)
[転送元 - Microsoft SQL Server](/docs/data-source-sql-server)
[転送元 - SAP S/4HANA OData](/docs/data-source-sap-odata)
[転送元 - Db2 for LUW](/docs/data-source-db2-for-luw)
[転送元 - Microsoft Dynamics 365 CRM](data-source-microsoft-dynamics-crm)
[転送元 - Salesforce](/docs/data-source-salesforce)
### パスプレフィックスを利用して差分転送を行うコネクタ
[転送元 - Amazon S3](/docs/data-source-s3)
[転送元 - Azure Blob Storage](/docs/data-source-azure-blob-storage)
[転送元 - FTP・FTPS](/docs/data-source-ftp)
[転送元 - Google Cloud Storage](/docs/data-source-google-cloud-storage)
[転送元 - SFTP](/docs/data-source-sftp)
[転送元 - Google Play](/docs/data-source-google-play)
[転送元 - KARTE Datahub](/docs/data-source-karte-datahub)
[転送元 - Repro](/docs/data-source-repro)
### 更新日時を利用して差分転送を行うコネクタ
[転送元 - Amazon S3](/docs/data-source-s3)
[転送元 - Google Analytics 4](/docs/data-source-google-analytics4)
[転送元 - HubSpot](/docs/data-source-hubspot)
[転送元 - TROCCO Web行動ログ](/docs/data-source-n-analytics-log)
:::(Info) (転送元Amazon S3について)
転送元Amazon S3では、パスプレフィックスと更新日時のいずれかを選択して差分転送できます。
:::
## 初回転送時の挙動
差分転送を指定した場合も、初回転送時は全件転送します。
初回転送時においても、**最後に転送されたレコード・最後に転送されたパス・レコードの更新日時・ファイルの更新日時**に値を指定することで、任意のファイル以降のファイルを転送できます。
詳しくは設定値の項目をご参照ください。
## 設定値
### カラムを利用して差分転送を行うコネクタ
カラムを利用して差分転送を行います。
「増分データを判別するカラム」の値が、「最後に転送されたレコード」の値よりも大きいレコードのみ、取得します。
| 項目名 | 説明 |
| --- | --- |
| 増分データを判別するカラム | 差分転送の元になる列を指定します。
レコードに対してユニークかつAuto Incrementalな列(IDやタイムスタンプなど)がある場合、その列名を指定してください。
複数の列名をカンマ区切りで指定することもできます。 |
| 最後に転送されたレコード | 通常はこのフォームを編集することはありません(TROCCOが自動で更新します)。
ジョブの実行に異常が発生した場合や、初回転送時に、任意の箇所から転送を実行したい場合のみこのフォームを編集します。
このフォームには「前回転送時にどこまで転送したか」に関する情報を記載します。 |
### パスプレフィックスを利用して差分転送を行うコネクタ
パスプレフィックスを利用して差分転送します。
ファイル名を昇順でソートしたときに「最後に転送されたパス」より後になるファイルを増分として判別し、データ取得します。
そのため、ファイルの更新日の増分では判別できないことにご注意ください。
| 項目名 | 説明 |
| --- | --- |
| 最後に転送されたパス | 通常はこのフォームを編集することはありません(TROCCOが自動で更新します)。
ジョブの実行に異常が発生した場合や、初回転送時に、任意の箇所から転送したい場合のみこのフォームを編集します。
このフォームには「前回転送時にどこまで転送したか」に関する情報を記載します。 |
:::(Warning) (最後に転送されたレコード・最後に転送されたパスの値)
これらの値は、それぞれ`last_record`・`last_path`というキーの値として、転送設定STEP3の確認・適用(および変更履歴の最新のリビジョン)に表示されます。
一方で、これらの値は、転送設定詳細画面で確認できるYAML設定ファイルに含まれません。
したがって、**Gitリポジトリ連携を行う際は、これらの値はGit連携されません。**
:::
#### 差分転送例
たとえば、S3のバケット上に以下のファイルがある状態で転送を行います。
* `001.csv`
* `002.csv`
* `003.csv`
このとき、**最後に転送されたパス**には、`003.csv`が保存されます。
この状態で、バケットに`000.csv`と`004.csv`が追加し、再度転送を実行したとします。
`000.csv`は転送されず、`004.csv`のみが転送されます。
なお、新たに**最後に転送されたパス**には、`004.csv`が保存されます。
### 更新日時を利用して差分転送を行うコネクタ
#### Google Analytics 4・HubSpot
レコードの更新日時を利用して差分転送を行います。
前回転送時に「更新日時がもっとも新しいレコードの更新日時」を記録しておき、それよりも更新日時が新しいレコードのみを転送します。
| 項目名 | 説明 |
| --- | --- |
| 最新のレコード更新日時 | 通常はこのフォームを編集することはありません(TROCCOが自動で更新します)。
ジョブの実行に異常が発生した場合や、初回転送時に、任意の時刻以降のデータを転送を実行したい場合のみこのフォームを編集します。
このフォームには「前回転送時にどこまで転送したか」に関する情報を記載します。万一入力される場合は、`yyyy-mm-dd HH:MM:SS z`形式で入力ください。 |
#### Amazon S3・TROCCO Web行動ログ
ファイルの更新日時を利用して差分転送を行います。
前回転送時に「更新日時がもっとも新しいファイルの更新日時」を記録しておき、それよりも更新日時が新しいファイルのみを転送します。
| 項目名 | 説明 |
| --- | --- |
| 最後に転送されたファイルの更新日時 | 通常はこのフォームを編集することはありません(TROCCOが自動で更新します)。
ジョブの実行に異常が発生した場合や、初回転送時に、任意の時刻以降のデータを転送を実行したい場合のみこのフォームを編集します。
このフォームには「前回転送時にどこまで転送したか」に関する情報を記載します。万一入力される場合は、`yyyy-MM-dd'T'HH:mm:ss.SSSZ`形式で入力ください。 |
## 任意のデータから転送を再開したい場合
**最後に転送されたレコード・最後に転送されたパス・レコードの更新日時・ファイルの更新日時**を編集することで、任意の場所から転送を再開できます。
ただし、すでに転送されたファイルを再度転送すると、転送先でデータが重複する可能性があります。適宜データを削除した上で再実行するようにしてください。