REST Resource: transferJobs

リソース: TransferJob

このリソースは、定期的に実行される転送ジョブの設定を表します。

JSON 表現
{
  "name": string,
  "description": string,
  "projectId": string,
  "transferSpec": {
    object (TransferSpec)
  },
  "replicationSpec": {
    object (ReplicationSpec)
  },
  "notificationConfig": {
    object (NotificationConfig)
  },
  "loggingConfig": {
    object (LoggingConfig)
  },
  "schedule": {
    object (Schedule)
  },
  "eventStream": {
    object (EventStream)
  },
  "status": enum (Status),
  "creationTime": string,
  "lastModificationTime": string,
  "deletionTime": string,
  "latestOperationName": string
}
フィールド
name

string

ジョブの作成時に割り当てられる一意の名前(転送プロジェクト内)。CreateTransferJobRequest でこのフィールドが空の場合、Storage Transfer Service は一意の名前を割り当てます。それ以外の場合は、指定された名前がこのジョブの一意の名前として使用されます。

指定された名前がジョブで使用されている場合、作成リクエストは ALREADY_EXISTS エラーで失敗します。

この名前は、"transferJobs/" 接頭辞で始まり、英字または数字で終わる必要があります。また、128 文字以内にする必要があります。PosixFilesystem を含む転送の場合、この名前は transferJobs/OPI で始まる必要があります。他のすべての転送タイプの場合、この名前は transferJobs/OPI で始めることはできません。

PosixFilesystem 以外の例: "transferJobs/^(?!OPI)[A-Za-z0-9-._~]*[A-Za-z0-9]$"

PosixFilesystem の例: "transferJobs/OPI^[A-Za-z0-9-._~]*[A-Za-z0-9]$"

アプリケーションは、OPI に関連する命名規則の適用に依存してはなりません。

無効なジョブ名は、INVALID_ARGUMENT エラーで失敗します。

description

string

ユーザーがジョブに指定した説明。Unicode でエンコードされた場合、最大長は 1,024 バイトです。

projectId

string

ジョブを所有する Google Cloud プロジェクトの ID。

transferSpec

object (TransferSpec)

転送仕様。

replicationSpec

object (ReplicationSpec)

レプリケーションの仕様。

notificationConfig

object (NotificationConfig)

通知の構成。

loggingConfig

object (LoggingConfig)

ロギング構成。

schedule

object (Schedule)

転送ジョブのスケジュールを指定します。このフィールドは省略できます。 このフィールドが設定されていない場合、transferJobs.run を呼び出すか、空でないスケジュールを持つようにジョブを更新しない限り、ジョブは転送を実行しません。

eventStream

object (EventStream)

イベント ドリブン転送の転送ジョブのイベントストリームを指定します。EventStream が指定されている場合、Schedule フィールドは無視されます。

status

enum (Status)

ジョブのステータス。この値は CreateTransferJobRequests に指定する必要があります。

注: 新しいジョブ ステータスの効果は、後続のジョブ実行中に発生します。たとえば、ジョブのステータスを ENABLED から DISABLED に変更し、転送によって生成されたオペレーションが実行中の場合、ステータスの変更は現在のオペレーションには影響しません。

creationTime

string (Timestamp format)

出力専用。転送ジョブが作成された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

lastModificationTime

string (Timestamp format)

出力専用。転送ジョブが最後に変更された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

deletionTime

string (Timestamp format)

出力専用。転送ジョブが削除された日時。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

latestOperationName

string

この JobConfig で最後に開始された TransferOperation の名前。この JobConfig に TransferOperation が作成されている場合に存在します。

ReplicationSpec

クロスバケット レプリケーション ジョブの構成を指定します。クロスバケット レプリケーションは、新規または更新されたオブジェクトをソースの Cloud Storage バケットから宛先の Cloud Storage バケットにコピーします。ソースバケット内の既存のオブジェクトは、新しいクロスバケット レプリケーション ジョブによってコピーされません。

