As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

BigQueryWrite

class google.cloud.bigquery_storage_v1beta2.services.big_query_write.BigQueryWriteAsyncClient(*, credentials: typing.Optional[google.auth.credentials.Credentials] = None, transport: typing.Optional[typing.Union[str, google.cloud.bigquery_storage_v1beta2.services.big_query_write.transports.base.BigQueryWriteTransport, typing.Callable[[...], google.cloud.bigquery_storage_v1beta2.services.big_query_write.transports.base.BigQueryWriteTransport]]] = 'grpc_asyncio', client_options: typing.Optional[google.api_core.client_options.ClientOptions] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)[source]

BigQuery Write API.

The Write API can be used to write data to BigQuery.

The google.cloud.bigquery.storage.v1 API should be used instead of the v1beta2 API for BigQueryWrite operations.

Instantiates the big query write async client.

Parameters
  • credentials (Optional[google.auth.credentials.Credentials]) – The authorization credentials to attach to requests. These credentials identify the application to the service; if none are specified, the client will attempt to ascertain the credentials from the environment.

  • transport (Optional[Union[str,BigQueryWriteTransport,Callable[..., BigQueryWriteTransport]]]) – The transport to use, or a Callable that constructs and returns a new transport to use. If a Callable is given, it will be called with the same set of initialization arguments as used in the BigQueryWriteTransport constructor. If set to None, a transport is chosen automatically.

  • client_options (Optional[Union[google.api_core.client_options.ClientOptions, dict]]) –

    Custom options for the client.

    1. The api_endpoint property can be used to override the default endpoint provided by the client when transport is not explicitly provided. Only if this property is not set and transport was not explicitly provided, the endpoint is determined by the GOOGLE_API_USE_MTLS_ENDPOINT environment variable, which have one of the following values: “always” (always use the default mTLS endpoint), “never” (always use the default regular endpoint) and “auto” (auto-switch to the default mTLS endpoint if client certificate is present; this is the default value).

    2. If the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is “true”, then the client_cert_source property can be used to provide a client certificate for mTLS transport. If not provided, the default SSL client certificate will be used if present. If GOOGLE_API_USE_CLIENT_CERTIFICATE is “false” or not set, no client certificate will be used.

    3. The universe_domain property can be used to override the default “googleapis.com” universe. Note that api_endpoint property still takes precedence; and universe_domain is currently not supported for mTLS.

  • client_info (google.api_core.gapic_v1.client_info.ClientInfo) – The client info used to send a user-agent string along with API requests. If None, then default info will be used. Generally, you only need to set this if you’re developing your own client library.

Raises

google.auth.exceptions.MutualTlsChannelError – If mutual TLS transport creation failed for any reason.

property api_endpoint

Return the API endpoint used by the client instance.

Returns

The API endpoint used by the client instance.

Return type

str

