google-cloud-bigquery-storage-v1 0.7.0 → 0.9.1
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/.yardopts +1 -1
- data/AUTHENTICATION.md +7 -25
- data/lib/google/cloud/bigquery/storage/v1/big_query_read/client.rb +63 -9
- data/lib/google/cloud/bigquery/storage/v1/big_query_write/client.rb +936 -0
- data/lib/google/cloud/bigquery/storage/v1/big_query_write/credentials.rb +55 -0
- data/lib/google/cloud/bigquery/storage/v1/big_query_write/paths.rb +75 -0
- data/lib/google/cloud/bigquery/storage/v1/big_query_write.rb +56 -0
- data/lib/google/cloud/bigquery/storage/v1/protobuf_pb.rb +29 -0
- data/lib/google/cloud/bigquery/storage/v1/storage_pb.rb +86 -2
- data/lib/google/cloud/bigquery/storage/v1/storage_services_pb.rb +80 -1
- data/lib/google/cloud/bigquery/storage/v1/stream_pb.rb +24 -2
- data/lib/google/cloud/bigquery/storage/v1/table_pb.rb +62 -0
- data/lib/google/cloud/bigquery/storage/v1/version.rb +1 -1
- data/lib/google/cloud/bigquery/storage/v1.rb +1 -0
- data/proto_docs/google/api/resource.rb +10 -71
- data/proto_docs/google/cloud/bigquery/storage/v1/protobuf.rb +56 -0
- data/proto_docs/google/cloud/bigquery/storage/v1/storage.rb +244 -1
- data/proto_docs/google/cloud/bigquery/storage/v1/stream.rb +58 -0
- data/proto_docs/google/cloud/bigquery/storage/v1/table.rb +172 -0
- data/proto_docs/google/protobuf/any.rb +141 -0
- data/proto_docs/google/protobuf/wrappers.rb +121 -0
- data/proto_docs/google/rpc/status.rb +46 -0
- metadata +14 -3
@@ -33,11 +33,7 @@ module Google
|
|
33
33
|
# // For Kubernetes resources, the format is {api group}/{kind}.
|
34
34
|
# option (google.api.resource) = {
|
35
35
|
# type: "pubsub.googleapis.com/Topic"
|
36
|
-
#
|
37
|
-
# pattern: "projects/{project}/topics/{topic}"
|
38
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
39
|
-
# parent_name_extractor: "projects/{project}"
|
40
|
-
# }
|
36
|
+
# pattern: "projects/{project}/topics/{topic}"
|
41
37
|
# };
|
42
38
|
# }
|
43
39
|
#
|
@@ -45,10 +41,7 @@ module Google
|
|
45
41
|
#
|
46
42
|
# resources:
|
47
43
|
# - type: "pubsub.googleapis.com/Topic"
|
48
|
-
#
|
49
|
-
# - pattern: "projects/{project}/topics/{topic}"
|
50
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
51
|
-
# parent_name_extractor: "projects/{project}"
|
44
|
+
# pattern: "projects/{project}/topics/{topic}"
|
52
45
|
#
|
53
46
|
# Sometimes, resources have multiple patterns, typically because they can
|
54
47
|
# live under multiple parents.
|
@@ -58,26 +51,10 @@ module Google
|
|
58
51
|
# message LogEntry {
|
59
52
|
# option (google.api.resource) = {
|
60
53
|
# type: "logging.googleapis.com/LogEntry"
|
61
|
-
#
|
62
|
-
#
|
63
|
-
#
|
64
|
-
#
|
65
|
-
# }
|
66
|
-
# name_descriptor: {
|
67
|
-
# pattern: "folders/{folder}/logs/{log}"
|
68
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
69
|
-
# parent_name_extractor: "folders/{folder}"
|
70
|
-
# }
|
71
|
-
# name_descriptor: {
|
72
|
-
# pattern: "organizations/{organization}/logs/{log}"
|
73
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Organization"
|
74
|
-
# parent_name_extractor: "organizations/{organization}"
|
75
|
-
# }
|
76
|
-
# name_descriptor: {
|
77
|
-
# pattern: "billingAccounts/{billing_account}/logs/{log}"
|
78
|
-
# parent_type: "billing.googleapis.com/BillingAccount"
|
79
|
-
# parent_name_extractor: "billingAccounts/{billing_account}"
|
80
|
-
# }
|
54
|
+
# pattern: "projects/{project}/logs/{log}"
|
55
|
+
# pattern: "folders/{folder}/logs/{log}"
|
56
|
+
# pattern: "organizations/{organization}/logs/{log}"
|
57
|
+
# pattern: "billingAccounts/{billing_account}/logs/{log}"
|
81
58
|
# };
|
82
59
|
# }
|
83
60
|
#
|
@@ -85,48 +62,10 @@ module Google
|
|
85
62
|
#
|
86
63
|
# resources:
|
87
64
|
# - type: 'logging.googleapis.com/LogEntry'
|
88
|
-
#
|
89
|
-
#
|
90
|
-
#
|
91
|
-
#
|
92
|
-
# - pattern: "folders/{folder}/logs/{log}"
|
93
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
94
|
-
# parent_name_extractor: "folders/{folder}"
|
95
|
-
# - pattern: "organizations/{organization}/logs/{log}"
|
96
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Organization"
|
97
|
-
# parent_name_extractor: "organizations/{organization}"
|
98
|
-
# - pattern: "billingAccounts/{billing_account}/logs/{log}"
|
99
|
-
# parent_type: "billing.googleapis.com/BillingAccount"
|
100
|
-
# parent_name_extractor: "billingAccounts/{billing_account}"
|
101
|
-
#
|
102
|
-
# For flexible resources, the resource name doesn't contain parent names, but
|
103
|
-
# the resource itself has parents for policy evaluation.
|
104
|
-
#
|
105
|
-
# Example:
|
106
|
-
#
|
107
|
-
# message Shelf {
|
108
|
-
# option (google.api.resource) = {
|
109
|
-
# type: "library.googleapis.com/Shelf"
|
110
|
-
# name_descriptor: {
|
111
|
-
# pattern: "shelves/{shelf}"
|
112
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
113
|
-
# }
|
114
|
-
# name_descriptor: {
|
115
|
-
# pattern: "shelves/{shelf}"
|
116
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
117
|
-
# }
|
118
|
-
# };
|
119
|
-
# }
|
120
|
-
#
|
121
|
-
# The ResourceDescriptor Yaml config will look like:
|
122
|
-
#
|
123
|
-
# resources:
|
124
|
-
# - type: 'library.googleapis.com/Shelf'
|
125
|
-
# name_descriptor:
|
126
|
-
# - pattern: "shelves/{shelf}"
|
127
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
128
|
-
# - pattern: "shelves/{shelf}"
|
129
|
-
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
65
|
+
# pattern: "projects/{project}/logs/{log}"
|
66
|
+
# pattern: "folders/{folder}/logs/{log}"
|
67
|
+
# pattern: "organizations/{organization}/logs/{log}"
|
68
|
+
# pattern: "billingAccounts/{billing_account}/logs/{log}"
|
130
69
|
# @!attribute [rw] type
|
131
70
|
# @return [::String]
|
132
71
|
# The resource type. It must be in the format of
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2021 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module Bigquery
|
23
|
+
module Storage
|
24
|
+
module V1
|
25
|
+
# ProtoSchema describes the schema of the serialized protocol buffer data rows.
|
26
|
+
# @!attribute [rw] proto_descriptor
|
27
|
+
# @return [::Google::Protobuf::DescriptorProto]
|
28
|
+
# Descriptor for input message. The provided descriptor must be self
|
29
|
+
# contained, such that data rows sent can be fully decoded using only the
|
30
|
+
# single descriptor. For data rows that are compositions of multiple
|
31
|
+
# independent messages, this means the descriptor may need to be transformed
|
32
|
+
# to only use nested types:
|
33
|
+
# https://developers.google.com/protocol-buffers/docs/proto#nested
|
34
|
+
#
|
35
|
+
# For additional information for how proto types and values map onto BigQuery
|
36
|
+
# see: https://cloud.google.com/bigquery/docs/write-api#data_type_conversions
|
37
|
+
class ProtoSchema
|
38
|
+
include ::Google::Protobuf::MessageExts
|
39
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
40
|
+
end
|
41
|
+
|
42
|
+
# @!attribute [rw] serialized_rows
|
43
|
+
# @return [::Array<::String>]
|
44
|
+
# A sequence of rows serialized as a Protocol Buffer.
|
45
|
+
#
|
46
|
+
# See https://developers.google.com/protocol-buffers/docs/overview for more
|
47
|
+
# information on deserializing this field.
|
48
|
+
class ProtoRows
|
49
|
+
include ::Google::Protobuf::MessageExts
|
50
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -69,7 +69,7 @@ module Google
|
|
69
69
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
70
70
|
end
|
71
71
|
|
72
|
-
# Estimated stream statistics for a given Stream.
|
72
|
+
# Estimated stream statistics for a given read Stream.
|
73
73
|
# @!attribute [rw] progress
|
74
74
|
# @return [::Google::Cloud::Bigquery::Storage::V1::StreamStats::Progress]
|
75
75
|
# Represents the progress of the current stream.
|
@@ -162,6 +162,249 @@ module Google
|
|
162
162
|
include ::Google::Protobuf::MessageExts
|
163
163
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
164
164
|
end
|
165
|
+
|
166
|
+
# Request message for `CreateWriteStream`.
|
167
|
+
# @!attribute [rw] parent
|
168
|
+
# @return [::String]
|
169
|
+
# Required. Reference to the table to which the stream belongs, in the format
|
170
|
+
# of `projects/{project}/datasets/{dataset}/tables/{table}`.
|
171
|
+
# @!attribute [rw] write_stream
|
172
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::WriteStream]
|
173
|
+
# Required. Stream to be created.
|
174
|
+
class CreateWriteStreamRequest
|
175
|
+
include ::Google::Protobuf::MessageExts
|
176
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
177
|
+
end
|
178
|
+
|
179
|
+
# Request message for `AppendRows`.
|
180
|
+
#
|
181
|
+
# Due to the nature of AppendRows being a bidirectional streaming RPC, certain
|
182
|
+
# parts of the AppendRowsRequest need only be specified for the first request
|
183
|
+
# sent each time the gRPC network connection is opened/reopened.
|
184
|
+
# @!attribute [rw] write_stream
|
185
|
+
# @return [::String]
|
186
|
+
# Required. The write_stream identifies the target of the append operation, and only
|
187
|
+
# needs to be specified as part of the first request on the gRPC connection.
|
188
|
+
# If provided for subsequent requests, it must match the value of the first
|
189
|
+
# request.
|
190
|
+
#
|
191
|
+
# For explicitly created write streams, the format is:
|
192
|
+
# `projects/{project}/datasets/{dataset}/tables/{table}/streams/{id}`
|
193
|
+
#
|
194
|
+
# For the special default stream, the format is:
|
195
|
+
# `projects/{project}/datasets/{dataset}/tables/{table}/_default`.
|
196
|
+
# @!attribute [rw] offset
|
197
|
+
# @return [::Google::Protobuf::Int64Value]
|
198
|
+
# If present, the write is only performed if the next append offset is same
|
199
|
+
# as the provided value. If not present, the write is performed at the
|
200
|
+
# current end of stream. Specifying a value for this field is not allowed
|
201
|
+
# when calling AppendRows for the '_default' stream.
|
202
|
+
# @!attribute [rw] proto_rows
|
203
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::AppendRowsRequest::ProtoData]
|
204
|
+
# Rows in proto format.
|
205
|
+
# @!attribute [rw] trace_id
|
206
|
+
# @return [::String]
|
207
|
+
# Id set by client to annotate its identity. Only initial request setting is
|
208
|
+
# respected.
|
209
|
+
class AppendRowsRequest
|
210
|
+
include ::Google::Protobuf::MessageExts
|
211
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
212
|
+
|
213
|
+
# ProtoData contains the data rows and schema when constructing append
|
214
|
+
# requests.
|
215
|
+
# @!attribute [rw] writer_schema
|
216
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::ProtoSchema]
|
217
|
+
# Proto schema used to serialize the data. This value only needs to be
|
218
|
+
# provided as part of the first request on a gRPC network connection,
|
219
|
+
# and will be ignored for subsequent requests on the connection.
|
220
|
+
# @!attribute [rw] rows
|
221
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::ProtoRows]
|
222
|
+
# Serialized row data in protobuf message format.
|
223
|
+
# Currently, the backend expects the serialized rows to adhere to
|
224
|
+
# proto2 semantics when appending rows, particularly with respect to
|
225
|
+
# how default values are encoded.
|
226
|
+
class ProtoData
|
227
|
+
include ::Google::Protobuf::MessageExts
|
228
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
229
|
+
end
|
230
|
+
end
|
231
|
+
|
232
|
+
# Response message for `AppendRows`.
|
233
|
+
# @!attribute [rw] append_result
|
234
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::AppendRowsResponse::AppendResult]
|
235
|
+
# Result if the append is successful.
|
236
|
+
# @!attribute [rw] error
|
237
|
+
# @return [::Google::Rpc::Status]
|
238
|
+
# Error returned when problems were encountered. If present,
|
239
|
+
# it indicates rows were not accepted into the system.
|
240
|
+
# Users can retry or continue with other append requests within the
|
241
|
+
# same connection.
|
242
|
+
#
|
243
|
+
# Additional information about error signalling:
|
244
|
+
#
|
245
|
+
# ALREADY_EXISTS: Happens when an append specified an offset, and the
|
246
|
+
# backend already has received data at this offset. Typically encountered
|
247
|
+
# in retry scenarios, and can be ignored.
|
248
|
+
#
|
249
|
+
# OUT_OF_RANGE: Returned when the specified offset in the stream is beyond
|
250
|
+
# the current end of the stream.
|
251
|
+
#
|
252
|
+
# INVALID_ARGUMENT: Indicates a malformed request or data.
|
253
|
+
#
|
254
|
+
# ABORTED: Request processing is aborted because of prior failures. The
|
255
|
+
# request can be retried if previous failure is addressed.
|
256
|
+
#
|
257
|
+
# INTERNAL: Indicates server side error(s) that can be retried.
|
258
|
+
# @!attribute [rw] updated_schema
|
259
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::TableSchema]
|
260
|
+
# If backend detects a schema update, pass it to user so that user can
|
261
|
+
# use it to input new type of message. It will be empty when no schema
|
262
|
+
# updates have occurred.
|
263
|
+
class AppendRowsResponse
|
264
|
+
include ::Google::Protobuf::MessageExts
|
265
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
266
|
+
|
267
|
+
# AppendResult is returned for successful append requests.
|
268
|
+
# @!attribute [rw] offset
|
269
|
+
# @return [::Google::Protobuf::Int64Value]
|
270
|
+
# The row offset at which the last append occurred. The offset will not be
|
271
|
+
# set if appending using default streams.
|
272
|
+
class AppendResult
|
273
|
+
include ::Google::Protobuf::MessageExts
|
274
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
275
|
+
end
|
276
|
+
end
|
277
|
+
|
278
|
+
# Request message for `GetWriteStreamRequest`.
|
279
|
+
# @!attribute [rw] name
|
280
|
+
# @return [::String]
|
281
|
+
# Required. Name of the stream to get, in the form of
|
282
|
+
# `projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}`.
|
283
|
+
class GetWriteStreamRequest
|
284
|
+
include ::Google::Protobuf::MessageExts
|
285
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
286
|
+
end
|
287
|
+
|
288
|
+
# Request message for `BatchCommitWriteStreams`.
|
289
|
+
# @!attribute [rw] parent
|
290
|
+
# @return [::String]
|
291
|
+
# Required. Parent table that all the streams should belong to, in the form of
|
292
|
+
# `projects/{project}/datasets/{dataset}/tables/{table}`.
|
293
|
+
# @!attribute [rw] write_streams
|
294
|
+
# @return [::Array<::String>]
|
295
|
+
# Required. The group of streams that will be committed atomically.
|
296
|
+
class BatchCommitWriteStreamsRequest
|
297
|
+
include ::Google::Protobuf::MessageExts
|
298
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
299
|
+
end
|
300
|
+
|
301
|
+
# Response message for `BatchCommitWriteStreams`.
|
302
|
+
# @!attribute [rw] commit_time
|
303
|
+
# @return [::Google::Protobuf::Timestamp]
|
304
|
+
# The time at which streams were committed in microseconds granularity.
|
305
|
+
# This field will only exist when there are no stream errors.
|
306
|
+
# **Note** if this field is not set, it means the commit was not successful.
|
307
|
+
# @!attribute [rw] stream_errors
|
308
|
+
# @return [::Array<::Google::Cloud::Bigquery::Storage::V1::StorageError>]
|
309
|
+
# Stream level error if commit failed. Only streams with error will be in
|
310
|
+
# the list.
|
311
|
+
# If empty, there is no error and all streams are committed successfully.
|
312
|
+
# If non empty, certain streams have errors and ZERO stream is committed due
|
313
|
+
# to atomicity guarantee.
|
314
|
+
class BatchCommitWriteStreamsResponse
|
315
|
+
include ::Google::Protobuf::MessageExts
|
316
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
317
|
+
end
|
318
|
+
|
319
|
+
# Request message for invoking `FinalizeWriteStream`.
|
320
|
+
# @!attribute [rw] name
|
321
|
+
# @return [::String]
|
322
|
+
# Required. Name of the stream to finalize, in the form of
|
323
|
+
# `projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}`.
|
324
|
+
class FinalizeWriteStreamRequest
|
325
|
+
include ::Google::Protobuf::MessageExts
|
326
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
327
|
+
end
|
328
|
+
|
329
|
+
# Response message for `FinalizeWriteStream`.
|
330
|
+
# @!attribute [rw] row_count
|
331
|
+
# @return [::Integer]
|
332
|
+
# Number of rows in the finalized stream.
|
333
|
+
class FinalizeWriteStreamResponse
|
334
|
+
include ::Google::Protobuf::MessageExts
|
335
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
336
|
+
end
|
337
|
+
|
338
|
+
# Request message for `FlushRows`.
|
339
|
+
# @!attribute [rw] write_stream
|
340
|
+
# @return [::String]
|
341
|
+
# Required. The stream that is the target of the flush operation.
|
342
|
+
# @!attribute [rw] offset
|
343
|
+
# @return [::Google::Protobuf::Int64Value]
|
344
|
+
# Ending offset of the flush operation. Rows before this offset(including
|
345
|
+
# this offset) will be flushed.
|
346
|
+
class FlushRowsRequest
|
347
|
+
include ::Google::Protobuf::MessageExts
|
348
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
349
|
+
end
|
350
|
+
|
351
|
+
# Respond message for `FlushRows`.
|
352
|
+
# @!attribute [rw] offset
|
353
|
+
# @return [::Integer]
|
354
|
+
# The rows before this offset (including this offset) are flushed.
|
355
|
+
class FlushRowsResponse
|
356
|
+
include ::Google::Protobuf::MessageExts
|
357
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
358
|
+
end
|
359
|
+
|
360
|
+
# Structured custom BigQuery Storage error message. The error can be attached
|
361
|
+
# as error details in the returned rpc Status. In particular, the use of error
|
362
|
+
# codes allows more structured error handling, and reduces the need to evaluate
|
363
|
+
# unstructured error text strings.
|
364
|
+
# @!attribute [rw] code
|
365
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::StorageError::StorageErrorCode]
|
366
|
+
# BigQuery Storage specific error code.
|
367
|
+
# @!attribute [rw] entity
|
368
|
+
# @return [::String]
|
369
|
+
# Name of the failed entity.
|
370
|
+
# @!attribute [rw] error_message
|
371
|
+
# @return [::String]
|
372
|
+
# Message that describes the error.
|
373
|
+
class StorageError
|
374
|
+
include ::Google::Protobuf::MessageExts
|
375
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
376
|
+
|
377
|
+
# Error code for `StorageError`.
|
378
|
+
module StorageErrorCode
|
379
|
+
# Default error.
|
380
|
+
STORAGE_ERROR_CODE_UNSPECIFIED = 0
|
381
|
+
|
382
|
+
# Table is not found in the system.
|
383
|
+
TABLE_NOT_FOUND = 1
|
384
|
+
|
385
|
+
# Stream is already committed.
|
386
|
+
STREAM_ALREADY_COMMITTED = 2
|
387
|
+
|
388
|
+
# Stream is not found.
|
389
|
+
STREAM_NOT_FOUND = 3
|
390
|
+
|
391
|
+
# Invalid Stream type.
|
392
|
+
# For example, you try to commit a stream that is not pending.
|
393
|
+
INVALID_STREAM_TYPE = 4
|
394
|
+
|
395
|
+
# Invalid Stream state.
|
396
|
+
# For example, you try to commit a stream that is not finalized or is
|
397
|
+
# garbaged.
|
398
|
+
INVALID_STREAM_STATE = 5
|
399
|
+
|
400
|
+
# Stream is finalized.
|
401
|
+
STREAM_FINALIZED = 6
|
402
|
+
|
403
|
+
# There is a schema mismatch and it is caused by user schema has extra
|
404
|
+
# field than bigquery schema.
|
405
|
+
SCHEMA_MISMATCH_EXTRA_FIELDS = 7
|
406
|
+
end
|
407
|
+
end
|
165
408
|
end
|
166
409
|
end
|
167
410
|
end
|
@@ -117,6 +117,64 @@ module Google
|
|
117
117
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
118
118
|
end
|
119
119
|
|
120
|
+
# Information about a single stream that gets data inside the storage system.
|
121
|
+
# @!attribute [r] name
|
122
|
+
# @return [::String]
|
123
|
+
# Output only. Name of the stream, in the form
|
124
|
+
# `projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}`.
|
125
|
+
# @!attribute [rw] type
|
126
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::WriteStream::Type]
|
127
|
+
# Immutable. Type of the stream.
|
128
|
+
# @!attribute [r] create_time
|
129
|
+
# @return [::Google::Protobuf::Timestamp]
|
130
|
+
# Output only. Create time of the stream. For the _default stream, this is the
|
131
|
+
# creation_time of the table.
|
132
|
+
# @!attribute [r] commit_time
|
133
|
+
# @return [::Google::Protobuf::Timestamp]
|
134
|
+
# Output only. Commit time of the stream.
|
135
|
+
# If a stream is of `COMMITTED` type, then it will have a commit_time same as
|
136
|
+
# `create_time`. If the stream is of `PENDING` type, empty commit_time
|
137
|
+
# means it is not committed.
|
138
|
+
# @!attribute [r] table_schema
|
139
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::TableSchema]
|
140
|
+
# Output only. The schema of the destination table. It is only returned in
|
141
|
+
# `CreateWriteStream` response. Caller should generate data that's
|
142
|
+
# compatible with this schema to send in initial `AppendRowsRequest`.
|
143
|
+
# The table schema could go out of date during the life time of the stream.
|
144
|
+
# @!attribute [rw] write_mode
|
145
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::WriteStream::WriteMode]
|
146
|
+
# Immutable. Mode of the stream.
|
147
|
+
class WriteStream
|
148
|
+
include ::Google::Protobuf::MessageExts
|
149
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
150
|
+
|
151
|
+
# Type enum of the stream.
|
152
|
+
module Type
|
153
|
+
# Unknown type.
|
154
|
+
TYPE_UNSPECIFIED = 0
|
155
|
+
|
156
|
+
# Data will commit automatically and appear as soon as the write is
|
157
|
+
# acknowledged.
|
158
|
+
COMMITTED = 1
|
159
|
+
|
160
|
+
# Data is invisible until the stream is committed.
|
161
|
+
PENDING = 2
|
162
|
+
|
163
|
+
# Data is only visible up to the offset to which it was flushed.
|
164
|
+
BUFFERED = 3
|
165
|
+
end
|
166
|
+
|
167
|
+
# Mode enum of the stream.
|
168
|
+
module WriteMode
|
169
|
+
# Unknown type.
|
170
|
+
WRITE_MODE_UNSPECIFIED = 0
|
171
|
+
|
172
|
+
# Insert new records into the table.
|
173
|
+
# It is the default value if customers do not specify it.
|
174
|
+
INSERT = 1
|
175
|
+
end
|
176
|
+
end
|
177
|
+
|
120
178
|
# Data format for input or output data.
|
121
179
|
module DataFormat
|
122
180
|
DATA_FORMAT_UNSPECIFIED = 0
|
@@ -0,0 +1,172 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2021 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module Bigquery
|
23
|
+
module Storage
|
24
|
+
module V1
|
25
|
+
# Schema of a table.
|
26
|
+
# @!attribute [rw] fields
|
27
|
+
# @return [::Array<::Google::Cloud::Bigquery::Storage::V1::TableFieldSchema>]
|
28
|
+
# Describes the fields in a table.
|
29
|
+
class TableSchema
|
30
|
+
include ::Google::Protobuf::MessageExts
|
31
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
32
|
+
end
|
33
|
+
|
34
|
+
# TableFieldSchema defines a single field/column within a table schema.
|
35
|
+
# @!attribute [rw] name
|
36
|
+
# @return [::String]
|
37
|
+
# Required. The field name. The name must contain only letters (a-z, A-Z),
|
38
|
+
# numbers (0-9), or underscores (_), and must start with a letter or
|
39
|
+
# underscore. The maximum length is 128 characters.
|
40
|
+
# @!attribute [rw] type
|
41
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::TableFieldSchema::Type]
|
42
|
+
# Required. The field data type.
|
43
|
+
# @!attribute [rw] mode
|
44
|
+
# @return [::Google::Cloud::Bigquery::Storage::V1::TableFieldSchema::Mode]
|
45
|
+
# Optional. The field mode. The default value is NULLABLE.
|
46
|
+
# @!attribute [rw] fields
|
47
|
+
# @return [::Array<::Google::Cloud::Bigquery::Storage::V1::TableFieldSchema>]
|
48
|
+
# Optional. Describes the nested schema fields if the type property is set to STRUCT.
|
49
|
+
# @!attribute [rw] description
|
50
|
+
# @return [::String]
|
51
|
+
# Optional. The field description. The maximum length is 1,024 characters.
|
52
|
+
# @!attribute [rw] max_length
|
53
|
+
# @return [::Integer]
|
54
|
+
# Optional. Maximum length of values of this field for STRINGS or BYTES.
|
55
|
+
#
|
56
|
+
# If max_length is not specified, no maximum length constraint is imposed
|
57
|
+
# on this field.
|
58
|
+
#
|
59
|
+
# If type = "STRING", then max_length represents the maximum UTF-8
|
60
|
+
# length of strings in this field.
|
61
|
+
#
|
62
|
+
# If type = "BYTES", then max_length represents the maximum number of
|
63
|
+
# bytes in this field.
|
64
|
+
#
|
65
|
+
# It is invalid to set this field if type is not "STRING" or "BYTES".
|
66
|
+
# @!attribute [rw] precision
|
67
|
+
# @return [::Integer]
|
68
|
+
# Optional. Precision (maximum number of total digits in base 10) and scale
|
69
|
+
# (maximum number of digits in the fractional part in base 10) constraints
|
70
|
+
# for values of this field for NUMERIC or BIGNUMERIC.
|
71
|
+
#
|
72
|
+
# It is invalid to set precision or scale if type is not "NUMERIC" or
|
73
|
+
# "BIGNUMERIC".
|
74
|
+
#
|
75
|
+
# If precision and scale are not specified, no value range constraint is
|
76
|
+
# imposed on this field insofar as values are permitted by the type.
|
77
|
+
#
|
78
|
+
# Values of this NUMERIC or BIGNUMERIC field must be in this range when:
|
79
|
+
#
|
80
|
+
# * Precision (P) and scale (S) are specified:
|
81
|
+
# [-10^(P-S) + 10^(-S), 10^(P-S) - 10^(-S)]
|
82
|
+
# * Precision (P) is specified but not scale (and thus scale is
|
83
|
+
# interpreted to be equal to zero):
|
84
|
+
# [-10^P + 1, 10^P - 1].
|
85
|
+
#
|
86
|
+
# Acceptable values for precision and scale if both are specified:
|
87
|
+
#
|
88
|
+
# * If type = "NUMERIC":
|
89
|
+
# 1 <= precision - scale <= 29 and 0 <= scale <= 9.
|
90
|
+
# * If type = "BIGNUMERIC":
|
91
|
+
# 1 <= precision - scale <= 38 and 0 <= scale <= 38.
|
92
|
+
#
|
93
|
+
# Acceptable values for precision if only precision is specified but not
|
94
|
+
# scale (and thus scale is interpreted to be equal to zero):
|
95
|
+
#
|
96
|
+
# * If type = "NUMERIC": 1 <= precision <= 29.
|
97
|
+
# * If type = "BIGNUMERIC": 1 <= precision <= 38.
|
98
|
+
#
|
99
|
+
# If scale is specified but not precision, then it is invalid.
|
100
|
+
# @!attribute [rw] scale
|
101
|
+
# @return [::Integer]
|
102
|
+
# Optional. See documentation for precision.
|
103
|
+
class TableFieldSchema
|
104
|
+
include ::Google::Protobuf::MessageExts
|
105
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
106
|
+
|
107
|
+
module Type
|
108
|
+
# Illegal value
|
109
|
+
TYPE_UNSPECIFIED = 0
|
110
|
+
|
111
|
+
# 64K, UTF8
|
112
|
+
STRING = 1
|
113
|
+
|
114
|
+
# 64-bit signed
|
115
|
+
INT64 = 2
|
116
|
+
|
117
|
+
# 64-bit IEEE floating point
|
118
|
+
DOUBLE = 3
|
119
|
+
|
120
|
+
# Aggregate type
|
121
|
+
STRUCT = 4
|
122
|
+
|
123
|
+
# 64K, Binary
|
124
|
+
BYTES = 5
|
125
|
+
|
126
|
+
# 2-valued
|
127
|
+
BOOL = 6
|
128
|
+
|
129
|
+
# 64-bit signed usec since UTC epoch
|
130
|
+
TIMESTAMP = 7
|
131
|
+
|
132
|
+
# Civil date - Year, Month, Day
|
133
|
+
DATE = 8
|
134
|
+
|
135
|
+
# Civil time - Hour, Minute, Second, Microseconds
|
136
|
+
TIME = 9
|
137
|
+
|
138
|
+
# Combination of civil date and civil time
|
139
|
+
DATETIME = 10
|
140
|
+
|
141
|
+
# Geography object
|
142
|
+
GEOGRAPHY = 11
|
143
|
+
|
144
|
+
# Numeric value
|
145
|
+
NUMERIC = 12
|
146
|
+
|
147
|
+
# BigNumeric value
|
148
|
+
BIGNUMERIC = 13
|
149
|
+
|
150
|
+
# Interval
|
151
|
+
INTERVAL = 14
|
152
|
+
|
153
|
+
# JSON, String
|
154
|
+
JSON = 15
|
155
|
+
end
|
156
|
+
|
157
|
+
module Mode
|
158
|
+
# Illegal value
|
159
|
+
MODE_UNSPECIFIED = 0
|
160
|
+
|
161
|
+
NULLABLE = 1
|
162
|
+
|
163
|
+
REQUIRED = 2
|
164
|
+
|
165
|
+
REPEATED = 3
|
166
|
+
end
|
167
|
+
end
|
168
|
+
end
|
169
|
+
end
|
170
|
+
end
|
171
|
+
end
|
172
|
+
end
|