JSON 表現
{
  "objectConditions": {
    object (ObjectConditions)
  },
  "transferOptions": {
    object (TransferOptions)
  },

  // Union field data_source can be only one of the following:
  "gcsDataSource": {
    object (GcsData)
  }
  // End of list of possible types for union field data_source.

  // Union field data_sink can be only one of the following:
  "gcsDataSink": {
    object (GcsData)
  }
  // End of list of possible types for union field data_sink.
}
フィールド
objectConditions

object (ObjectConditions)

転送するオブジェクトを決定するオブジェクト条件。レプリケーション ジョブの場合、includePrefixesexcludePrefixes のみがサポートされます。

transferOptions

object (TransferOptions)

レプリケーション中に適用されるメタデータ オプションを指定します。削除オプションはサポートされていません。削除オプションを指定すると、リクエストは INVALID_ARGUMENT エラーで失敗します。

共用体フィールド data_source。複製するデータソース。data_source は次のいずれかになります。
gcsDataSource

object (GcsData)

オブジェクトを複製する Cloud Storage バケット。

共用体フィールド data_sink。複製されたオブジェクトの宛先。data_sink は次のいずれかになります。
gcsDataSink

object (GcsData)

オブジェクトを複製する Cloud Storage バケット。

スケジュール

転送は繰り返すか、一度だけ実行するようにスケジュール設定できます。

JSON 表現
{
  "scheduleStartDate": {
    object (Date)
  },
  "scheduleEndDate": {
    object (Date)
  },
  "startTimeOfDay": {
    object (TimeOfDay)
  },
  "endTimeOfDay": {
    object (TimeOfDay)
  },
  "repeatInterval": string
}
フィールド
scheduleStartDate

object (Date)

必須。移行の開始日。日付の境界は UTC 時間に基づいて決定されます。scheduleStartDatestartTimeOfDay がジョブの作成時間より前の場合、転送は転送リクエストのスケジュール設定の翌日に開始されます。

注: UTC の深夜または深夜近くにジョブを開始すると、ジョブが想定よりも遅れて開始される可能性があります。たとえば、6 月 1 日の午前 0 時 1 ミリ秒前にアウトバウンド リクエストを送信し、Storage Transfer Service サーバーが 6 月 2 日にリクエストを受信した場合、scheduleStartDate が 6 月 2 日に設定され、startTimeOfDay が UTC の午前 0 時に設定された TransferJob が作成されます。最初のスケジュール設定された TransferOperation は、6 月 3 日(UTC)の深夜に実行されます。

scheduleEndDate

object (Date)

転送が実行される最終日。日付の境界は UTC 時間に基づいて決定されます。ジョブは、次のガイドラインに沿って 24 時間に 1 回実行されます。

  • scheduleEndDatescheduleStartDate が同じで、UTC を基準とした将来の日時の場合、転送は 1 回だけ実行されます。
  • scheduleEndDatescheduleStartDate より後で、UTC より後である場合、ジョブは毎日 startTimeOfDayscheduleEndDate に実行されます。scheduleEndDate
startTimeOfDay

object (TimeOfDay)

転送ジョブの実行がスケジュールされる時刻(UTC)。転送は、この時間より遅れて開始される場合があります。

startTimeOfDay が指定されていない場合:

  • 1 回限りの転送はすぐに実行されます。
  • 定期送金は、直ちに実行され、scheduleEndDate まで毎日午前 0 時(UTC)に実行されます。

startTimeOfDay が指定されている場合:

  • 1 回限りの送金は、指定した時刻に実行されます。
  • 定期的な転送は、scheduleEndDate を介して毎日指定された時刻に実行されます。
endTimeOfDay

object (TimeOfDay)

転送オペレーションがスケジュールされなくなる UTC 時刻。scheduleEndDate と組み合わせて使用される endTimeOfDay は、新しい転送オペレーションを開始する終了日時を指定します。このフィールドは、scheduleStartDatestartTimeOfDay の組み合わせに対応するタイムスタンプ以上でなければなりません。また、次の制約があります。

  • endTimeOfDay が設定されておらず、scheduleEndDate が設定されている場合、endTimeOfDay にはデフォルト値 23:59:59 が使用されます。

  • endTimeOfDay が設定され、scheduleEndDate が設定されていない場合、INVALID_ARGUMENT が返されます。