append_rows(requests: Optional[AsyncIterator[google.cloud.bigquery_storage_v1beta2.types.storage.AppendRowsRequest]] = None, *, retry: Optional[Union[google.api_core.retry.retry_unary_async.AsyncRetry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) Awaitable[AsyncIterable[google.cloud.bigquery_storage_v1beta2.types.storage.AppendRowsResponse]][source]

Appends data to the given stream.

If offset is specified, the offset is checked against the end of stream. The server returns OUT_OF_RANGE in AppendRowsResponse if an attempt is made to append to an offset beyond the current end of the stream or ALREADY_EXISTS if user provids an offset that has already been written to. User can retry with adjusted offset within the same RPC stream. If offset is not specified, append happens at the end of the stream.

The response contains the offset at which the append happened. Responses are received in the same order in which requests are sent. There will be one response for each successful request. If the offset is not set in response, it means append didn’t happen due to some errors. If one request fails, all the subsequent requests will also fail until a success request is made again.

If the stream is of PENDING type, data will only be available for read operations after the stream is committed.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

async def sample_append_rows():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteAsyncClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.AppendRowsRequest(
        write_stream="write_stream_value",
    )

    # This method expects an iterator which contains
    # 'bigquery_storage_v1beta2.AppendRowsRequest' objects
    # Here we create a generator that yields a single `request` for
    # demonstrative purposes.
    requests = [request]

    def request_generator():
        for request in requests:
            yield request

    # Make the request
    stream = await client.append_rows(requests=request_generator())

    # Handle the response
    async for response in stream:
        print(response)
Parameters
  • requests (AsyncIterator[google.cloud.bigquery_storage_v1beta2.types.AppendRowsRequest]) – The request object AsyncIterator. Request message for AppendRows.

  • retry (google.api_core.retry_async.AsyncRetry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Response message for AppendRows.

Return type

AsyncIterable[google.cloud.bigquery_storage_v1beta2.types.AppendRowsResponse]

async batch_commit_write_streams(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.BatchCommitWriteStreamsRequest, dict]] = None, *, parent: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary_async.AsyncRetry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.storage.BatchCommitWriteStreamsResponse[source]

Atomically commits a group of PENDING streams that belong to the same parent table. Streams must be finalized before commit and cannot be committed multiple times. Once a stream is committed, data in the stream becomes available for read operations.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

async def sample_batch_commit_write_streams():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteAsyncClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.BatchCommitWriteStreamsRequest(
        parent="parent_value",
        write_streams=['write_streams_value1', 'write_streams_value2'],
    )

    # Make the request
    response = await client.batch_commit_write_streams(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Optional[Union[google.cloud.bigquery_storage_v1beta2.types.BatchCommitWriteStreamsRequest, dict]]) – The request object. Request message for BatchCommitWriteStreams.

  • parent (str) –

    Required. Parent table that all the streams should belong to, in the form of projects/{project}/datasets/{dataset}/tables/{table}.

    This corresponds to the parent field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry_async.AsyncRetry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Response message for BatchCommitWriteStreams.

Return type

google.cloud.bigquery_storage_v1beta2.types.BatchCommitWriteStreamsResponse

static common_billing_account_path(billing_account: str) str

Returns a fully-qualified billing_account string.

static common_folder_path(folder: str) str

Returns a fully-qualified folder string.

static common_location_path(project: str, location: str) str

Returns a fully-qualified location string.

static common_organization_path(organization: str) str

Returns a fully-qualified organization string.

static common_project_path(project: str) str

Returns a fully-qualified project string.

async create_write_stream(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.CreateWriteStreamRequest, dict]] = None, *, parent: Optional[str] = None, write_stream: Optional[google.cloud.bigquery_storage_v1beta2.types.stream.WriteStream] = None, retry: Optional[Union[google.api_core.retry.retry_unary_async.AsyncRetry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.stream.WriteStream[source]

Creates a write stream to the given table. Additionally, every table has a special COMMITTED stream named ‘_default’ to which data can be written. This stream doesn’t need to be created using CreateWriteStream. It is a stream that can be used simultaneously by any number of clients. Data written to this stream is considered committed as soon as an acknowledgement is received.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

async def sample_create_write_stream():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteAsyncClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.CreateWriteStreamRequest(
        parent="parent_value",
    )

    # Make the request
    response = await client.create_write_stream(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Optional[Union[google.cloud.bigquery_storage_v1beta2.types.CreateWriteStreamRequest, dict]]) – The request object. Request message for CreateWriteStream.

  • parent (str) –

    Required. Reference to the table to which the stream belongs, in the format of projects/{project}/datasets/{dataset}/tables/{table}.

    This corresponds to the parent field on the request instance; if request is provided, this should not be set.

  • write_stream (google.cloud.bigquery_storage_v1beta2.types.WriteStream) – Required. Stream to be created. This corresponds to the write_stream field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry_async.AsyncRetry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Information about a single stream that gets data inside the storage system.

Return type

google.cloud.bigquery_storage_v1beta2.types.WriteStream

async finalize_write_stream(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.FinalizeWriteStreamRequest, dict]] = None, *, name: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary_async.AsyncRetry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.storage.FinalizeWriteStreamResponse[source]

Finalize a write stream so that no new data can be appended to the stream. Finalize is not supported on the ‘_default’ stream.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

async def sample_finalize_write_stream():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteAsyncClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.FinalizeWriteStreamRequest(
        name="name_value",
    )

    # Make the request
    response = await client.finalize_write_stream(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Optional[Union[google.cloud.bigquery_storage_v1beta2.types.FinalizeWriteStreamRequest, dict]]) – The request object. Request message for invoking FinalizeWriteStream.

  • name (str) –

    Required. Name of the stream to finalize, in the form of projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}.

    This corresponds to the name field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry_async.AsyncRetry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Response message for FinalizeWriteStream.

Return type

google.cloud.bigquery_storage_v1beta2.types.FinalizeWriteStreamResponse

async flush_rows(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.FlushRowsRequest, dict]] = None, *, write_stream: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary_async.AsyncRetry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.storage.FlushRowsResponse[source]

