Cloud Bigtable V2 API - Class Google::Cloud::Bigtable::V2::Bigtable::Client (v0.14.0)

Reference documentation and code samples for the Cloud Bigtable V2 API class Google::Cloud::Bigtable::V2::Bigtable::Client.

Client for the Bigtable service.

Service for reading from and writing to existing Bigtable tables.

Inherits

  • Object

Methods

.configure

def self.configure() { |config| ... } -> Client::Configuration

Configure the Bigtable Client class.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter
Example
# Modify the configuration for all Bigtable clients
::Google::Cloud::Bigtable::V2::Bigtable::Client.configure do |config|
  config.timeout = 10.0
end

#check_and_mutate_row

def check_and_mutate_row(request, options = nil) -> ::Google::Cloud::Bigtable::V2::CheckAndMutateRowResponse
def check_and_mutate_row(table_name: nil, app_profile_id: nil, row_key: nil, predicate_filter: nil, true_mutations: nil, false_mutations: nil) -> ::Google::Cloud::Bigtable::V2::CheckAndMutateRowResponse

Mutates a row atomically based on the output of a predicate Reader filter.

Overloads
def check_and_mutate_row(request, options = nil) -> ::Google::Cloud::Bigtable::V2::CheckAndMutateRowResponse
Pass arguments to check_and_mutate_row via a request object, either of type CheckAndMutateRowRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::CheckAndMutateRowRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def check_and_mutate_row(table_name: nil, app_profile_id: nil, row_key: nil, predicate_filter: nil, true_mutations: nil, false_mutations: nil) -> ::Google::Cloud::Bigtable::V2::CheckAndMutateRowResponse
Pass arguments to check_and_mutate_row via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table to which the conditional mutation should be applied. Values are of the form projects/<project>/instances/<instance>/tables/<table>.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used.
  • row_key (::String) — Required. The key of the row to which the conditional mutation should be applied.
  • predicate_filter (::Google::Cloud::Bigtable::V2::RowFilter, ::Hash) — The filter to be applied to the contents of the specified row. Depending on whether or not any results are yielded, either true_mutations or false_mutations will be executed. If unset, checks that the row contains any values at all.
  • true_mutations (::Array<::Google::Cloud::Bigtable::V2::Mutation, ::Hash>) — Changes to be atomically applied to the specified row if predicate_filter yields at least one cell when applied to row_key. Entries are applied in order, meaning that earlier mutations can be masked by later ones. Must contain at least one entry if false_mutations is empty, and at most 100000.
  • false_mutations (::Array<::Google::Cloud::Bigtable::V2::Mutation, ::Hash>) — Changes to be atomically applied to the specified row if predicate_filter does not yield any cells when applied to row_key. Entries are applied in order, meaning that earlier mutations can be masked by later ones. Must contain at least one entry if true_mutations is empty, and at most 100000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::CheckAndMutateRowRequest.new

# Call the check_and_mutate_row method.
result = client.check_and_mutate_row request

# The returned object is of type Google::Cloud::Bigtable::V2::CheckAndMutateRowResponse.
p result

#configure

def configure() { |config| ... } -> Client::Configuration

Configure the Bigtable Client instance.

The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on Client.configure.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter

#generate_initial_change_stream_partitions

