google-cloud-bigquery - Class Google::Cloud::Bigquery::CopyJob (v1.38.1)

Reference documentation and code samples for the google-cloud-bigquery class Google::Cloud::Bigquery::CopyJob.

CopyJob

A Job subclass representing a copy operation that may be performed on a Table. A CopyJob instance is created when you call Table#copy_job.

Example

require "google/cloud/bigquery"

bigquery = Google::Cloud::Bigquery.new
dataset = bigquery.dataset "my_dataset"
table = dataset.table "my_table"
destination_table = dataset.table "my_destination_table"

copy_job = table.copy_job destination_table

copy_job.wait_until_done!
copy_job.done? #=> true

Methods

#create_if_needed?

def create_if_needed?() -> Boolean

Checks if the create disposition for the job is CREATE_IF_NEEDED, which provides the following behavior: If the table does not exist, the copy operation creates the table. This is the default create disposition for copy jobs.

Returns
  • (Boolean) — true when CREATE_IF_NEEDED, false otherwise.

#create_never?

def create_never?() -> Boolean

Checks if the create disposition for the job is CREATE_NEVER, which provides the following behavior: The table must already exist; if it does not, an error is returned in the job result.

Returns
  • (Boolean) — true when CREATE_NEVER, false otherwise.

#destination

def destination() -> Table

The table to which data is copied.

Returns
  • (Table) — A table instance.

#encryption

def encryption() -> Google::Cloud::BigQuery::EncryptionConfiguration

The encryption configuration of the destination table.

Returns
  • (Google::Cloud::BigQuery::EncryptionConfiguration) — Custom encryption configuration (e.g., Cloud KMS keys).

#source

def source() -> Table

The table from which data is copied. This is the table on which Table#copy_job was called.

Returns
  • (Table) — A table instance.

#write_append?

def write_append?() -> Boolean

Checks if the write disposition for the job is WRITE_APPEND, which provides the following behavior: If the table already exists, the copy operation appends the data to the table.

Returns
  • (Boolean) — true when WRITE_APPEND, false otherwise.

#write_empty?

def write_empty?() -> Boolean

Checks if the write disposition for the job is WRITE_EMPTY, which provides the following behavior: If the table already exists and contains data, the job will have an error. This is the default write disposition for copy jobs.

Returns
  • (Boolean) — true when WRITE_EMPTY, false otherwise.

#write_truncate?

def write_truncate?() -> Boolean

Checks if the write disposition for the job is WRITE_TRUNCATE, which provides the following behavior: If the table already exists, the copy operation overwrites the table data.

Returns
  • (Boolean) — true when WRITE_TRUNCATE, false otherwise.