Transfer Cloud Storage

Dengan konektor BigQuery Data Transfer Service untuk Cloud Storage, Anda dapat menjadwalkan pemuatan data berulang dari Cloud Storage ke BigQuery.

Sebelum memulai

Sebelum Anda membuat transfer data Cloud Storage, lakukan langkah berikut:

Batasan

Transfer data berulang dari Cloud Storage ke BigQuery memiliki batasan berikut:

  • Semua file yang cocok dengan pola yang ditentukan oleh parameter pengganti atau parameter runtime untuk transfer data Anda harus memiliki skema yang sama dengan yang ditetapkan untuk tabel tujuan. Jika tidak, transfer akan gagal. Perubahan skema tabel antar-operasi juga menyebabkan transfer gagal.
  • Karena objek Cloud Storage dapat diberi versi, penting untuk diketahui bahwa objek Cloud Storage yang diarsipkan tidak mendukung transfer data BigQuery. Objek harus aktif agar dapat ditransfer.
  • Tidak seperti pemuatan data individual dari Cloud Storage ke BigQuery, untuk transfer data yang sedang berlangsung, Anda harus membuat tabel tujuan sebelum menyiapkan transfer. Untuk file CSV dan JSON, Anda juga harus menentukan skema tabel terlebih dahulu. BigQuery tidak dapat membuat tabel sebagai bagian dari proses transfer data berulang.
  • Transfer data dari Cloud Storage menetapkan parameter Write preferences ke APPEND secara default. Dalam mode ini, file yang tidak dimodifikasi hanya dapat dimuat ke BigQuery satu kali. Jika properti last modification time file diperbarui, file tersebut akan dimuat ulang.
  • BigQuery Data Transfer Service tidak menjamin semua file akan ditransfer atau ditransfer hanya satu kali jika file Cloud Storage diubah selama transfer data. Anda harus tunduk kepada batasan berikut saat memuat data ke BigQuery dari bucket Cloud Storage:

  • Jika lokasi set data Anda ditetapkan ke nilai selain multi-region US, bucket Cloud Storage harus berada di region yang sama atau berada dalam multi-region yang sama dengan set data tersebut.

  • BigQuery tidak menjamin konsistensi data untuk sumber data eksternal. Perubahan pada data yang mendasari saat kueri berjalan dapat menyebabkan perilaku yang tidak terduga.

  • BigQuery tidak mendukung pembuatan versi objek Cloud Storage. Jika Anda menyertakan nomor pembuatan dalam Cloud Storage URI, tugas pemuatan akan gagal.

  • Bergantung pada format data sumber Cloud Storage Anda, mungkin akan ada batasan tambahan. Untuk informasi selengkapnya, lihat:

  • Bucket Cloud Storage Anda harus berada di lokasi yang kompatibel dengan region atau multi-region dari set data tujuan di BigQuery. Lokasi ini dinamakan kolokasi. Baca Lokasi data transfer Cloud Storage untuk mengetahui detailnya.

Interval minimum

  • File sumber akan segera diambil untuk transfer data, tanpa usia file minimum.
  • Waktu interval minimum antar-transfer data berulang adalah 15 menit. Interval default untuk transfer data berulang adalah setiap 24 jam.

Izin yang diperlukan

Ketika memuat data ke BigQuery, Anda memerlukan izin untuk memuat data ke dalam tabel dan partisi BigQuery baru atau yang sudah ada. Jika memuat data dari Cloud Storage, Anda juga memerlukan akses ke bucket yang berisi data Anda. Pastikan Anda memiliki izin yang diperlukan berikut:

  • BigQuery: Pastikan orang atau akun layanan yang membuat transfer data memiliki izin berikut di BigQuery:

    • Izin bigquery.transfers.update untuk membuat transfer data
    • Izin bigquery.datasets.get dan bigquery.datasets.update pada set data target

    Peran IAM bigquery.admin yang telah ditetapkan mencakup izin bigquery.transfers.update, bigquery.datasets.update, dan bigquery.datasets.get. Untuk mengetahui informasi lebih lanjut tentang peran IAM dalam BigQuery Data Transfer Service, lihat Kontrol akses.

  • Cloud Storage: Izin storage.objects.get diperlukan di bucket individual atau yang lebih tinggi. Jika menggunakan karakter pengganti URI, Anda juga harus memiliki izin storage.objects.list. Jika ingin menghapus file sumber setelah setiap transfer berhasil, Anda juga memerlukan izin storage.objects.delete. Peran IAM storage.objectAdmin yang telah ditetapkan mencakup semua izin ini.

