REST Resource: transferJobs

Ressource: TransferJob

Diese Ressource stellt die Konfiguration eines Übertragungsjobs dar, der regelmäßig ausgeführt wird.

JSON-Darstellung
{
  "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
}
Felder
name

string

Ein eindeutiger Name (innerhalb des Übertragungsprojekts), der beim Erstellen des Jobs zugewiesen wird. Wenn dieses Feld in einer CreateTransferJobRequest-Anfrage leer ist, weist der Speicherübertragungsdienst einen eindeutigen Namen zu. Andernfalls wird der angegebene Name als eindeutiger Name für diesen Job verwendet.

Wenn der angegebene Name bereits von einem Job verwendet wird, schlägt die Erstellungsanfrage mit einem ALREADY_EXISTS-Fehler fehl.

Der Name muss mit dem Präfix "transferJobs/" beginnen und mit einem Buchstaben oder einer Ziffer enden. Er darf maximal 128 Zeichen lang sein. Bei Übertragungen mit PosixFilesystem muss dieser Name mit transferJobs/OPI beginnen. Bei allen anderen Übertragungstypen darf dieser Name nicht mit transferJobs/OPI beginnen.

Beispiel für ein nicht POSIX-Dateisystem: "transferJobs/^(?!OPI)[A-Za-z0-9-._~]*[A-Za-z0-9]$"

Beispiel für PosixFilesystem: "transferJobs/OPI^[A-Za-z0-9-._~]*[A-Za-z0-9]$"

Bei Anwendungen darf nicht auf die Durchsetzung von Benennungsanforderungen mit Bezug auf OPIs gesetzt werden.

Ungültige Jobnamen führen zu einem INVALID_ARGUMENT-Fehler.

description

string

Eine vom Nutzer angegebene Beschreibung der Aufgabe. Die maximale Länge beträgt 1.024 Byte bei Unicode-Codierung.

projectId

string

Die ID des Google Cloud-Projekts, zu dem der Job gehört.

transferSpec

object (TransferSpec)

Übertragungsspezifikation.

replicationSpec

object (ReplicationSpec)

Replikationsspezifikation.

notificationConfig

object (NotificationConfig)

Benachrichtigungskonfiguration

loggingConfig

object (LoggingConfig)

Logging-Konfiguration.

schedule

object (Schedule)

Gibt den Zeitplan für den Übertragungsjob an. Dieses Feld ist optional. Wenn das Feld nicht festgelegt ist, führt der Job keine Übertragung aus, es sei denn, Sie rufen „transferJobs.run“ auf oder aktualisieren den Job so, dass er einen nicht leeren Zeitplan hat.

eventStream

object (EventStream)

Gibt den Ereignisstream für den Übertragungsjob für ereignisgesteuerte Übertragungen an. Wenn „EventStream“ angegeben ist, werden die Zeitplanfelder ignoriert.

status

enum (Status)

Status des Jobs. Dieser Wert MUSS für CreateTransferJobRequests angegeben werden.

Hinweis:Die Auswirkungen des neuen Jobstatus treten bei einem nachfolgenden Joblauf auf. Wenn Sie beispielsweise den Jobstatus von ENABLED in DISABLED ändern und ein Vorgang, der durch die Übertragung gestartet wurde, ausgeführt wird, wirkt sich die Statusänderung nicht auf den aktuellen Vorgang aus.

creationTime

string (Timestamp format)

Nur Ausgabe. Der Zeitpunkt, zu dem der Übertragungsjob erstellt wurde.

Es wird RFC 3339 verwendet, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Glieder mit Dezimalstellen enthält. Andere Achsenbezeichnungen als „Z“ sind ebenfalls zulässig. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

lastModificationTime

string (Timestamp format)

Nur Ausgabe. Die Uhrzeit, zu der der Übertragungsjob zuletzt geändert wurde.

Es wird RFC 3339 verwendet, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Glieder mit Dezimalstellen enthält. Andere Achsenbezeichnungen als „Z“ sind ebenfalls zulässig. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

deletionTime

string (Timestamp format)

Nur Ausgabe. Der Zeitpunkt, zu dem der Übertragungsjob gelöscht wurde.

Es wird RFC 3339 verwendet, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Glieder mit Dezimalstellen enthält. Andere Achsenbezeichnungen als „Z“ sind ebenfalls zulässig. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

latestOperationName

string

Der Name des zuletzt gestarteten TransferOperation-Objekts dieser JobConfig. Ist vorhanden, wenn für diese JobConfig ein Übertragungsvorgang erstellt wurde.

ReplicationSpec

Gibt die Konfiguration für einen bucketübergreifenden Replikationsjob an. Bei der Bucket-übergreifenden Replikation werden neue oder aktualisierte Objekte aus einem Quell-Cloud Storage-Bucket in einen Ziel-Cloud Storage-Bucket kopiert. Vorhandene Objekte im Quell-Bucket werden durch einen neuen Bucket-übergreifenden Replikationsjob nicht kopiert.

JSON-Darstellung
{
  "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.
}
Felder
objectConditions

object (ObjectConditions)