Flushes rows to a BUFFERED stream. If users are appending rows to BUFFERED stream, flush operation is required in order for the rows to become available for reading. A Flush operation flushes up to any previously flushed offset in a BUFFERED stream, to the offset specified in the request. Flush is not supported on the _default stream, since it is not BUFFERED.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

async def sample_flush_rows():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteAsyncClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.FlushRowsRequest(
        write_stream="write_stream_value",
    )

    # Make the request
    response = await client.flush_rows(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Optional[Union[google.cloud.bigquery_storage_v1beta2.types.FlushRowsRequest, dict]]) – The request object. Request message for FlushRows.

  • write_stream (str) –

    Required. The stream that is the target of the flush operation.

    This corresponds to the write_stream field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry_async.AsyncRetry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Respond message for FlushRows.

Return type

google.cloud.bigquery_storage_v1beta2.types.FlushRowsResponse

classmethod from_service_account_file(filename: str, *args, **kwargs)[source]
Creates an instance of this client using the provided credentials

file.

Parameters
  • filename (str) – The path to the service account private key json file.

  • args – Additional arguments to pass to the constructor.

  • kwargs – Additional arguments to pass to the constructor.

Returns

The constructed client.

Return type

BigQueryWriteAsyncClient

classmethod from_service_account_info(info: dict, *args, **kwargs)[source]
Creates an instance of this client using the provided credentials

info.

Parameters
  • info (dict) – The service account private key info.

  • args – Additional arguments to pass to the constructor.

  • kwargs – Additional arguments to pass to the constructor.

Returns

The constructed client.

Return type

BigQueryWriteAsyncClient

classmethod from_service_account_json(filename: str, *args, **kwargs)
Creates an instance of this client using the provided credentials

file.

Parameters
  • filename (str) – The path to the service account private key json file.

  • args – Additional arguments to pass to the constructor.

  • kwargs – Additional arguments to pass to the constructor.

Returns

The constructed client.

Return type

BigQueryWriteAsyncClient

classmethod get_mtls_endpoint_and_cert_source(client_options: Optional[google.api_core.client_options.ClientOptions] = None)[source]

Return the API endpoint and client cert source for mutual TLS.

The client cert source is determined in the following order: (1) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not “true”, the client cert source is None. (2) if client_options.client_cert_source is provided, use the provided one; if the default client cert source exists, use the default one; otherwise the client cert source is None.

The API endpoint is determined in the following order: (1) if client_options.api_endpoint if provided, use the provided one. (2) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is “always”, use the default mTLS endpoint; if the environment variable is “never”, use the default API endpoint; otherwise if client cert source exists, use the default mTLS endpoint, otherwise use the default API endpoint.

More details can be found at https://google.aip.dev/auth/4114.

Parameters

client_options (google.api_core.client_options.ClientOptions) – Custom options for the client. Only the api_endpoint and client_cert_source properties may be used in this method.

Returns

returns the API endpoint and the

client cert source to use.

Return type

Tuple[str, Callable[[], Tuple[bytes, bytes]]]

Raises

google.auth.exceptions.MutualTLSChannelError – If any errors happen.

classmethod get_transport_class(label: Optional[str] = None) Type[google.cloud.bigquery_storage_v1beta2.services.big_query_write.transports.base.BigQueryWriteTransport]

Returns an appropriate transport class.

Parameters

label – The name of the desired transport. If none is provided, then the first transport in the registry is used.

Returns

The transport class to use.