Menyiapkan transfer Cloud Storage

Untuk membuat transfer data Cloud Storage di BigQuery Data Transfer Service:

Konsol

  1. Buka halaman Data transfers di konsol Google Cloud.

    Buka Data transfers

  2. Klik Create transfer.

  3. Di bagian Source type, untuk Source, pilih Google Cloud Storage.

    Sumber transfer

  4. Di bagian Transfer config name, untuk Display name, masukkan nama untuk transfer data, seperti My Transfer. Nama transfer dapat berupa nilai apa pun yang memungkinkan Anda mengidentifikasi transfer jika perlu mengubahnya nanti.

    Nama transfer

  5. Di bagian Schedule options:

    • Pilih Repeat frequency. Jika memilih Jam, Hari, Minggu, atau Bulan, Anda juga harus menentukan frekuensinya. Anda juga dapat memilih Custom untuk menentukan frekuensi pengulangan kustom. Jika Anda memilih On-demand, transfer data ini akan berjalan saat Anda memicu transfer secara manual.

    • Jika berlaku, pilih Start now atau Start at set time dan masukkan tanggal mulai dan waktu proses.

  6. Di bagian Destination settings, untuk Destination dataset, pilih set data yang Anda buat untuk menyimpan data.

    Mentransfer set data

  7. Di bagian Data source details:

    1. Untuk Destination table, masukkan nama tabel tujuan. Tabel tujuan harus mengikuti aturan penamaan tabel. Nama tabel tujuan juga mendukung parameter.
    2. Untuk Cloud Storage URI, masukkan Cloud Storage URI. Wildcard dan parameter didukung.
    3. Untuk Write preference, pilih:
      • APPEND untuk menambahkan data baru ke tabel tujuan yang sudah ada secara bertahap. APPEND adalah nilai default untuk Write preference.
      • MIRROR untuk menimpa data di tabel tujuan selama setiap transfer data berjalan.

    Untuk mengetahui informasi selengkapnya tentang cara BigQuery Data Transfer Service menyerap data menggunakan APPEND atau MIRROR, lihat Penyerapan data untuk transfer Cloud Storage. Untuk mengetahui informasi selengkapnya tentang kolom writeDisposition, lihat JobConfigurationLoad.

    1. Untuk Delete source files after transfer, centang kotak jika Anda ingin menghapus file sumber setelah setiap transfer data berhasil. Menghapus tugas adalah upaya terbaik. Tugas penghapusan tidak akan dicoba lagi jika upaya pertama untuk menghapus file sumber gagal.
    2. Di bagian Transfer Options:

      1. Di bagian All Formats:
        1. Untuk Number of errors allowed, masukkan jumlah maksimum data buruk yang dapat diabaikan BigQuery saat menjalankan tugas. Jika jumlah kumpulan data buruk melebihi nilai ini, error 'tidak valid' akan ditampilkan di hasil tugas, dan tugas akan gagal. Nilai defaultnya adalah 0.
        2. (Opsional) Untuk Decimal target types, masukkan daftar yang dipisahkan koma yang berisi kemungkinan jenis data SQL yang dapat dikonversi dari nilai desimal sumber. Jenis data SQL yang dipilih untuk konversi bergantung pada kondisi berikut:
          • Jenis data yang dipilih untuk konversi akan menjadi jenis data pertama dalam daftar berikut yang mendukung presisi dan skala data sumber, dalam urutan ini: NUMERIC,BIGNUMERIC, dan STRING.
          • Jika tidak satu pun jenis data yang tercantum akan mendukung presisi dan skala, jenis data yang mendukung rentang terluas dalam daftar yang ditentukan yang akan dipilih. Error akan ditampilkan jika nilai melebihi rentang yang didukung saat membaca data sumber.
          • Jenis data STRING mendukung semua nilai presisi dan skala.
          • Jika kolom ini dibiarkan kosong, jenis data akan ditetapkan secara default ke "NUMERIC,STRING" untuk ORC, dan "NUMERIC" untuk format file lainnya.
          • Kolom ini tidak boleh berisi jenis data duplikat.
          • Urutan jenis data yang Anda cantumkan dalam kolom ini akan diabaikan.
      2. Di bagian JSON, CSV:
        • Untuk Ignore unknown values, centang kotak jika Anda ingin transfer data menghapus data yang tidak sesuai dengan skema tabel tujuan.
      3. Di bagian AVRO:
        • Untuk Use avro logical types, centang kotak jika Anda ingin transfer data mengonversi jenis logika Avro ke jenis data BigQuery yang sesuai. Perilaku default-nya adalah mengabaikan atribut logicalType untuk sebagian besar jenis dan menggunakan jenis Avro yang mendasarinya.
      4. Di bagian CSV:

        1. Untuk Field delimiter, masukkan karakter yang memisahkan kolom. Nilai defaultnya adalah koma.
        2. Untuk Tanda kutip, masukkan karakter yang digunakan untuk mengutip bagian data di file CSV. Nilai defaultnya adalah tanda kutip ganda (").
        3. Untuk Header rows to skip, masukkan jumlah baris header dalam file sumber jika Anda tidak ingin mengimpornya. Nilai defaultnya adalah 0.
        4. Untuk Allow quoted newlines, centang kotak jika Anda ingin mengizinkan baris baru dalam kolom yang dikutip.
        5. Untuk Allow jagged rows, centang kotak jika Anda ingin mengizinkan transfer data baris dengan kolom NULLABLE yang tidak ada.
  8. Di menu Service Account, pilih service account dari akun layanan yang terkait dengan project Google Cloud Anda. Anda dapat mengaitkan akun layanan dengan transfer data, bukan menggunakan kredensial pengguna. Untuk mengetahui informasi selengkapnya tentang cara menggunakan akun layanan dengan transfer data, lihat Menggunakan akun layanan.

    • Jika Anda login dengan identitas gabungan, akun layanan diperlukan untuk membuat transfer data. Jika Anda login dengan Akun Google, akun layanan untuk transfer data bersifat opsional.
    • Akun layanan harus memiliki izin yang diperlukan untuk BigQuery dan Cloud Storage.
  9. Opsional: Di bagian Notification options:

    1. Klik tombol untuk mengaktifkan notifikasi email. Saat Anda mengaktifkan opsi ini, pemilik konfigurasi transfer data akan menerima notifikasi email saat proses transfer gagal.
    2. Untuk Select a Pub/Sub topic, pilih nama topik atau klik Create a topic. Opsi ini mengonfigurasi notifikasi operasi Pub/Sub untuk transfer Anda.
  10. Opsional: Di bagian Advanced options:

    • Jika Anda menggunakan CMEK, pilih Kunci yang dikelola pelanggan. Daftar CMEK yang tersedia akan muncul dan dapat Anda pilih.

    Untuk mengetahui informasi tentang cara kerja CMEK dengan BigQuery Data Transfer Service, lihat Menentukan kunci enkripsi dengan transfer.

  11. Klik Simpan.

bq

Masukkan perintah bq mk dan berikan flag pembuatan transfer — --transfer_config. Flag berikut juga diperlukan:

  • --data_source
  • --display_name
  • --target_dataset
  • --params

Flag opsional:

  • --destination_kms_key: Menentukan ID resource kunci untuk kunci Cloud KMS jika Anda menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) untuk transfer data ini. Untuk mengetahui informasi tentang cara kerja CMEK dengan BigQuery Data Transfer Service, lihat Menentukan kunci enkripsi dengan transfer.
  • --service_account_name: Menentukan akun layanan yang akan digunakan untuk autentikasi transfer Cloud Storage, bukan akun pengguna Anda.
