google-cloud-bigquery 1.14.0 → 1.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +17 -54
- data/CHANGELOG.md +377 -0
- data/CONTRIBUTING.md +328 -116
- data/LOGGING.md +1 -1
- data/OVERVIEW.md +21 -20
- data/TROUBLESHOOTING.md +2 -8
- data/lib/google/cloud/bigquery/argument.rb +197 -0
- data/lib/google/cloud/bigquery/convert.rb +155 -173
- data/lib/google/cloud/bigquery/copy_job.rb +74 -26
- data/lib/google/cloud/bigquery/credentials.rb +5 -12
- data/lib/google/cloud/bigquery/data.rb +109 -18
- data/lib/google/cloud/bigquery/dataset/access.rb +474 -52
- data/lib/google/cloud/bigquery/dataset/list.rb +7 -13
- data/lib/google/cloud/bigquery/dataset/tag.rb +67 -0
- data/lib/google/cloud/bigquery/dataset.rb +1044 -287
- data/lib/google/cloud/bigquery/external/avro_source.rb +107 -0
- data/lib/google/cloud/bigquery/external/bigtable_source/column.rb +404 -0
- data/lib/google/cloud/bigquery/external/bigtable_source/column_family.rb +945 -0
- data/lib/google/cloud/bigquery/external/bigtable_source.rb +230 -0
- data/lib/google/cloud/bigquery/external/csv_source.rb +481 -0
- data/lib/google/cloud/bigquery/external/data_source.rb +771 -0
- data/lib/google/cloud/bigquery/external/json_source.rb +170 -0
- data/lib/google/cloud/bigquery/external/parquet_source.rb +148 -0
- data/lib/google/cloud/bigquery/external/sheets_source.rb +166 -0
- data/lib/google/cloud/bigquery/external.rb +50 -2256
- data/lib/google/cloud/bigquery/extract_job.rb +226 -61
- data/lib/google/cloud/bigquery/insert_response.rb +1 -3
- data/lib/google/cloud/bigquery/job/list.rb +10 -14
- data/lib/google/cloud/bigquery/job.rb +289 -14
- data/lib/google/cloud/bigquery/load_job.rb +810 -136
- data/lib/google/cloud/bigquery/model/list.rb +5 -9
- data/lib/google/cloud/bigquery/model.rb +247 -16
- data/lib/google/cloud/bigquery/policy.rb +432 -0
- data/lib/google/cloud/bigquery/project/list.rb +6 -11
- data/lib/google/cloud/bigquery/project.rb +509 -250
- data/lib/google/cloud/bigquery/query_job.rb +594 -128
- data/lib/google/cloud/bigquery/routine/list.rb +165 -0
- data/lib/google/cloud/bigquery/routine.rb +1227 -0
- data/lib/google/cloud/bigquery/schema/field.rb +413 -63
- data/lib/google/cloud/bigquery/schema.rb +221 -48
- data/lib/google/cloud/bigquery/service.rb +204 -112
- data/lib/google/cloud/bigquery/standard_sql.rb +269 -53
- data/lib/google/cloud/bigquery/table/async_inserter.rb +86 -43
- data/lib/google/cloud/bigquery/table/list.rb +6 -11
- data/lib/google/cloud/bigquery/table.rb +1470 -377
- data/lib/google/cloud/bigquery/time.rb +6 -0
- data/lib/google/cloud/bigquery/version.rb +1 -1
- data/lib/google/cloud/bigquery.rb +4 -6
- data/lib/google-cloud-bigquery.rb +14 -13
- metadata +66 -38
@@ -34,9 +34,12 @@ module Google
|
|
34
34
|
# "WHERE time_of_date = @time",
|
35
35
|
# params: { time: fourpm }
|
36
36
|
#
|
37
|
+
# # Iterate over the first page of results
|
37
38
|
# data.each do |row|
|
38
39
|
# puts row[:name]
|
39
40
|
# end
|
41
|
+
# # Retrieve the next page of results
|
42
|
+
# data = data.next if data.next?
|
40
43
|
#
|
41
44
|
# @example Create Time with fractional seconds:
|
42
45
|
# require "google/cloud/bigquery"
|
@@ -49,9 +52,12 @@ module Google
|
|
49
52
|
# "WHERE time_of_date >= @time",
|
50
53
|
# params: { time: precise_time }
|
51
54
|
#
|
55
|
+
# # Iterate over the first page of results
|
52
56
|
# data.each do |row|
|
53
57
|
# puts row[:name]
|
54
58
|
# end
|
59
|
+
# # Retrieve the next page of results
|
60
|
+
# data = data.next if data.next?
|
55
61
|
#
|
56
62
|
Time = Struct.new :value
|
57
63
|
end
|
@@ -66,8 +66,8 @@ module Google
|
|
66
66
|
# dataset = bigquery.dataset "my_dataset"
|
67
67
|
# table = dataset.table "my_table"
|
68
68
|
#
|
69
|
-
def self.new project_id: nil, credentials: nil, scope: nil, retries: nil,
|
70
|
-
|
69
|
+
def self.new project_id: nil, credentials: nil, scope: nil, retries: nil, timeout: nil, endpoint: nil,
|
70
|
+
project: nil, keyfile: nil
|
71
71
|
scope ||= configure.scope
|
72
72
|
retries ||= configure.retries
|
73
73
|
timeout ||= configure.timeout
|
@@ -84,7 +84,7 @@ module Google
|
|
84
84
|
Bigquery::Project.new(
|
85
85
|
Bigquery::Service.new(
|
86
86
|
project_id, credentials,
|
87
|
-
retries: retries, timeout: timeout, host: endpoint
|
87
|
+
retries: retries, timeout: timeout, host: endpoint, quota_project: configure.quota_project
|
88
88
|
)
|
89
89
|
)
|
90
90
|
end
|
@@ -121,9 +121,7 @@ module Google
|
|
121
121
|
# @private Resolve project.
|
122
122
|
def self.resolve_project_id given_project, credentials
|
123
123
|
project_id = given_project || default_project_id
|
124
|
-
if credentials.respond_to? :project_id
|
125
|
-
project_id ||= credentials.project_id
|
126
|
-
end
|
124
|
+
project_id ||= credentials.project_id if credentials.respond_to? :project_id
|
127
125
|
project_id.to_s # Always cast to a string
|
128
126
|
end
|
129
127
|
|
@@ -53,9 +53,15 @@ module Google
|
|
53
53
|
# bigquery = gcloud.bigquery
|
54
54
|
# dataset = bigquery.dataset "my_dataset"
|
55
55
|
# table = dataset.table "my_table"
|
56
|
-
#
|
57
|
-
#
|
56
|
+
#
|
57
|
+
# data = table.data
|
58
|
+
#
|
59
|
+
# # Iterate over the first page of results
|
60
|
+
# data.each do |row|
|
61
|
+
# puts row[:name]
|
58
62
|
# end
|
63
|
+
# # Retrieve the next page of results
|
64
|
+
# data = data.next if data.next?
|
59
65
|
#
|
60
66
|
# @example The default scope can be overridden with the `scope` option:
|
61
67
|
# require "google/cloud"
|
@@ -103,13 +109,10 @@ module Google
|
|
103
109
|
# dataset = bigquery.dataset "my_dataset"
|
104
110
|
# table = dataset.table "my_table"
|
105
111
|
#
|
106
|
-
def self.bigquery project_id = nil, credentials = nil, scope: nil,
|
107
|
-
retries: nil, timeout: nil
|
112
|
+
def self.bigquery project_id = nil, credentials = nil, scope: nil, retries: nil, timeout: nil
|
108
113
|
require "google/cloud/bigquery"
|
109
|
-
Google::Cloud::Bigquery.new project_id: project_id,
|
110
|
-
|
111
|
-
scope: scope, retries: retries,
|
112
|
-
timeout: timeout
|
114
|
+
Google::Cloud::Bigquery.new project_id: project_id, credentials: credentials,
|
115
|
+
scope: scope, retries: retries, timeout: timeout
|
113
116
|
end
|
114
117
|
end
|
115
118
|
end
|
@@ -121,18 +124,16 @@ Google::Cloud.configure.add_config! :bigquery do |config|
|
|
121
124
|
end
|
122
125
|
default_creds = Google::Cloud::Config.deferred do
|
123
126
|
Google::Cloud::Config.credentials_from_env(
|
124
|
-
"BIGQUERY_CREDENTIALS", "BIGQUERY_CREDENTIALS_JSON",
|
125
|
-
"BIGQUERY_KEYFILE", "BIGQUERY_KEYFILE_JSON"
|
127
|
+
"BIGQUERY_CREDENTIALS", "BIGQUERY_CREDENTIALS_JSON", "BIGQUERY_KEYFILE", "BIGQUERY_KEYFILE_JSON"
|
126
128
|
)
|
127
129
|
end
|
128
130
|
|
129
131
|
config.add_field! :project_id, default_project, match: String, allow_nil: true
|
130
132
|
config.add_alias! :project, :project_id
|
131
|
-
config.add_field! :credentials, default_creds,
|
132
|
-
match: [String, Hash, Google::Auth::Credentials],
|
133
|
-
allow_nil: true
|
133
|
+
config.add_field! :credentials, default_creds, match: [String, Hash, Google::Auth::Credentials], allow_nil: true
|
134
134
|
config.add_alias! :keyfile, :credentials
|
135
135
|
config.add_field! :scope, nil, match: [String, Array]
|
136
|
+
config.add_field! :quota_project, nil, match: String
|
136
137
|
config.add_field! :retries, nil, match: Integer
|
137
138
|
config.add_field! :timeout, nil, match: Integer
|
138
139
|
config.add_field! :endpoint, nil, match: String
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-bigquery
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.42.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Moore
|
@@ -9,70 +9,70 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2023-01-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
15
|
+
name: concurrent-ruby
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '1.
|
20
|
+
version: '1.0'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: '1.
|
27
|
+
version: '1.0'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
|
-
name: google-
|
29
|
+
name: google-apis-bigquery_v2
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
32
|
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: '0.
|
34
|
+
version: '0.1'
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: '0.
|
41
|
+
version: '0.1'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: googleauth
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - ">="
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: 0.
|
48
|
+
version: 0.16.2
|
49
49
|
- - "<"
|
50
50
|
- !ruby/object:Gem::Version
|
51
|
-
version:
|
51
|
+
version: 2.a
|
52
52
|
type: :runtime
|
53
53
|
prerelease: false
|
54
54
|
version_requirements: !ruby/object:Gem::Requirement
|
55
55
|
requirements:
|
56
56
|
- - ">="
|
57
57
|
- !ruby/object:Gem::Version
|
58
|
-
version: 0.
|
58
|
+
version: 0.16.2
|
59
59
|
- - "<"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: 2.a
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
63
|
+
name: google-cloud-core
|
64
64
|
requirement: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '1.
|
68
|
+
version: '1.6'
|
69
69
|
type: :runtime
|
70
70
|
prerelease: false
|
71
71
|
version_requirements: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '1.
|
75
|
+
version: '1.6'
|
76
76
|
- !ruby/object:Gem::Dependency
|
77
77
|
name: mini_mime
|
78
78
|
requirement: !ruby/object:Gem::Requirement
|
@@ -88,63 +88,77 @@ dependencies:
|
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '1.0'
|
90
90
|
- !ruby/object:Gem::Dependency
|
91
|
-
name:
|
91
|
+
name: autotest-suffix
|
92
92
|
requirement: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
96
|
+
version: '1.1'
|
97
97
|
type: :development
|
98
98
|
prerelease: false
|
99
99
|
version_requirements: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
103
|
+
version: '1.1'
|
104
104
|
- !ruby/object:Gem::Dependency
|
105
|
-
name:
|
105
|
+
name: google-cloud-data_catalog
|
106
106
|
requirement: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: '1.
|
110
|
+
version: '1.2'
|
111
111
|
type: :development
|
112
112
|
prerelease: false
|
113
113
|
version_requirements: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: '1.
|
117
|
+
version: '1.2'
|
118
118
|
- !ruby/object:Gem::Dependency
|
119
|
-
name:
|
119
|
+
name: google-style
|
120
120
|
requirement: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
124
|
+
version: 1.26.1
|
125
125
|
type: :development
|
126
126
|
prerelease: false
|
127
127
|
version_requirements: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 1.26.1
|
132
132
|
- !ruby/object:Gem::Dependency
|
133
|
-
name: minitest
|
133
|
+
name: minitest
|
134
134
|
requirement: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: '5.
|
138
|
+
version: '5.16'
|
139
139
|
type: :development
|
140
140
|
prerelease: false
|
141
141
|
version_requirements: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
143
|
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: '5.
|
145
|
+
version: '5.16'
|
146
146
|
- !ruby/object:Gem::Dependency
|
147
|
-
name: autotest
|
147
|
+
name: minitest-autotest
|
148
|
+
requirement: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '1.0'
|
153
|
+
type: :development
|
154
|
+
prerelease: false
|
155
|
+
version_requirements: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '1.0'
|
160
|
+
- !ruby/object:Gem::Dependency
|
161
|
+
name: minitest-focus
|
148
162
|
requirement: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
164
|
- - "~>"
|
@@ -158,47 +172,47 @@ dependencies:
|
|
158
172
|
- !ruby/object:Gem::Version
|
159
173
|
version: '1.1'
|
160
174
|
- !ruby/object:Gem::Dependency
|
161
|
-
name:
|
175
|
+
name: minitest-rg
|
162
176
|
requirement: !ruby/object:Gem::Requirement
|
163
177
|
requirements:
|
164
178
|
- - "~>"
|
165
179
|
- !ruby/object:Gem::Version
|
166
|
-
version: '
|
180
|
+
version: '5.2'
|
167
181
|
type: :development
|
168
182
|
prerelease: false
|
169
183
|
version_requirements: !ruby/object:Gem::Requirement
|
170
184
|
requirements:
|
171
185
|
- - "~>"
|
172
186
|
- !ruby/object:Gem::Version
|
173
|
-
version: '
|
187
|
+
version: '5.2'
|
174
188
|
- !ruby/object:Gem::Dependency
|
175
|
-
name:
|
189
|
+
name: redcarpet
|
176
190
|
requirement: !ruby/object:Gem::Requirement
|
177
191
|
requirements:
|
178
192
|
- - "~>"
|
179
193
|
- !ruby/object:Gem::Version
|
180
|
-
version:
|
194
|
+
version: '3.0'
|
181
195
|
type: :development
|
182
196
|
prerelease: false
|
183
197
|
version_requirements: !ruby/object:Gem::Requirement
|
184
198
|
requirements:
|
185
199
|
- - "~>"
|
186
200
|
- !ruby/object:Gem::Version
|
187
|
-
version:
|
201
|
+
version: '3.0'
|
188
202
|
- !ruby/object:Gem::Dependency
|
189
203
|
name: simplecov
|
190
204
|
requirement: !ruby/object:Gem::Requirement
|
191
205
|
requirements:
|
192
206
|
- - "~>"
|
193
207
|
- !ruby/object:Gem::Version
|
194
|
-
version: '0.
|
208
|
+
version: '0.18'
|
195
209
|
type: :development
|
196
210
|
prerelease: false
|
197
211
|
version_requirements: !ruby/object:Gem::Requirement
|
198
212
|
requirements:
|
199
213
|
- - "~>"
|
200
214
|
- !ruby/object:Gem::Version
|
201
|
-
version: '0.
|
215
|
+
version: '0.18'
|
202
216
|
- !ruby/object:Gem::Dependency
|
203
217
|
name: yard
|
204
218
|
requirement: !ruby/object:Gem::Requirement
|
@@ -246,6 +260,7 @@ files:
|
|
246
260
|
- TROUBLESHOOTING.md
|
247
261
|
- lib/google-cloud-bigquery.rb
|
248
262
|
- lib/google/cloud/bigquery.rb
|
263
|
+
- lib/google/cloud/bigquery/argument.rb
|
249
264
|
- lib/google/cloud/bigquery/convert.rb
|
250
265
|
- lib/google/cloud/bigquery/copy_job.rb
|
251
266
|
- lib/google/cloud/bigquery/credentials.rb
|
@@ -253,8 +268,18 @@ files:
|
|
253
268
|
- lib/google/cloud/bigquery/dataset.rb
|
254
269
|
- lib/google/cloud/bigquery/dataset/access.rb
|
255
270
|
- lib/google/cloud/bigquery/dataset/list.rb
|
271
|
+
- lib/google/cloud/bigquery/dataset/tag.rb
|
256
272
|
- lib/google/cloud/bigquery/encryption_configuration.rb
|
257
273
|
- lib/google/cloud/bigquery/external.rb
|
274
|
+
- lib/google/cloud/bigquery/external/avro_source.rb
|
275
|
+
- lib/google/cloud/bigquery/external/bigtable_source.rb
|
276
|
+
- lib/google/cloud/bigquery/external/bigtable_source/column.rb
|
277
|
+
- lib/google/cloud/bigquery/external/bigtable_source/column_family.rb
|
278
|
+
- lib/google/cloud/bigquery/external/csv_source.rb
|
279
|
+
- lib/google/cloud/bigquery/external/data_source.rb
|
280
|
+
- lib/google/cloud/bigquery/external/json_source.rb
|
281
|
+
- lib/google/cloud/bigquery/external/parquet_source.rb
|
282
|
+
- lib/google/cloud/bigquery/external/sheets_source.rb
|
258
283
|
- lib/google/cloud/bigquery/extract_job.rb
|
259
284
|
- lib/google/cloud/bigquery/insert_response.rb
|
260
285
|
- lib/google/cloud/bigquery/job.rb
|
@@ -262,9 +287,12 @@ files:
|
|
262
287
|
- lib/google/cloud/bigquery/load_job.rb
|
263
288
|
- lib/google/cloud/bigquery/model.rb
|
264
289
|
- lib/google/cloud/bigquery/model/list.rb
|
290
|
+
- lib/google/cloud/bigquery/policy.rb
|
265
291
|
- lib/google/cloud/bigquery/project.rb
|
266
292
|
- lib/google/cloud/bigquery/project/list.rb
|
267
293
|
- lib/google/cloud/bigquery/query_job.rb
|
294
|
+
- lib/google/cloud/bigquery/routine.rb
|
295
|
+
- lib/google/cloud/bigquery/routine/list.rb
|
268
296
|
- lib/google/cloud/bigquery/schema.rb
|
269
297
|
- lib/google/cloud/bigquery/schema/field.rb
|
270
298
|
- lib/google/cloud/bigquery/service.rb
|
@@ -286,14 +314,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
286
314
|
requirements:
|
287
315
|
- - ">="
|
288
316
|
- !ruby/object:Gem::Version
|
289
|
-
version: 2.
|
317
|
+
version: '2.6'
|
290
318
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
291
319
|
requirements:
|
292
320
|
- - ">="
|
293
321
|
- !ruby/object:Gem::Version
|
294
322
|
version: '0'
|
295
323
|
requirements: []
|
296
|
-
rubygems_version: 3.
|
324
|
+
rubygems_version: 3.4.2
|
297
325
|
signing_key:
|
298
326
|
specification_version: 4
|
299
327
|
summary: API Client library for Google BigQuery
|