Objektbedingungen, die festlegen, welche Objekte übertragen werden. Für Replikationsjobs werden nur includePrefixes und excludePrefixes unterstützt.

transferOptions

object (TransferOptions)

Gibt die Metadatenoptionen an, die während der Replikation angewendet werden sollen. Löschoptionen werden nicht unterstützt. Wenn eine Löschoption angegeben ist, schlägt die Anfrage mit einem INVALID_ARGUMENT-Fehler fehl.

Union-Feld data_source. Die zu replizierende Datenquelle. Für data_source ist nur einer der folgenden Werte zulässig:
gcsDataSource

object (GcsData)

Der Cloud Storage-Bucket, aus dem Objekte repliziert werden sollen.

Union-Feld data_sink. Das Ziel für replizierte Objekte. Für data_sink ist nur einer der folgenden Werte zulässig:
gcsDataSink

object (GcsData)

Der Cloud Storage-Bucket, in dem Objekte repliziert werden sollen.

Planen

Übertragungen können wiederkehrend oder nur einmal ausgeführt werden.

JSON-Darstellung
{
  "scheduleStartDate": {
    object (Date)
  },
  "scheduleEndDate": {
    object (Date)
  },
  "startTimeOfDay": {
    object (TimeOfDay)
  },
  "endTimeOfDay": {
    object (TimeOfDay)
  },
  "repeatInterval": string
}
Felder
scheduleStartDate

object (Date)

Pflichtangabe. Das Startdatum einer Übertragung. Die Datumsgrenzen werden relativ zur UTC-Zeit bestimmt. Wenn scheduleStartDate und startTimeOfDay im Vergleich zur Erstellungszeit des Jobs in der Vergangenheit liegen, beginnt die Übertragung am Tag nach dem Planen des Übertragungsantrags.

Hinweis:Wenn Jobs um oder kurz nach Mitternacht (UTC) gestartet werden, kann es sein, dass sie später als erwartet beginnen. Wenn Sie beispielsweise am 1. Juni eine ausgehende Anfrage eine Millisekunde vor Mitternacht (UTC) senden und der Storage Transfer Service-Server die Anfrage am 2. Juni empfängt, wird ein TransferJob mit scheduleStartDate = 2. Juni und startTimeOfDay = Mitternacht (UTC) erstellt. Der erste geplante TransferOperation findet am 3. Juni um Mitternacht UTC statt.

scheduleEndDate

object (Date)

Der letzte Tag, an dem eine Übertragung ausgeführt wird. Die Datumsgrenzen werden relativ zur UTC-Zeit bestimmt. Ein Job wird einmal pro 24 Stunden gemäß den folgenden Richtlinien ausgeführt:

  • Wenn scheduleEndDate und scheduleStartDate übereinstimmen und in der Zukunft relativ zu UTC liegen, wird die Übertragung nur einmal ausgeführt.
  • Wenn scheduleEndDate später als scheduleStartDate ist und scheduleEndDate in der Zukunft liegt (relativ zu UTC), wird der Job jeden Tag von startTimeOfDay bis scheduleEndDate ausgeführt.
startTimeOfDay

object (TimeOfDay)

Die Zeit in UTC, zu der ein Übertragungsjob ausgeführt werden soll. Überweisungen können auch später beginnen.

Wenn startTimeOfDay nicht angegeben ist:

  • Einmalige Übertragungen werden sofort ausgeführt.
  • Wiederkehrende Überweisungen werden sofort und jeden Tag um Mitternacht (UTC) bis zum scheduleEndDate ausgeführt.

Wenn startTimeOfDay angegeben ist:

  • Einmalige Übertragungen werden zum angegebenen Zeitpunkt ausgeführt.
  • Wiederkehrende Überweisungen werden bis zum scheduleEndDate täglich zur angegebenen Uhrzeit ausgeführt.
endTimeOfDay

object (TimeOfDay)

Die Zeit in UTC, zu der keine weiteren Übertragungsvorgänge geplant sind. In Kombination mit scheduleEndDate gibt endTimeOfDay das Enddatum und die Uhrzeit für den Beginn neuer Übertragungsvorgänge an. Dieses Feld muss größer oder gleich dem Zeitstempel sein, der der Kombination aus scheduleStartDate und startTimeOfDay entspricht. Außerdem gelten folgende Einschränkungen:

  • Wenn endTimeOfDay nicht festgelegt ist und scheduleEndDate festgelegt ist, wird für endTimeOfDay der Standardwert 23:59:59 verwendet.

  • Wenn endTimeOfDay festgelegt ist und scheduleEndDate nicht, wird INVALID_ARGUMENT zurückgegeben.

repeatInterval

string (Duration format)

Intervall zwischen dem Beginn der einzelnen geplanten Übertragungsvorgänge. Wenn keine Angabe erfolgt, beträgt der Standardwert 24 Stunden. Dieser Wert darf nicht unter einer Stunde liegen.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

Datum