bq mk \
--transfer_config \
--project_id=PROJECT_ID \
--data_source=DATA_SOURCE \
--display_name=NAME \
--target_dataset=DATASET \
--destination_kms_key="DESTINATION_KEY" \
--params='PARAMETERS' \
--service_account_name=SERVICE_ACCOUNT_NAME

Dengan keterangan:

  • PROJECT_ID adalah project ID Anda. Jika --project_id tidak diberikan untuk menentukan project tertentu, project default akan digunakan.
  • DATA_SOURCE adalah sumber data, misalnya, google_cloud_storage.
  • NAME adalah nama tampilan untuk konfigurasi transfer data. Nama transfer dapat berupa nilai apa pun yang memungkinkan Anda mengidentifikasi transfer jika perlu mengubahnya nanti.
  • DATASET adalah set data target untuk konfigurasi transfer.
  • DESTINATION_KEY: ID resource kunci Cloud KMS— misalnya, projects/project_name/locations/us/keyRings/key_ring_name/cryptoKeys/key_name.
  • PARAMETERS berisi parameter untuk konfigurasi transfer yang dibuat dalam format JSON. Contoh: --params='{"param":"param_value"}'.
    • destination_table_name_template: nama tabel BigQuery tujuan.
    • data_path_template: URI Cloud Storage yang berisi file Anda yang akan ditransfer, dan dapat menyertakan satu karakter pengganti.
    • write_disposition: menentukan apakah file yang cocok ditambahkan ke tabel tujuan atau dicerminkan sepenuhnya. Nilai yang didukung adalah APPEND atau MIRROR. Untuk mengetahui informasi tentang cara BigQuery Data Transfer Service menambahkan atau mencerminkan data dalam transfer Cloud Storage, lihat Penyerapan data untuk transfer Cloud Storage.
    • file_format: format file yang ingin Anda transfer. Formatnya dapat berupa CSV, JSON, AVRO, PARQUET, atau ORC. Nilai defaultnya adalah CSV.
    • max_bad_records: untuk nilai file_format apa pun, jumlah maksimum data buruk yang dapat diabaikan. Nilai defaultnya adalah 0.
    • decimal_target_types: untuk nilai file_format apa pun, daftar yang dipisahkan koma dari kemungkinan jenis data SQL yang dapat dikonversi menjadi nilai desimal sumber. Jika kolom ini tidak disediakan, jenis data akan ditetapkan secara default ke "NUMERIC,STRING" untuk ORC, dan "NUMERIC" untuk format file lainnya.
    • ignore_unknown_values: untuk nilai file_format apa pun, tetapkan ke TRUE untuk menerima baris yang berisi nilai yang tidak cocok dengan skema. Untuk mengetahui informasi selengkapnya, lihat detail kolom ignoreUnknownvalues di tabel referensi JobConfigurationLoad.
    • use_avro_logical_types: untuk nilai AVRO file_format, tetapkan ke TRUE untuk menafsirkan jenis logis ke dalam jenis yang sesuai (misalnya, TIMESTAMP), bukan hanya menggunakan jenis mentah (misalnya, INTEGER).
    • parquet_enum_as_string: untuk nilai PARQUET file_format, tetapkan ke TRUE untuk menyimpulkan jenis logis PARQUET ENUM sebagai STRING, bukan BYTES default.
    • parquet_enable_list_inference: untuk nilai PARQUET file_format, tetapkan ke TRUE untuk menggunakan inferensi skema khusus untuk jenis logika PARQUET LIST.
    • reference_file_schema_uri: jalur URI ke file referensi dengan skema pembaca.
    • field_delimiter: untuk nilai CSV file_format, karakter yang memisahkan kolom. Nilai defaultnya adalah koma.
    • quote: untuk nilai CSV file_format, karakter yang digunakan untuk mengutip bagian data dalam file CSV. Nilai defaultnya adalah tanda kutip ganda (").
    • skip_leading_rows: untuk nilai CSV file_format, tunjukkan jumlah baris header utama yang tidak ingin Anda impor. Nilai defaultnya adalah .
    • allow_quoted_newlines: untuk nilai CSV file_format, tetapkan ke TRUE untuk mengizinkan baris baru dalam kolom yang diapit tanda petik.
    • allow_jagged_rows : untuk nilai CSV file_format, tetapkan ke TRUE untuk menerima baris yang tidak memiliki kolom opsional di belakangnya. Nilai yang tidak ada akan diisi dengan NULL.
    • preserve_ascii_control_characters: untuk nilai CSV file_format, tetapkan ke TRUE untuk mempertahankan karakter kontrol ASCII yang disematkan.
    • encoding: menentukan jenis encoding CSV. Nilai yang didukung adalah UTF8, ISO_8859_1, UTF16BE, UTF16LE, UTF32BE, dan UTF32LE.
    • delete_source_files: ditetapkan ke TRUE untuk menghapus file sumber setelah setiap transfer berhasil. Tugas penghapusan tidak akan dijalankan ulang jika upaya pertama untuk menghapus file sumber gagal. Nilai defaultnya adalah FALSE.
  • SERVICE_ACCOUNT_NAME adalah nama akun layanan yang digunakan untuk mengautentikasi transfer Anda. Akun layanan harus dimiliki oleh project_id yang sama yang digunakan untuk membuat transfer dan harus memiliki semua izin yang diperlukan.

Misalnya, perintah berikut akan membuat transfer data Cloud Storage bernama My Transfer menggunakan nilai data_path_template sebesar gs://mybucket/myfile/*.csv, set data target mydataset, dan file_format CSV. Contoh ini mencakup nilai non-default untuk parameter opsional yang terkait dengan file_format CSV.

Transfer data dibuat di project default:

bq mk --transfer_config \
--target_dataset=mydataset \
--project_id=myProject \
--display_name='My Transfer' \
--destination_kms_key=projects/myproject/locations/mylocation/keyRings/myRing/cryptoKeys/myKey \
--params='{"data_path_template":"gs://mybucket/myfile/*.csv",
"destination_table_name_template":"MyTable",
"file_format":"CSV",
"max_bad_records":"1",
"ignore_unknown_values":"true",
"field_delimiter":"|",
"quote":";",
"skip_leading_rows":"1",
"allow_quoted_newlines":"true",
"allow_jagged_rows":"false",
"delete_source_files":"true"}' \
--data_source=google_cloud_storage \
--service_account_name=abcdef-test-sa@abcdef-test.iam.gserviceaccount.com projects/862514376110/locations/us/transferConfigs/ 5dd12f26-0000-262f-bc38-089e0820fe38