async get_write_stream(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.GetWriteStreamRequest, dict]] = None, *, name: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary_async.AsyncRetry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.stream.WriteStream[source]

Gets a write stream.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

async def sample_get_write_stream():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteAsyncClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.GetWriteStreamRequest(
        name="name_value",
    )

    # Make the request
    response = await client.get_write_stream(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Optional[Union[google.cloud.bigquery_storage_v1beta2.types.GetWriteStreamRequest, dict]]) – The request object. Request message for GetWriteStreamRequest.

  • name (str) –

    Required. Name of the stream to get, in the form of projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}.

    This corresponds to the name field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry_async.AsyncRetry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Information about a single stream that gets data inside the storage system.

Return type

google.cloud.bigquery_storage_v1beta2.types.WriteStream

static parse_common_billing_account_path(path: str) Dict[str, str]

Parse a billing_account path into its component segments.

static parse_common_folder_path(path: str) Dict[str, str]

Parse a folder path into its component segments.

static parse_common_location_path(path: str) Dict[str, str]

Parse a location path into its component segments.

static parse_common_organization_path(path: str) Dict[str, str]

Parse a organization path into its component segments.

static parse_common_project_path(path: str) Dict[str, str]

Parse a project path into its component segments.

static parse_table_path(path: str) Dict[str, str]

Parses a table path into its component segments.

static parse_write_stream_path(path: str) Dict[str, str]

Parses a write_stream path into its component segments.

static table_path(project: str, dataset: str, table: str) str

Returns a fully-qualified table string.

property transport: google.cloud.bigquery_storage_v1beta2.services.big_query_write.transports.base.BigQueryWriteTransport

Returns the transport used by the client instance.

Returns

The transport used by the client instance.

Return type

BigQueryWriteTransport

property universe_domain: str

Return the universe domain used by the client instance.

Returns

The universe domain used

by the client instance.

Return type

str

static write_stream_path(project: str, dataset: str, table: str, stream: str) str

Returns a fully-qualified write_stream string.

class google.cloud.bigquery_storage_v1beta2.services.big_query_write.BigQueryWriteClient(*, credentials: typing.Optional[google.auth.credentials.Credentials] = None, transport: typing.Optional[typing.Union[str, google.cloud.bigquery_storage_v1beta2.services.big_query_write.transports.base.BigQueryWriteTransport, typing.Callable[[...], google.cloud.bigquery_storage_v1beta2.services.big_query_write.transports.base.BigQueryWriteTransport]]] = None, client_options: typing.Optional[typing.Union[google.api_core.client_options.ClientOptions, dict]] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)[source]

BigQuery Write API.

The Write API can be used to write data to BigQuery.

The google.cloud.bigquery.storage.v1 API should be used instead of the v1beta2 API for BigQueryWrite operations.

Instantiates the big query write client.

Parameters
  • credentials (Optional[google.auth.credentials.Credentials]) – The authorization credentials to attach to requests. These credentials identify the application to the service; if none are specified, the client will attempt to ascertain the credentials from the environment.

  • transport (Optional[Union[str,BigQueryWriteTransport,Callable[..., BigQueryWriteTransport]]]) – The transport to use, or a Callable that constructs and returns a new transport. If a Callable is given, it will be called with the same set of initialization arguments as used in the BigQueryWriteTransport constructor. If set to None, a transport is chosen automatically.

  • client_options (Optional[Union[google.api_core.client_options.ClientOptions, dict]]) –

    Custom options for the client.

    1. The api_endpoint property can be used to override the default endpoint provided by the client when transport is not explicitly provided. Only if this property is not set and transport was not explicitly provided, the endpoint is determined by the GOOGLE_API_USE_MTLS_ENDPOINT environment variable, which have one of the following values: “always” (always use the default mTLS endpoint), “never” (always use the default regular endpoint) and “auto” (auto-switch to the default mTLS endpoint if client certificate is present; this is the default value).

    2. If the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is “true”, then the client_cert_source property can be used to provide a client certificate for mTLS transport. If not provided, the default SSL client certificate will be used if present. If GOOGLE_API_USE_CLIENT_CERTIFICATE is “false” or not set, no client certificate will be used.

    3. The universe_domain property can be used to override the default “googleapis.com” universe. Note that the api_endpoint property still takes precedence; and universe_domain is currently not supported for mTLS.

  • client_info (google.api_core.gapic_v1.client_info.ClientInfo) – The client info used to send a user-agent string along with API requests. If None, then default info will be used. Generally, you only need to set this if you’re developing your own client library.

