REST Resource: transferJobs

Resource: TransferJob

Resource ini mewakili konfigurasi tugas transfer yang berjalan secara berkala.

Representasi 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
}
Kolom
name

string

Nama unik (dalam project transfer) yang ditetapkan saat tugas dibuat. Jika kolom ini kosong di CreateTransferJobRequest, Storage Transfer Service akan menetapkan nama unik. Jika tidak, nama yang ditentukan akan digunakan sebagai nama unik untuk tugas ini.

Jika nama yang ditentukan sedang digunakan oleh tugas, permintaan pembuatan akan gagal dengan error ALREADY_EXISTS.

Nama ini harus diawali dengan awalan "transferJobs/" dan diakhiri dengan huruf atau angka, dan tidak boleh lebih dari 128 karakter. Untuk transfer yang melibatkan PosixFilesystem, nama ini harus dimulai dengan transferJobs/OPI secara khusus. Untuk semua jenis transfer lainnya, nama ini tidak boleh diawali dengan transferJobs/OPI.

Contoh Non-PosixFilesystem: "transferJobs/^(?!OPI)[A-Za-z0-9-._~]*[A-Za-z0-9]$"

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

Aplikasi tidak boleh mengandalkan penegakan persyaratan penamaan yang melibatkan OPI.

Nama tugas yang tidak valid akan gagal dengan error INVALID_ARGUMENT.

description

string

Deskripsi yang diberikan oleh pengguna untuk tugas. Panjang maksimumnya adalah 1.024 byte jika dienkode Unicode.

projectId

string

ID project Google Cloud yang memiliki tugas.

transferSpec

object (TransferSpec)

Spesifikasi transfer.

replicationSpec

object (ReplicationSpec)

Spesifikasi replikasi.

notificationConfig

object (NotificationConfig)

Konfigurasi notifikasi.

loggingConfig

object (LoggingConfig)

Konfigurasi logging.

schedule

object (Schedule)

Menentukan jadwal untuk tugas transfer. Kolom ini bersifat opsional. Jika kolom tidak ditetapkan, tugas tidak akan pernah mengeksekusi transfer, kecuali jika Anda memanggil transferJobs.run atau memperbarui tugas agar memiliki jadwal yang tidak kosong.

eventStream

object (EventStream)

Menentukan aliran peristiwa untuk tugas transfer untuk transfer berbasis peristiwa. Jika EventStream ditentukan, kolom Jadwal akan diabaikan.

status

enum (Status)

Status tugas. Nilai ini HARUS ditentukan untuk CreateTransferJobRequests.

Catatan: Efek status tugas baru terjadi selama tugas berikutnya dijalankan. Misalnya, jika Anda mengubah status tugas dari ENABLED menjadi DISABLED, dan operasi yang dihasilkan oleh transfer sedang berjalan, perubahan status tidak akan memengaruhi operasi saat ini.

creationTime

string (Timestamp format)

Hanya output. Waktu saat tugas transfer dibuat.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan digit pecahan 0, 3, 6, atau 9. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

lastModificationTime

string (Timestamp format)

Hanya output. Waktu saat tugas transfer terakhir diubah.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan digit pecahan 0, 3, 6, atau 9. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

deletionTime

string (Timestamp format)

Hanya output. Waktu saat tugas transfer dihapus.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan digit pecahan 0, 3, 6, atau 9. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

latestOperationName

string

Nama TransferOperation yang baru saja dimulai dari JobConfig ini. Ada jika TransferOperation telah dibuat untuk JobConfig ini.

ReplicationSpec

Menentukan konfigurasi untuk tugas replikasi lintas bucket. Replikasi lintas bucket menyalin objek baru atau yang diperbarui dari bucket Cloud Storage sumber ke bucket Cloud Storage tujuan. Objek yang ada di bucket sumber tidak disalin oleh tugas replikasi lintas bucket baru.

Representasi 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.
}
Kolom
objectConditions

object (ObjectConditions)

Kondisi objek yang menentukan objek mana yang ditransfer. Untuk tugas replikasi, hanya includePrefixes dan excludePrefixes yang didukung.

transferOptions

object (TransferOptions)

Menentukan opsi metadata yang akan diterapkan selama replikasi. Opsi hapus tidak didukung. Jika opsi hapus ditentukan, permintaan akan gagal dengan error INVALID_ARGUMENT.