Setelah menjalankan perintah, Anda akan menerima pesan seperti berikut:

[URL omitted] Please copy and paste the above URL into your web browser and follow the instructions to retrieve an authentication code.

Ikuti petunjuknya, lalu tempel kode autentikasi di command line.

API

Gunakan metode projects.locations.transferConfigs.create dan berikan instance resource TransferConfig.

Java

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Java API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

import com.google.api.gax.rpc.ApiException;
import com.google.cloud.bigquery.datatransfer.v1.CreateTransferConfigRequest;
import com.google.cloud.bigquery.datatransfer.v1.DataTransferServiceClient;
import com.google.cloud.bigquery.datatransfer.v1.ProjectName;
import com.google.cloud.bigquery.datatransfer.v1.TransferConfig;
import com.google.protobuf.Struct;
import com.google.protobuf.Value;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

// Sample to create google cloud storage transfer config
public class CreateCloudStorageTransfer {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    final String projectId = "MY_PROJECT_ID";
    String datasetId = "MY_DATASET_ID";
    String tableId = "MY_TABLE_ID";
    // GCS Uri
    String sourceUri = "gs://cloud-samples-data/bigquery/us-states/us-states.csv";
    String fileFormat = "CSV";
    String fieldDelimiter = ",";
    String skipLeadingRows = "1";
    Map<String, Value> params = new HashMap<>();
    params.put(
        "destination_table_name_template", Value.newBuilder().setStringValue(tableId).build());
    params.put("data_path_template", Value.newBuilder().setStringValue(sourceUri).build());
    params.put("write_disposition", Value.newBuilder().setStringValue("APPEND").build());
    params.put("file_format", Value.newBuilder().setStringValue(fileFormat).build());
    params.put("field_delimiter", Value.newBuilder().setStringValue(fieldDelimiter).build());
    params.put("skip_leading_rows", Value.newBuilder().setStringValue(skipLeadingRows).build());
    TransferConfig transferConfig =
        TransferConfig.newBuilder()
            .setDestinationDatasetId(datasetId)
            .setDisplayName("Your Google Cloud Storage Config Name")
            .setDataSourceId("google_cloud_storage")
            .setParams(Struct.newBuilder().putAllFields(params).build())
            .setSchedule("every 24 hours")
            .build();
    createCloudStorageTransfer(projectId, transferConfig);
  }

  public static void createCloudStorageTransfer(String projectId, TransferConfig transferConfig)
      throws IOException {
    try (DataTransferServiceClient client = DataTransferServiceClient.create()) {
      ProjectName parent = ProjectName.of(projectId);
      CreateTransferConfigRequest request =
          CreateTransferConfigRequest.newBuilder()
              .setParent(parent.toString())
              .setTransferConfig(transferConfig)
              .build();
      TransferConfig config = client.createTransferConfig(request);
      System.out.println("Cloud storage transfer created successfully :" + config.getName());
    } catch (ApiException ex) {
      System.out.print("Cloud storage transfer was not created." + ex.toString());
    }
  }
}