Raises

google.auth.exceptions.MutualTLSChannelError – If mutual TLS transport creation failed for any reason.

__exit__(type, value, traceback)[source]

Releases underlying transport’s resources.

Warning

ONLY use as a context manager if the transport is NOT shared with other clients! Exiting the with block will CLOSE the transport and may cause errors in other clients!

property api_endpoint

Return the API endpoint used by the client instance.

Returns

The API endpoint used by the client instance.

Return type

str

append_rows(requests: Optional[Iterator[google.cloud.bigquery_storage_v1beta2.types.storage.AppendRowsRequest]] = None, *, retry: Optional[Union[google.api_core.retry.retry_unary.Retry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) Iterable[google.cloud.bigquery_storage_v1beta2.types.storage.AppendRowsResponse][source]

Appends data to the given stream.

If offset is specified, the offset is checked against the end of stream. The server returns OUT_OF_RANGE in AppendRowsResponse if an attempt is made to append to an offset beyond the current end of the stream or ALREADY_EXISTS if user provids an offset that has already been written to. User can retry with adjusted offset within the same RPC stream. If offset is not specified, append happens at the end of the stream.

The response contains the offset at which the append happened. Responses are received in the same order in which requests are sent. There will be one response for each successful request. If the offset is not set in response, it means append didn’t happen due to some errors. If one request fails, all the subsequent requests will also fail until a success request is made again.

If the stream is of PENDING type, data will only be available for read operations after the stream is committed.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

def sample_append_rows():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.AppendRowsRequest(
        write_stream="write_stream_value",
    )

    # This method expects an iterator which contains
    # 'bigquery_storage_v1beta2.AppendRowsRequest' objects
    # Here we create a generator that yields a single `request` for
    # demonstrative purposes.
    requests = [request]

    def request_generator():
        for request in requests:
            yield request

    # Make the request
    stream = client.append_rows(requests=request_generator())

    # Handle the response
    for response in stream:
        print(response)
Parameters
Returns

Response message for AppendRows.

Return type

Iterable[google.cloud.bigquery_storage_v1beta2.types.AppendRowsResponse]

batch_commit_write_streams(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.BatchCommitWriteStreamsRequest, dict]] = None, *, parent: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary.Retry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.storage.BatchCommitWriteStreamsResponse[source]

Atomically commits a group of PENDING streams that belong to the same parent table. Streams must be finalized before commit and cannot be committed multiple times. Once a stream is committed, data in the stream becomes available for read operations.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

def sample_batch_commit_write_streams():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.BatchCommitWriteStreamsRequest(
        parent="parent_value",
        write_streams=['write_streams_value1', 'write_streams_value2'],
    )

    # Make the request
    response = client.batch_commit_write_streams(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Union[google.cloud.bigquery_storage_v1beta2.types.BatchCommitWriteStreamsRequest, dict]) – The request object. Request message for BatchCommitWriteStreams.

  • parent (str) –

    Required. Parent table that all the streams should belong to, in the form of projects/{project}/datasets/{dataset}/tables/{table}.

    This corresponds to the parent field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry.Retry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Response message for BatchCommitWriteStreams.

Return type

google.cloud.bigquery_storage_v1beta2.types.BatchCommitWriteStreamsResponse

static common_billing_account_path(billing_account: str) str[source]

Returns a fully-qualified billing_account string.

static common_folder_path(folder: str) str[source]

Returns a fully-qualified folder string.

static common_location_path(project: str, location: str) str[source]

Returns a fully-qualified location string.

static common_organization_path(organization: str) str[source]

Returns a fully-qualified organization string.

static common_project_path(project: str) str[source]

Returns a fully-qualified project string.

create_write_stream(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.CreateWriteStreamRequest, dict]] = None, *, parent: Optional[str] = None, write_stream: Optional[google.cloud.bigquery_storage_v1beta2.types.stream.WriteStream] = None, retry: Optional[Union[google.api_core.retry.retry_unary.Retry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.stream.WriteStream[source]

Creates a write stream to the given table. Additionally, every table has a special COMMITTED stream named ‘_default’ to which data can be written. This stream doesn’t need to be created using CreateWriteStream. It is a stream that can be used simultaneously by any number of clients. Data written to this stream is considered committed as soon as an acknowledgement is received.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

def sample_create_write_stream():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.CreateWriteStreamRequest(
        parent="parent_value",
    )

    # Make the request
    response = client.create_write_stream(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Union[google.cloud.bigquery_storage_v1beta2.types.CreateWriteStreamRequest, dict]) – The request object. Request message for CreateWriteStream.

  • parent (str) –

    Required. Reference to the table to which the stream belongs, in the format of projects/{project}/datasets/{dataset}/tables/{table}.

    This corresponds to the parent field on the request instance; if request is provided, this should not be set.

  • write_stream (google.cloud.bigquery_storage_v1beta2.types.WriteStream) – Required. Stream to be created. This corresponds to the write_stream field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry.Retry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Information about a single stream that gets data inside the storage system.

Return type

google.cloud.bigquery_storage_v1beta2.types.WriteStream

finalize_write_stream(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.FinalizeWriteStreamRequest, dict]] = None, *, name: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary.Retry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.storage.FinalizeWriteStreamResponse[source]

Finalize a write stream so that no new data can be appended to the stream. Finalize is not supported on the ‘_default’ stream.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

def sample_finalize_write_stream():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.FinalizeWriteStreamRequest(
        name="name_value",
    )

    # Make the request
    response = client.finalize_write_stream(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Union[google.cloud.bigquery_storage_v1beta2.types.FinalizeWriteStreamRequest, dict]) – The request object. Request message for invoking FinalizeWriteStream.

  • name (str) –

    Required. Name of the stream to finalize, in the form of projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}.

    This corresponds to the name field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry.Retry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Response message for FinalizeWriteStream.