repeatInterval

string (Duration format)

スケジュールされた各 TransferOperation の開始間隔。指定しない場合、デフォルト値は 24 時間です。この値は 1 時間未満にすることはできません。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

日付

誕生日などのように、カレンダーの日付全体またはその一部を表します。時間帯とタイムゾーンは、他の場所で指定されているか、重要ではありません。日付はグレゴリオ暦を基準にしています。これは次のいずれかを表します。

  • ゼロ以外の年、月、日の値を含む完全な日付。
  • 年の値がゼロである月と日(記念日など)。
  • 月と日の値がゼロである単独の年。
  • 日がゼロである年と月(クレジット カードの有効期限など)

関連するタイプ:

JSON 表現
{
  "year": integer,
  "month": integer,
  "day": integer
}
フィールド
year

integer

その日付の年。1~9999、または年のない日付を指定する場合は 0 にする必要があります。

month

integer

1 年の中の月。1~12、または月と日のない年を指定する場合は 0 にする必要があります。

day

integer

1 月の中の日付。1~31 で、その年と月に対して有効である必要があります。または、日が重要でない場合に、年のみか年と月を指定するには 0 にする必要があります。

TimeOfDay

1 日のうちの時間を表します。日付とタイムゾーンは重要ではないか、他の場所で指定されています。API は、うるう秒を許可するようにできます。関連する型は、google.type.Dategoogle.protobuf.Timestamp です。

JSON 表現
{
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer
}
フィールド
hours

integer

24 時間形式の時間。0 以上の値を指定してください。通常は 23 以下にする必要があります。API ではビジネスの終了時間などのシナリオにおいて、値 "24:00:00" を許可することもできます。

minutes

integer

分。0 以上 59 以下にする必要があります。

seconds

integer

1 分間の秒数。0 以上で、通常は 59 以下にする必要があります。API がうるう秒を許可する場合、値 60 が許可されます。

nanos

integer

秒の小数部分(ナノ秒単位)。0 以上 999,999,999 以下にする必要があります。

EventStream

イベント ドリブン転送オプションを指定します。イベント ドリブン転送は、イベント ストリームをリッスンして更新されたファイルを転送します。

JSON 表現
{
  "name": string,
  "eventStreamStartTime": string,
  "eventStreamExpirationTime": string
}
フィールド
name

string

必須。リソースの一意の名前を指定します。たとえば、AWS SQS ARN(「arn:aws:sqs:region:account_id:queue_name」形式)や Pub/Sub サブスクリプション リソース名(「projects/{project}/subscriptions/{sub}」形式)などです。

eventStreamStartTime

string (Timestamp format)

Storage Transfer Service がこのストリームからのイベントのリッスンを開始する日時を指定します。開始時間が指定されていない場合、または開始時間が過去の場合、Storage Transfer Service はすぐにリッスンを開始します。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

eventStreamExpirationTime

string (Timestamp format)

Storage Transfer Service がこのストリームからのイベントのリッスンを停止する日時を指定します。この期間が過ぎると、進行中の転送は完了しますが、新しい転送は開始されません。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

ステータス

転送ジョブのステータス。

列挙型
STATUS_UNSPECIFIED ゼロは無効な値です。
ENABLED 新しい転送はスケジュールに基づいて実行されます。
DISABLED 新しい転送はスケジュールされません。
DELETED これは削除機能(復元可能)状態です。転送ジョブがこの状態に設定されると、ジョブとすべての転送実行がガベージ コレクションの対象になります。転送ジョブは、ステータスが DELETED に設定されてから 30 日後にガベージ コレクションの対象になります。

メソッド

create

定期的に実行される転送ジョブを作成します。

delete

転送ジョブを削除します。

get

転送ジョブを取得します。

list

転送ジョブを一覧表示します。

patch

転送ジョブを更新します。

run

指定された転送ジョブの新しいオペレーションを開始します。