Class: Google::Cloud::Bigquery::CopyJob
- Defined in:
- lib/google/cloud/bigquery/copy_job.rb
Overview
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.
Direct Known Subclasses
Defined Under Namespace
Classes: Updater
Attributes collapse
-
#encryption ⇒ Google::Cloud::BigQuery::EncryptionConfiguration
The encryption configuration of the destination table.
Instance Method Summary collapse
-
#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. -
#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. -
#destination ⇒ Table
The table to which data is copied.
-
#source ⇒ Table
The table from which data is copied.
-
#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. -
#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. -
#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.
Methods inherited from Job
#cancel, #configuration, #created_at, #done?, #ended_at, #error, #errors, #failed?, #job_id, #labels, #location, #pending?, #project_id, #reload!, #rerun!, #running?, #started_at, #state, #statistics, #status, #user_email, #wait_until_done!
Instance Method Details
#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.
80 81 82 83 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 80 def create_if_needed? disp = @gapi.configuration.copy.create_disposition disp == "CREATE_IF_NEEDED" end |
#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.
92 93 94 95 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 92 def create_never? disp = @gapi.configuration.copy.create_disposition disp == "CREATE_NEVER" end |
#destination ⇒ Table
The table to which data is copied.
64 65 66 67 68 69 70 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 64 def destination table = @gapi.configuration.copy.destination_table return nil unless table retrieve_table table.project_id, table.dataset_id, table.table_id end |
#encryption ⇒ Google::Cloud::BigQuery::EncryptionConfiguration
The encryption configuration of the destination table.
141 142 143 144 145 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 141 def encryption EncryptionConfiguration.from_gapi( @gapi.configuration.copy.destination_encryption_configuration ) end |
#source ⇒ Table
The table from which data is copied. This is the table on which Table#copy_job was called.
51 52 53 54 55 56 57 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 51 def source table = @gapi.configuration.copy.source_table return nil unless table retrieve_table table.project_id, table.dataset_id, table.table_id end |
#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.
116 117 118 119 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 116 def write_append? disp = @gapi.configuration.copy.write_disposition disp == "WRITE_APPEND" end |
#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.
129 130 131 132 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 129 def write_empty? disp = @gapi.configuration.copy.write_disposition disp == "WRITE_EMPTY" end |
#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.
104 105 106 107 |
# File 'lib/google/cloud/bigquery/copy_job.rb', line 104 def write_truncate? disp = @gapi.configuration.copy.write_disposition disp == "WRITE_TRUNCATE" end |