Class: Google::Cloud::Bigquery::LoadJob
- Defined in:
- lib/google/cloud/bigquery/load_job.rb
Overview
LoadJob
A Job subclass representing a load operation that may be performed on a Table. A LoadJob instance is created when you call Table#load.
Instance Method Summary collapse
-
#allow_jagged_rows? ⇒ Boolean
Checks if the load operation accepts rows that are missing trailing optional columns.
-
#backup? ⇒ Boolean
Checks if the source data is a Google Cloud Datastore backup.
-
#csv? ⇒ Boolean
Checks if the format of the source data is CSV.
-
#delimiter ⇒ Object
The delimiter used between fields in the source data.
-
#destination ⇒ Object
The table into which the operation loads data.
-
#ignore_unknown_values? ⇒ Boolean
Checks if the load operation allows extra values that are not represented in the table schema.
-
#input_file_bytes ⇒ Object
The number of bytes of source data.
-
#input_files ⇒ Object
The number of source files.
-
#iso8859_1? ⇒ Boolean
Checks if the character encoding of the data is ISO-8859-1.
-
#json? ⇒ Boolean
Checks if the format of the source data is newline-delimited JSON.
-
#max_bad_records ⇒ Object
The maximum number of bad records that the load operation can ignore.
-
#output_bytes ⇒ Object
The number of bytes that have been loaded into the table.
-
#output_rows ⇒ Object
The number of rows that have been loaded into the table.
-
#quote ⇒ Object
The value that is used to quote data sections in a CSV file.
-
#quoted_newlines? ⇒ Boolean
Checks if quoted data sections may contain newline characters in a CSV file.
-
#schema ⇒ Object
The schema for the data.
-
#skip_leading_rows ⇒ Object
The number of header rows at the top of a CSV file to skip.
-
#sources ⇒ Object
The URI or URIs representing the Google Cloud Storage files from which the operation loads data.
-
#utf8? ⇒ Boolean
Checks if the character encoding of the data is UTF-8.
Methods inherited from Job
#configuration, #created_at, #done?, #ended_at, #error, #errors, #failed?, #job_id, #pending?, #project_id, #reload!, #rerun!, #running?, #started_at, #state, #statistics, #status, #wait_until_done!
Instance Method Details
#allow_jagged_rows? ⇒ Boolean
Checks if the load operation accepts rows that are missing trailing
optional columns. The missing values are treated as nulls. If false,
records with missing trailing columns are treated as bad records, and
if there are too many bad records, an error is returned. The default
value is false. Only applicable to CSV, ignored for other formats.
141 142 143 144 145 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 141 def allow_jagged_rows? val = @gapi.configuration.load.allow_jagged_rows val = false if val.nil? val end |
#backup? ⇒ Boolean
Checks if the source data is a Google Cloud Datastore backup.
130 131 132 133 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 130 def backup? val = @gapi.configuration.load.source_format val == "DATASTORE_BACKUP" end |
#csv? ⇒ Boolean
Checks if the format of the source data is CSV. The default is true.
122 123 124 125 126 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 122 def csv? val = @gapi.configuration.load.source_format return true if val.nil? val == "CSV" end |
#delimiter ⇒ Object
The delimiter used between fields in the source data. The default is a comma (,).
54 55 56 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 54 def delimiter @gapi.configuration.load.field_delimiter || "," end |
#destination ⇒ Object
The table into which the operation loads data. This is the table on which Table#load was invoked. Returns a Table instance.
43 44 45 46 47 48 49 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 43 def destination table = @gapi.configuration.load.destination_table return nil unless table retrieve_table table.project_id, table.dataset_id, table.table_id end |
#ignore_unknown_values? ⇒ Boolean
Checks if the load operation allows extra values that are not
represented in the table schema. If true, the extra values are
ignored. If false, records with extra columns are treated as bad
records, and if there are too many bad records, an invalid error is
returned. The default is false.
153 154 155 156 157 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 153 def ignore_unknown_values? val = @gapi.configuration.load.ignore_unknown_values val = false if val.nil? val end |
#input_file_bytes ⇒ Object
The number of bytes of source data.
177 178 179 180 181 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 177 def input_file_bytes Integer @gapi.statistics.load.input_file_bytes rescue nil end |
#input_files ⇒ Object
The number of source files.
169 170 171 172 173 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 169 def input_files Integer @gapi.statistics.load.input_files rescue nil end |
#iso8859_1? ⇒ Boolean
Checks if the character encoding of the data is ISO-8859-1.
76 77 78 79 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 76 def iso8859_1? val = @gapi.configuration.load.encoding val == "ISO-8859-1" end |
#json? ⇒ Boolean
Checks if the format of the source data is newline-delimited
JSON. The default is false.
115 116 117 118 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 115 def json? val = @gapi.configuration.load.source_format val == "NEWLINE_DELIMITED_JSON" end |
#max_bad_records ⇒ Object
The maximum number of bad records that the load operation can ignore.
If the number of bad records exceeds this value, an error is returned.
The default value is 0, which requires that all records be valid.
97 98 99 100 101 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 97 def max_bad_records val = @gapi.configuration.load.max_bad_records val = 0 if val.nil? val end |
#output_bytes ⇒ Object
The number of bytes that have been loaded into the table. While an import job is in the running state, this value may change.
195 196 197 198 199 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 195 def output_bytes Integer @gapi.statistics.load.output_bytes rescue nil end |
#output_rows ⇒ Object
The number of rows that have been loaded into the table. While an import job is in the running state, this value may change.
186 187 188 189 190 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 186 def output_rows Integer @gapi.statistics.load.output_rows rescue nil end |
#quote ⇒ Object
The value that is used to quote data sections in a CSV file. The
default value is a double-quote ("). If your data does not contain
quoted sections, the value should be an empty string. If your data
contains quoted newline characters, #quoted_newlines? should return
true.
87 88 89 90 91 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 87 def quote val = @gapi.configuration.load.quote val = "\"" if val.nil? val end |
#quoted_newlines? ⇒ Boolean
Checks if quoted data sections may contain newline characters in a CSV
file. The default is false.
106 107 108 109 110 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 106 def quoted_newlines? val = @gapi.configuration.load.allow_quoted_newlines val = true if val.nil? val end |
#schema ⇒ Object
The schema for the data. Returns a hash. Can be empty if the table has already has the correct schema (see Table#schema), or if the schema can be inferred from the loaded data.
163 164 165 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 163 def schema Schema.from_gapi(@gapi.configuration.load.schema).freeze end |
#skip_leading_rows ⇒ Object
The number of header rows at the top of a CSV file to skip. The
default value is 0.
61 62 63 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 61 def skip_leading_rows @gapi.configuration.load.skip_leading_rows || 0 end |
#sources ⇒ Object
The URI or URIs representing the Google Cloud Storage files from which the operation loads data.
36 37 38 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 36 def sources Array @gapi.configuration.load.source_uris end |
#utf8? ⇒ Boolean
Checks if the character encoding of the data is UTF-8. This is the default.
68 69 70 71 72 |
# File 'lib/google/cloud/bigquery/load_job.rb', line 68 def utf8? val = @gapi.configuration.load.encoding return true if val.nil? val == "UTF-8" end |