Kolom union data_source. Sumber data yang akan direplikasi. data_source hanya ada berupa salah satu diantara berikut:
gcsDataSource

object (GcsData)

Bucket Cloud Storage tempat objek direplikasi.

Kolom union data_sink. Tujuan untuk objek yang direplikasi. data_sink hanya ada berupa salah satu diantara berikut:
gcsDataSink

object (GcsData)

Bucket Cloud Storage tempat objek direplikasi.

Jadwal

Transfer dapat dijadwalkan untuk berulang atau berjalan hanya sekali.

Representasi JSON
{
  "scheduleStartDate": {
    object (Date)
  },
  "scheduleEndDate": {
    object (Date)
  },
  "startTimeOfDay": {
    object (TimeOfDay)
  },
  "endTimeOfDay": {
    object (TimeOfDay)
  },
  "repeatInterval": string
}
Kolom
scheduleStartDate

object (Date)

Wajib. Tanggal mulai transfer. Batas tanggal ditentukan relatif terhadap waktu UTC. Jika scheduleStartDate dan startTimeOfDay sudah berlalu dibandingkan dengan waktu pembuatan tugas, transfer akan dimulai sehari setelah Anda menjadwalkan permintaan transfer.

Catatan: Saat memulai tugas pada atau mendekati tengah malam UTC, tugas mungkin dimulai lebih lambat dari yang diharapkan. Misalnya, jika Anda mengirim permintaan keluar pada 1 Juni satu milidetik sebelum tengah malam UTC dan server Storage Transfer Service menerima permintaan pada 2 Juni, server akan membuat TransferJob dengan scheduleStartDate ditetapkan ke 2 Juni dan startTimeOfDay ditetapkan ke tengah malam UTC. TransferOperation terjadwal pertama akan berlangsung pada 3 Juni pada tengah malam UTC.

scheduleEndDate

object (Date)

Hari terakhir transfer berjalan. Batas tanggal ditentukan relatif terhadap waktu UTC. Tugas berjalan sekali per 24 jam dalam panduan berikut:

  • Jika scheduleEndDate dan scheduleStartDate sama dan di masa mendatang relatif terhadap UTC, transfer hanya akan dijalankan satu kali.
  • Jika scheduleEndDate lebih lambat dari scheduleStartDate dan scheduleEndDate berada di masa mendatang relatif terhadap UTC, tugas akan berjalan setiap hari pada startTimeOfDay hingga scheduleEndDate.
startTimeOfDay

object (TimeOfDay)

Waktu dalam UTC saat tugas transfer dijadwalkan untuk dijalankan. Transfer mungkin dimulai lebih lambat dari waktu ini.

Jika startTimeOfDay tidak ditentukan:

  • Transfer satu kali akan langsung berjalan.
  • Transfer berulang langsung berjalan, dan setiap hari pada tengah malam UTC, melalui scheduleEndDate.

Jika startTimeOfDay ditentukan:

  • Transfer satu kali dijalankan pada waktu yang ditentukan.
  • Transfer berulang berjalan pada waktu yang ditentukan setiap hari, melalui scheduleEndDate.
endTimeOfDay

object (TimeOfDay)

Waktu dalam UTC saat tidak ada operasi transfer lebih lanjut yang dijadwalkan. Dikombinasikan dengan scheduleEndDate, endTimeOfDay menentukan tanggal dan waktu akhir untuk memulai operasi transfer baru. Kolom ini harus lebih besar dari atau sama dengan stempel waktu yang sesuai dengan kombinasi scheduleStartDate dan startTimeOfDay, dan tunduk pada hal berikut:

  • Jika endTimeOfDay tidak ditetapkan dan scheduleEndDate ditetapkan, nilai default 23:59:59 akan digunakan untuk endTimeOfDay.

  • Jika endTimeOfDay ditetapkan dan scheduleEndDate tidak ditetapkan, INVALID_ARGUMENT akan ditampilkan.

repeatInterval

string (Duration format)

Interval antara awal setiap TransferOperation terjadwal. Jika tidak ditentukan, nilai defaultnya adalah 24 jam. Nilai ini tidak boleh kurang dari 1 jam.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

Tanggal