Menentukan kunci enkripsi dengan transfer

Anda dapat menentukan kunci enkripsi yang dikelola pelanggan (CMEK) guna mengenkripsi data untuk proses transfer. Anda dapat menggunakan CMEK untuk mendukung transfer dari Cloud Storage.

Saat Anda menentukan CMEK dengan transfer, BigQuery Data Transfer Service akan menerapkan CMEK ke cache perantara data yang diserap dalam disk, sehingga seluruh alur kerja transfer data mematuhi CMEK.

Anda tidak dapat memperbarui transfer yang sudah ada untuk menambahkan CMEK jika transfer tersebut awalnya tidak dibuat dengan CMEK. Misalnya, Anda tidak dapat mengubah tabel tujuan yang awalnya dienkripsi secara default menjadi kini dienkripsi dengan CMEK. Sebaliknya, Anda juga tidak dapat mengubah tabel tujuan yang dienkripsi CMEK agar memiliki jenis enkripsi yang berbeda.

Anda dapat memperbarui CMEK untuk transfer jika konfigurasi transfer awalnya dibuat dengan enkripsi CMEK. Saat Anda memperbarui CMEK untuk konfigurasi transfer, BigQuery Data Transfer Service akan menyebarkan CMEK ke tabel tujuan pada proses transfer berikutnya. Di sini, BigQuery Data Transfer Service akan mengganti CMEK yang sudah usang dengan CMEK baru selama proses transfer. Untuk informasi selengkapnya, lihat Memperbarui transfer.