Return type

google.cloud.bigquery_storage_v1beta2.types.FinalizeWriteStreamResponse

flush_rows(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.FlushRowsRequest, dict]] = None, *, write_stream: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary.Retry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.storage.FlushRowsResponse[source]

Flushes rows to a BUFFERED stream. If users are appending rows to BUFFERED stream, flush operation is required in order for the rows to become available for reading. A Flush operation flushes up to any previously flushed offset in a BUFFERED stream, to the offset specified in the request. Flush is not supported on the _default stream, since it is not BUFFERED.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

def sample_flush_rows():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.FlushRowsRequest(
        write_stream="write_stream_value",
    )

    # Make the request
    response = client.flush_rows(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Union[google.cloud.bigquery_storage_v1beta2.types.FlushRowsRequest, dict]) – The request object. Request message for FlushRows.

  • write_stream (str) –

    Required. The stream that is the target of the flush operation.

    This corresponds to the write_stream field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry.Retry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Respond message for FlushRows.

Return type

google.cloud.bigquery_storage_v1beta2.types.FlushRowsResponse

classmethod from_service_account_file(filename: str, *args, **kwargs)[source]
Creates an instance of this client using the provided credentials

file.

Parameters
  • filename (str) – The path to the service account private key json file.

  • args – Additional arguments to pass to the constructor.

  • kwargs – Additional arguments to pass to the constructor.

Returns

The constructed client.

Return type

BigQueryWriteClient

classmethod from_service_account_info(info: dict, *args, **kwargs)[source]
Creates an instance of this client using the provided credentials

info.

Parameters
  • info (dict) – The service account private key info.

  • args – Additional arguments to pass to the constructor.

  • kwargs – Additional arguments to pass to the constructor.

Returns

The constructed client.

Return type

BigQueryWriteClient

classmethod from_service_account_json(filename: str, *args, **kwargs)
Creates an instance of this client using the provided credentials

file.

Parameters
  • filename (str) – The path to the service account private key json file.

  • args – Additional arguments to pass to the constructor.

  • kwargs – Additional arguments to pass to the constructor.

Returns

The constructed client.