def generate_initial_change_stream_partitions(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::GenerateInitialChangeStreamPartitionsResponse>
def generate_initial_change_stream_partitions(table_name: nil, app_profile_id: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::GenerateInitialChangeStreamPartitionsResponse>

NOTE: This API is intended to be used by Apache Beam BigtableIO. Returns the current list of partitions that make up the table's change stream. The union of partitions will cover the entire keyspace. Partitions can be read with ReadChangeStream.

Overloads
def generate_initial_change_stream_partitions(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::GenerateInitialChangeStreamPartitionsResponse>
Pass arguments to generate_initial_change_stream_partitions via a request object, either of type GenerateInitialChangeStreamPartitionsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::GenerateInitialChangeStreamPartitionsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def generate_initial_change_stream_partitions(table_name: nil, app_profile_id: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::GenerateInitialChangeStreamPartitionsResponse>
Pass arguments to generate_initial_change_stream_partitions via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table from which to get change stream partitions. Values are of the form projects/<project>/instances/<instance>/tables/<table>. Change streaming must be enabled on the table.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used. Single cluster routing must be configured on the profile.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::GenerateInitialChangeStreamPartitionsRequest.new

# Call the generate_initial_change_stream_partitions method to start streaming.
output = client.generate_initial_change_stream_partitions request

# The returned object is a streamed enumerable yielding elements of type
# ::Google::Cloud::Bigtable::V2::GenerateInitialChangeStreamPartitionsResponse
output.each do |current_response|
  p current_response
end

#initialize

def initialize() { |config| ... } -> Client

Create a new Bigtable client object.

Yields
  • (config) — Configure the Bigtable client.
Yield Parameter
Returns
  • (Client) — a new instance of Client
Example
# Create a client using the default configuration
client = ::Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a client using a custom configuration
client = ::Google::Cloud::Bigtable::V2::Bigtable::Client.new do |config|
  config.timeout = 10.0
end

#mutate_row

def mutate_row(request, options = nil) -> ::Google::Cloud::Bigtable::V2::MutateRowResponse
def mutate_row(table_name: nil, app_profile_id: nil, row_key: nil, mutations: nil) -> ::Google::Cloud::Bigtable::V2::MutateRowResponse

Mutates a row atomically. Cells already present in the row are left unchanged unless explicitly changed by mutation.

Overloads
def mutate_row(request, options = nil) -> ::Google::Cloud::Bigtable::V2::MutateRowResponse
Pass arguments to mutate_row via a request object, either of type MutateRowRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::MutateRowRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def mutate_row(table_name: nil, app_profile_id: nil, row_key: nil, mutations: nil) -> ::Google::Cloud::Bigtable::V2::MutateRowResponse
Pass arguments to mutate_row via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table to which the mutation should be applied. Values are of the form projects/<project>/instances/<instance>/tables/<table>.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used.
  • row_key (::String) — Required. The key of the row to which the mutation should be applied.
  • mutations (::Array<::Google::Cloud::Bigtable::V2::Mutation, ::Hash>) — Required. Changes to be atomically applied to the specified row. Entries are applied in order, meaning that earlier mutations can be masked by later ones. Must contain at least one entry and at most 100000.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::MutateRowRequest.new

# Call the mutate_row method.
result = client.mutate_row request

# The returned object is of type Google::Cloud::Bigtable::V2::MutateRowResponse.
p result

#mutate_rows

def mutate_rows(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::MutateRowsResponse>
def mutate_rows(table_name: nil, app_profile_id: nil, entries: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::MutateRowsResponse>

Mutates multiple rows in a batch. Each individual row is mutated atomically as in MutateRow, but the entire batch is not executed atomically.

Overloads
def mutate_rows(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::MutateRowsResponse>
Pass arguments to mutate_rows via a request object, either of type MutateRowsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::MutateRowsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def mutate_rows(table_name: nil, app_profile_id: nil, entries: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::MutateRowsResponse>
Pass arguments to mutate_rows via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table to which the mutations should be applied.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used.
  • entries (::Array<::Google::Cloud::Bigtable::V2::MutateRowsRequest::Entry, ::Hash>) — Required. The row keys and corresponding mutations to be applied in bulk. Each entry is applied as an atomic mutation, but the entries may be applied in arbitrary order (even between entries for the same row). At least one entry must be specified, and in total the entries can contain at most 100000 mutations.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::MutateRowsRequest.new

# Call the mutate_rows method to start streaming.
output = client.mutate_rows request

# The returned object is a streamed enumerable yielding elements of type
# ::Google::Cloud::Bigtable::V2::MutateRowsResponse
output.each do |current_response|
  p current_response
end

#ping_and_warm

def ping_and_warm(request, options = nil) -> ::Google::Cloud::Bigtable::V2::PingAndWarmResponse
def ping_and_warm(name: nil, app_profile_id: nil) -> ::Google::Cloud::Bigtable::V2::PingAndWarmResponse

Warm up associated instance metadata for this connection. This call is not required but may be useful for connection keep-alive.

Overloads
def ping_and_warm(request, options = nil) -> ::Google::Cloud::Bigtable::V2::PingAndWarmResponse
Pass arguments to ping_and_warm via a request object, either of type PingAndWarmRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::PingAndWarmRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def ping_and_warm(name: nil, app_profile_id: nil) -> ::Google::Cloud::Bigtable::V2::PingAndWarmResponse
Pass arguments to ping_and_warm via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • name (::String) — Required. The unique name of the instance to check permissions for as well as respond. Values are of the form projects/<project>/instances/<instance>.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::PingAndWarmRequest.new

# Call the ping_and_warm method.
result = client.ping_and_warm request

# The returned object is of type Google::Cloud::Bigtable::V2::PingAndWarmResponse.
p result

#read_change_stream

def read_change_stream(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse>
def read_change_stream(table_name: nil, app_profile_id: nil, partition: nil, start_time: nil, continuation_tokens: nil, end_time: nil, heartbeat_duration: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse>

NOTE: This API is intended to be used by Apache Beam BigtableIO. Reads changes from a table's change stream. Changes will reflect both user-initiated mutations and mutations that are caused by garbage collection.

Overloads
def read_change_stream(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse>
Pass arguments to read_change_stream via a request object, either of type ReadChangeStreamRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::ReadChangeStreamRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def read_change_stream(table_name: nil, app_profile_id: nil, partition: nil, start_time: nil, continuation_tokens: nil, end_time: nil, heartbeat_duration: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse>
Pass arguments to read_change_stream via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table from which to read a change stream. Values are of the form projects/<project>/instances/<instance>/tables/<table>. Change streaming must be enabled on the table.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used. Single cluster routing must be configured on the profile.
  • partition (::Google::Cloud::Bigtable::V2::StreamPartition, ::Hash) — The partition to read changes from.
  • start_time (::Google::Protobuf::Timestamp, ::Hash) — Start reading the stream at the specified timestamp. This timestamp must be within the change stream retention period, less than or equal to the current time, and after change stream creation, whichever is greater. This value is inclusive and will be truncated to microsecond granularity.
  • continuation_tokens (::Google::Cloud::Bigtable::V2::StreamContinuationTokens, ::Hash) — Tokens that describe how to resume reading a stream where reading previously left off. If specified, changes will be read starting at the the position. Tokens are delivered on the stream as part of Heartbeat and CloseStream messages.

    If a single token is provided, the token’s partition must exactly match the request’s partition. If multiple tokens are provided, as in the case of a partition merge, the union of the token partitions must exactly cover the request’s partition. Otherwise, INVALID_ARGUMENT will be returned.

  • end_time (::Google::Protobuf::Timestamp, ::Hash) — If specified, OK will be returned when the stream advances beyond this time. Otherwise, changes will be continuously delivered on the stream. This value is inclusive and will be truncated to microsecond granularity.
  • heartbeat_duration (::Google::Protobuf::Duration, ::Hash) — If specified, the duration between Heartbeat messages on the stream. Otherwise, defaults to 5 seconds.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::ReadChangeStreamRequest.new

# Call the read_change_stream method to start streaming.
output = client.read_change_stream request

# The returned object is a streamed enumerable yielding elements of type
# ::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse
output.each do |current_response|
  p current_response
end

#read_modify_write_row

def read_modify_write_row(request, options = nil) -> ::Google::Cloud::Bigtable::V2::ReadModifyWriteRowResponse
def read_modify_write_row(table_name: nil, app_profile_id: nil, row_key: nil, rules: nil) -> ::Google::Cloud::Bigtable::V2::ReadModifyWriteRowResponse

Modifies a row atomically on the server. The method reads the latest existing timestamp and value from the specified columns and writes a new entry based on pre-defined read/modify/write rules. The new value for the timestamp is the greater of the existing timestamp or the current server time. The method returns the new contents of all modified cells.

Overloads
def read_modify_write_row(request, options = nil) -> ::Google::Cloud::Bigtable::V2::ReadModifyWriteRowResponse
Pass arguments to read_modify_write_row via a request object, either of type ReadModifyWriteRowRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::ReadModifyWriteRowRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def read_modify_write_row(table_name: nil, app_profile_id: nil, row_key: nil, rules: nil) -> ::Google::Cloud::Bigtable::V2::ReadModifyWriteRowResponse
Pass arguments to read_modify_write_row via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table to which the read/modify/write rules should be applied. Values are of the form projects/<project>/instances/<instance>/tables/<table>.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used.
  • row_key (::String) — Required. The key of the row to which the read/modify/write rules should be applied.
  • rules (::Array<::Google::Cloud::Bigtable::V2::ReadModifyWriteRule, ::Hash>) — Required. Rules specifying how the specified row's contents are to be transformed into writes. Entries are applied in order, meaning that earlier rules will affect the results of later ones.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::ReadModifyWriteRowRequest.new

# Call the read_modify_write_row method.
result = client.read_modify_write_row request

# The returned object is of type Google::Cloud::Bigtable::V2::ReadModifyWriteRowResponse.
p result

#read_rows

def read_rows(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadRowsResponse>
def read_rows(table_name: nil, app_profile_id: nil, rows: nil, filter: nil, rows_limit: nil, request_stats_view: nil, reversed: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadRowsResponse>

Streams back the contents of all requested rows in key order, optionally applying the same Reader filter to each. Depending on their size, rows and cells may be broken up across multiple responses, but atomicity of each row will still be preserved. See the ReadRowsResponse documentation for details.

Overloads
def read_rows(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadRowsResponse>
Pass arguments to read_rows via a request object, either of type ReadRowsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::ReadRowsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def read_rows(table_name: nil, app_profile_id: nil, rows: nil, filter: nil, rows_limit: nil, request_stats_view: nil, reversed: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::ReadRowsResponse>
Pass arguments to read_rows via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table from which to read. Values are of the form projects/<project>/instances/<instance>/tables/<table>.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used.
  • rows (::Google::Cloud::Bigtable::V2::RowSet, ::Hash) — The row keys and/or ranges to read sequentially. If not specified, reads from all rows.
  • filter (::Google::Cloud::Bigtable::V2::RowFilter, ::Hash) — The filter to apply to the contents of the specified row(s). If unset, reads the entirety of each row.
  • rows_limit (::Integer) — The read will stop after committing to N rows' worth of results. The default (zero) is to return all results.
  • request_stats_view (::Google::Cloud::Bigtable::V2::ReadRowsRequest::RequestStatsView) — The view into RequestStats, as described above.
  • reversed (::Boolean) —

    Experimental API - Please note that this API is currently experimental and can change in the future.

    Return rows in lexiographical descending order of the row keys. The row contents will not be affected by this flag.

    Example result set:

    [
      {key: "k2", "f:col1": "v1", "f:col2": "v1"},
      {key: "k1", "f:col1": "v2", "f:col2": "v2"}
    ]
    
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::ReadRowsRequest.new

# Call the read_rows method to start streaming.
output = client.read_rows request

# The returned object is a streamed enumerable yielding elements of type
# ::Google::Cloud::Bigtable::V2::ReadRowsResponse
output.each do |current_response|
  p current_response
end

#sample_row_keys

def sample_row_keys(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::SampleRowKeysResponse>
def sample_row_keys(table_name: nil, app_profile_id: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::SampleRowKeysResponse>

Returns a sample of row keys in the table. The returned row keys will delimit contiguous sections of the table of approximately equal size, which can be used to break up the data for distributed tasks like mapreduces.

Overloads
def sample_row_keys(request, options = nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::SampleRowKeysResponse>
Pass arguments to sample_row_keys via a request object, either of type SampleRowKeysRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Bigtable::V2::SampleRowKeysRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def sample_row_keys(table_name: nil, app_profile_id: nil) -> ::Enumerable<::Google::Cloud::Bigtable::V2::SampleRowKeysResponse>
Pass arguments to sample_row_keys via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • table_name (::String) — Required. The unique name of the table from which to sample row keys. Values are of the form projects/<project>/instances/<instance>/tables/<table>.
  • app_profile_id (::String) — This value specifies routing for replication. If not specified, the "default" application profile will be used.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/bigtable/v2"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Bigtable::V2::Bigtable::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Bigtable::V2::SampleRowKeysRequest.new

# Call the sample_row_keys method to start streaming.
output = client.sample_row_keys request

# The returned object is a streamed enumerable yielding elements of type
# ::Google::Cloud::Bigtable::V2::SampleRowKeysResponse
output.each do |current_response|
  p current_response
end