Stellt ein ganzes Kalenderdatum oder einen Teil davon dar, z. B. einen Geburtstag. Die Uhrzeit und die Zeitzone werden entweder an einer anderen Stelle angegeben oder sind nicht relevant. Das Datum wird relativ zum gregorianischen Kalender angegeben. Das kann Folgendes bedeuten:

  • Ein vollständiges Datum mit Werten für Jahr, Monat und Tag, die nicht 0 sind.
  • Einen Monat und Tag mit dem Wert „0“ für das Jahr (z. B. ein Jahrestag).
  • Ein Jahr für sich, mit dem Wert „0“ für Monat und Tag.
  • Ein Jahr und ein Monat mit dem Wert „0“ für den Tag (z. B. das Ablaufdatum einer Kreditkarte).

Ähnliche Typen:

JSON-Darstellung
{
  "year": integer,
  "month": integer,
  "day": integer
}
Felder
year

integer

Das Jahr des Datums. Es muss zwischen 1 und 9999 liegen oder kann 0 sein, wenn ein Datum ohne Jahresangabe angegeben wird.

month

integer

Monat eines Jahres. Die Angabe muss zwischen 1 und 12 liegen. Sie kann auch 0 sein, wenn ein Jahr ohne Monat und Tag angegeben wird.

day

integer

Tag des Monats. Die Angabe muss zwischen 1 und 31 liegen und für das Jahr und den Monat gültig sein. Sie kann auch 0 sein, wenn das Jahr bzw. der Monat angegeben wird, der Tag selbst jedoch nicht von Belang ist.

TimeOfDay

Stellt eine Tageszeit dar. Das Datum und die Zeitzone sind entweder nicht relevant oder werden an anderer Stelle angegeben. Eine API kann Schaltsekunden zulassen. Vergleichbare Typen sind google.type.Date und google.protobuf.Timestamp.

JSON-Darstellung
{
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer
}
Felder
hours

integer

Stunden eines Tages im 24-Stunden-Format. Muss größer oder gleich 0 und in der Regel kleiner oder gleich 23 sein. Eine API kann den Wert "24:00:00" für Szenarien wie Geschäftsschlusszeit zulassen.

minutes

integer

Minuten einer Stunde. Muss größer oder gleich 0 und kleiner oder gleich 59 sein.

seconds

integer

Sekunden einer Minute. Muss größer oder gleich 0 und normalerweise kleiner oder gleich 59 sein. Eine API kann den Wert 60 zulassen, wenn sie Schaltsekunden zulässt.

nanos

integer

Sekundenbruchteile in Nanosekunden. Muss größer oder gleich 0 und kleiner oder gleich 999.999.999 sein.

EventStream

Hier werden die Optionen für die ereignisgesteuerte Übertragung angegeben. Bei ereignisgesteuerten Übertragungen wird ein Ereignisstream überwacht, um aktualisierte Dateien zu übertragen.

JSON-Darstellung
{
  "name": string,
  "eventStreamStartTime": string,
  "eventStreamExpirationTime": string
}
Felder
name

string

Pflichtangabe. Gibt einen eindeutigen Namen der Ressource an, z. B. den AWS SQS-ARN im Format „arn:aws:sqs:region:account_id:queue_name“ oder den Pub/Sub-Abo-Ressourcennamen im Format „projects/{project}/subscriptions/{sub}“.

eventStreamStartTime

string (Timestamp format)

Gibt das Datum und die Uhrzeit an, ab dem der Storage Transfer Service nach Ereignissen aus diesem Stream sucht. Wenn keine Startzeit angegeben ist oder die Startzeit in der Vergangenheit liegt, beginnt der Storage Transfer Service sofort mit dem Zuhören.

Es wird RFC 3339 verwendet, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Glieder mit Dezimalstellen enthält. Andere Achsenbezeichnungen als „Z“ sind ebenfalls zulässig. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

eventStreamExpirationTime

string (Timestamp format)

Gibt das Datum und die Uhrzeit an, zu der Storage Transfer Service nicht mehr auf Ereignisse aus diesem Stream wartet. Nach Ablauf dieser Zeit werden alle laufenden Übertragungen abgeschlossen, aber es werden keine neuen Übertragungen mehr gestartet.

Es wird RFC 3339 verwendet, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Glieder mit Dezimalstellen enthält. Andere Achsenbezeichnungen als „Z“ sind ebenfalls zulässig. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

Status

Der Status des Übertragungsjobs.

Enums
STATUS_UNSPECIFIED Null ist ein ungültiger Wert.
ENABLED Neue Übertragungen werden gemäß dem Zeitplan ausgeführt.
DISABLED Neue Übertragungen werden nicht geplant.
DELETED Dies ist ein Status vor dem vorläufigen Löschen. Nachdem ein Übertragungsjob in diesen Status gesetzt wurde, werden der Job und alle Übertragungsausführungen der Garbage Collection unterzogen. Übertragungsjobs können 30 Tage nach dem Festlegen des Status auf DELETED automatisch gelöscht werden.

Methoden

create

Erstellt einen Übertragungsjob, der regelmäßig ausgeführt wird.

delete

Löscht einen Übertragungsjob.

get

Ruft einen Übertragungsjob ab.

list

Listet Übertragungsjobs auf.

patch

Aktualisiert einen Übertragungsjob.

run

Startet einen neuen Vorgang für den angegebenen Übertragungsjob.