Return type

BigQueryWriteClient

classmethod get_mtls_endpoint_and_cert_source(client_options: Optional[google.api_core.client_options.ClientOptions] = None)[source]

Deprecated. Return the API endpoint and client cert source for mutual TLS.

The client cert source is determined in the following order: (1) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not “true”, the client cert source is None. (2) if client_options.client_cert_source is provided, use the provided one; if the default client cert source exists, use the default one; otherwise the client cert source is None.

The API endpoint is determined in the following order: (1) if client_options.api_endpoint if provided, use the provided one. (2) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is “always”, use the default mTLS endpoint; if the environment variable is “never”, use the default API endpoint; otherwise if client cert source exists, use the default mTLS endpoint, otherwise use the default API endpoint.

More details can be found at https://google.aip.dev/auth/4114.

Parameters

client_options (google.api_core.client_options.ClientOptions) – Custom options for the client. Only the api_endpoint and client_cert_source properties may be used in this method.

Returns

returns the API endpoint and the

client cert source to use.

Return type

Tuple[str, Callable[[], Tuple[bytes, bytes]]]

Raises

google.auth.exceptions.MutualTLSChannelError – If any errors happen.

get_write_stream(request: Optional[Union[google.cloud.bigquery_storage_v1beta2.types.storage.GetWriteStreamRequest, dict]] = None, *, name: Optional[str] = None, retry: Optional[Union[google.api_core.retry.retry_unary.Retry, google.api_core.gapic_v1.method._MethodDefault]] = _MethodDefault._DEFAULT_VALUE, timeout: Union[float, object] = _MethodDefault._DEFAULT_VALUE, metadata: Sequence[Tuple[str, str]] = ()) google.cloud.bigquery_storage_v1beta2.types.stream.WriteStream[source]

Gets a write stream.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import bigquery_storage_v1beta2

def sample_get_write_stream():
    # Create a client
    client = bigquery_storage_v1beta2.BigQueryWriteClient()

    # Initialize request argument(s)
    request = bigquery_storage_v1beta2.GetWriteStreamRequest(
        name="name_value",
    )

    # Make the request
    response = client.get_write_stream(request=request)

    # Handle the response
    print(response)
Parameters
  • request (Union[google.cloud.bigquery_storage_v1beta2.types.GetWriteStreamRequest, dict]) – The request object. Request message for GetWriteStreamRequest.

  • name (str) –

    Required. Name of the stream to get, in the form of projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}.

    This corresponds to the name field on the request instance; if request is provided, this should not be set.

  • retry (google.api_core.retry.Retry) – Designation of what errors, if any, should be retried.

  • timeout (float) – The timeout for this request.

  • metadata (Sequence[Tuple[str, str]]) – Strings which should be sent along with the request as metadata.

Returns

Information about a single stream that gets data inside the storage system.

Return type

google.cloud.bigquery_storage_v1beta2.types.WriteStream

static parse_common_billing_account_path(path: str) Dict[str, str][source]

Parse a billing_account path into its component segments.

static parse_common_folder_path(path: str) Dict[str, str][source]

Parse a folder path into its component segments.

static parse_common_location_path(path: str) Dict[str, str][source]

Parse a location path into its component segments.

static parse_common_organization_path(path: str) Dict[str, str][source]

Parse a organization path into its component segments.

static parse_common_project_path(path: str) Dict[str, str][source]

Parse a project path into its component segments.

static parse_table_path(path: str) Dict[str, str][source]

Parses a table path into its component segments.

static parse_write_stream_path(path: str) Dict[str, str][source]

Parses a write_stream path into its component segments.

static table_path(project: str, dataset: str, table: str) str[source]

Returns a fully-qualified table string.

property transport: google.cloud.bigquery_storage_v1beta2.services.big_query_write.transports.base.BigQueryWriteTransport

Returns the transport used by the client instance.

Returns

The transport used by the client

instance.

Return type

BigQueryWriteTransport

property universe_domain: str

Return the universe domain used by the client instance.

Returns

The universe domain used by the client instance.

Return type

str

static write_stream_path(project: str, dataset: str, table: str, stream: str) str[source]

Returns a fully-qualified write_stream string.