Anda juga dapat menggunakan kunci default project. Saat Anda menentukan kunci default project dengan transfer, BigQuery Data Transfer Service akan menggunakan kunci default project sebagai kunci default untuk setiap konfigurasi transfer baru.

Memicu transfer secara manual

Selain transfer data terjadwal otomatis dari Cloud Storage, Anda dapat memicu transfer secara manual untuk memuat file data tambahan.

Jika konfigurasi transfer diparameterisasi runtime, Anda harus menentukan rentang tanggal saat transfer tambahan akan dimulai.

Untuk memicu transfer data:

Konsol

  1. Buka halaman BigQuery di konsol Google Cloud.

    Buka halaman BigQuery

  2. Klik Data transfers.

  3. Pilih transfer data Anda dari daftar.

  4. Klik Run transfer now atau Schedule backfill (untuk konfigurasi transfer berparameter runtime).

    • Jika Anda mengeklik Run transfer now, pilih Run one time transfer atau Run for specific date jika berlaku. Jika Anda memilih Run for specific date, pilih tanggal dan waktu tertentu:

      Jalankan transfer sekarang

    • Jika Anda mengeklik Schedule backfill, pilih Run one time transfer atau Run for a date range jika berlaku. Jika Anda memilih Run for a date range, pilih tanggal dan waktu mulai dan akhir:

      Jadwalkan pengisian ulang

  5. Klik Oke.

bq

Masukkan perintah bq mk dan berikan flag --transfer_run. Anda dapat menggunakan flag --run_time atau flag --start_time dan --end_time.

bq mk \
--transfer_run \
--start_time='START_TIME' \
--end_time='END_TIME' \
RESOURCE_NAME
bq mk \
--transfer_run \
--run_time='RUN_TIME' \
RESOURCE_NAME

Dengan keterangan:

  • START_TIME dan END_TIME adalah stempel waktu yang diakhiri dengan Z atau berisi offset zona waktu yang valid. Contoh:

    • 2017-08-19T12:11:35.00Z
    • 2017-05-25T00:00:00+00:00
  • RUN_TIME adalah stempel waktu yang menentukan waktu untuk menjadwalkan proses transfer data. Jika ingin menjalankan transfer satu kali untuk waktu saat ini, Anda dapat menggunakan flag --run_time.

  • RESOURCE_NAME adalah nama resource transfer (juga disebut sebagai konfigurasi transfer), misalnya, projects/myproject/locations/us/transferConfigs/1234a123-1234-1a23-1be9-12ab3c456de7. Jika Anda tidak mengetahui nama resource transfer, jalankan perintah bq ls --transfer_config --transfer_location=LOCATION untuk menemukan nama resource.

API

Gunakan metode projects.locations.transferConfigs.startManualRuns dan berikan resource konfigurasi transfer menggunakan parameter parent.

Langkah berikutnya