Menampilkan seluruh atau sebagian tanggal kalender, seperti ulang tahun. Waktu dan zona waktu ditentukan di tempat lain atau dianggap tidak signifikan. Tanggal ini terkait dengan Kalender Gregorian. Ini dapat mewakili salah satu dari hal berikut:

  • Tanggal lengkap, dengan nilai tahun, bulan, dan hari bukan nol.
  • Bulan dan hari, dengan tahun nol (misalnya, hari jadi).
  • Tahun saja, dengan bulan nol dan hari nol.
  • Tahun dan bulan, dengan hari nol (misalnya, tanggal habis masa berlaku kartu kredit).

Jenis terkait:

Representasi JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Kolom
year

integer

Tahun dalam tanggal. Harus dari 1 hingga 9999, atau 0 untuk menentukan tanggal tanpa tahun.

month

integer

Bulan dalam setahun. Harus dari 1 hingga 12, atau 0 untuk menentukan tahun tanpa bulan dan hari.

day

integer

Hari dalam bulan. Harus dari 1 hingga 31 dan berlaku untuk tahun dan bulan, atau 0 untuk menentukan tahun saja atau tahun dan bulan jika hari dianggap tidak signifikan.

TimeOfDay

Merepresentasikan waktu. Tanggal dan zona waktu tidak signifikan atau ditentukan di tempat lain. API dapat memilih untuk mengizinkan detik kabisat. Jenis terkait adalah google.type.Date dan google.protobuf.Timestamp.

Representasi JSON
{
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer
}
Kolom
hours

integer

Jam dalam format 24 jam. Harus lebih besar dari atau sama dengan 0 dan biasanya harus kurang dari atau sama dengan 23. API dapat memilih untuk mengizinkan nilai "24:00:00" untuk skenario seperti waktu tutup bisnis.

minutes

integer

Menit dalam jam. Harus lebih besar dari atau sama dengan 0 dan kurang dari atau sama dengan 59.

seconds

integer

Detik dalam menit. Harus lebih besar dari atau sama dengan 0 dan biasanya harus kurang dari atau sama dengan 59. API dapat mengizinkan nilai 60 jika memungkinkan detik kabisat.

nanos

integer

Pecahan detik, dalam nanodetik. Harus lebih besar dari atau sama dengan 0 dan kurang dari atau sama dengan 999.999.999.

EventStream

Menentukan opsi Transfer berbasis peristiwa. Transfer berbasis peristiwa memproses aliran peristiwa untuk mentransfer file yang diperbarui.

Representasi JSON
{
  "name": string,
  "eventStreamStartTime": string,
  "eventStreamExpirationTime": string
}
Kolom
name

string

Wajib. Menentukan nama unik resource seperti ARN AWS SQS dalam bentuk 'arn:aws:sqs:region:account_id:queue_name', atau nama resource langganan Pub/Sub dalam bentuk 'projects/{project}/subscriptions/{sub}'.

eventStreamStartTime

string (Timestamp format)

Menentukan tanggal dan waktu Storage Transfer Service mulai memproses peristiwa dari aliran data ini. Jika tidak ada waktu mulai yang ditentukan atau waktu mulai sudah berlalu, Layanan Transfer Penyimpanan akan segera mulai memproses.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan digit pecahan 0, 3, 6, atau 9. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

eventStreamExpirationTime

string (Timestamp format)

Menentukan data dan waktu saat Storage Transfer Service berhenti memproses peristiwa dari aliran ini. Setelah waktu ini, setiap transfer yang sedang berlangsung akan selesai, tetapi tidak ada transfer baru yang dimulai.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan digit pecahan 0, 3, 6, atau 9. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

Status

Status tugas transfer.

Enum
STATUS_UNSPECIFIED Nol adalah nilai yang tidak sah.
ENABLED Transfer baru dilakukan berdasarkan jadwal.
DISABLED Transfer baru tidak dijadwalkan.
DELETED Ini adalah status penghapusan sementara. Setelah tugas transfer ditetapkan ke status ini, tugas dan semua eksekusi transfer akan dikenai pembersihan sampah. Tugas transfer menjadi memenuhi syarat untuk pengumpulan sampah 30 hari setelah statusnya ditetapkan ke DELETED.

Metode

create

Membuat tugas transfer yang berjalan secara berkala.

delete

Menghapus tugas transfer.

get

Mendapatkan tugas transfer.

list

Mencantumkan tugas transfer.

patch

Memperbarui tugas transfer.

run

Memulai operasi baru untuk tugas transfer yang ditentukan.