google-apis-bigtableadmin_v2 0.49.0 → 0.51.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -27,6 +27,19 @@ module Google
27
27
  class AppProfile
28
28
  include Google::Apis::Core::Hashable
29
29
 
30
+ # Data Boost is a serverless compute capability that lets you run high-
31
+ # throughput read jobs on your Bigtable data, without impacting the performance
32
+ # of the clusters that handle your application traffic. Currently, Data Boost
33
+ # exclusively supports read-only use-cases with single-cluster routing. Data
34
+ # Boost reads are only guaranteed to see the results of writes that were written
35
+ # at least 30 minutes ago. This means newly written values may not become
36
+ # visible for up to 30m, and also means that old values may remain visible for
37
+ # up to 30m after being deleted or overwritten. To mitigate the staleness of the
38
+ # data, users may either wait 30m, or use CheckConsistency.
39
+ # Corresponds to the JSON property `dataBoostIsolationReadOnly`
40
+ # @return [Google::Apis::BigtableadminV2::DataBoostIsolationReadOnly]
41
+ attr_accessor :data_boost_isolation_read_only
42
+
30
43
  # Long form description of the use case for this AppProfile.
31
44
  # Corresponds to the JSON property `description`
32
45
  # @return [String]
@@ -82,6 +95,7 @@ module Google
82
95
 
83
96
  # Update properties of this object
84
97
  def update!(**args)
98
+ @data_boost_isolation_read_only = args[:data_boost_isolation_read_only] if args.key?(:data_boost_isolation_read_only)
85
99
  @description = args[:description] if args.key?(:description)
86
100
  @etag = args[:etag] if args.key?(:etag)
87
101
  @multi_cluster_routing_use_any = args[:multi_cluster_routing_use_any] if args.key?(:multi_cluster_routing_use_any)
@@ -163,6 +177,48 @@ module Google
163
177
  end
164
178
  end
165
179
 
180
+ # Placeholder for admin API work while we work out the internals.
181
+ class AuthorizedView
182
+ include Google::Apis::Core::Hashable
183
+
184
+ # Set to true to make the AuthorizedView protected against deletion. The parent
185
+ # Table and containing Instance cannot be deleted if an AuthorizedView has this
186
+ # bit set.
187
+ # Corresponds to the JSON property `deletionProtection`
188
+ # @return [Boolean]
189
+ attr_accessor :deletion_protection
190
+ alias_method :deletion_protection?, :deletion_protection
191
+
192
+ # The etag for this AuthorizedView. If this is provided on update, it must match
193
+ # the server's etag. The server returns ABORTED error on a mismatched etag.
194
+ # Corresponds to the JSON property `etag`
195
+ # @return [String]
196
+ attr_accessor :etag
197
+
198
+ # Identifier. The name of this AuthorizedView. Values are of the form `projects/`
199
+ # project`/instances/`instance`/tables/`table`/authorizedViews/`authorized_view``
200
+ # Corresponds to the JSON property `name`
201
+ # @return [String]
202
+ attr_accessor :name
203
+
204
+ # Defines a simple AuthorizedView that is a subset of the underlying Table.
205
+ # Corresponds to the JSON property `subsetView`
206
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2AuthorizedViewSubsetView]
207
+ attr_accessor :subset_view
208
+
209
+ def initialize(**args)
210
+ update!(**args)
211
+ end
212
+
213
+ # Update properties of this object
214
+ def update!(**args)
215
+ @deletion_protection = args[:deletion_protection] if args.key?(:deletion_protection)
216
+ @etag = args[:etag] if args.key?(:etag)
217
+ @name = args[:name] if args.key?(:name)
218
+ @subset_view = args[:subset_view] if args.key?(:subset_view)
219
+ end
220
+ end
221
+
166
222
  # Defines an automated backup policy for a table
167
223
  class AutomatedBackupPolicy
168
224
  include Google::Apis::Core::Hashable
@@ -510,6 +566,18 @@ module Google
510
566
  # @return [String]
511
567
  attr_accessor :consistency_token
512
568
 
569
+ # Checks that all writes before the consistency token was generated in the same
570
+ # cluster are readable by Databoost.
571
+ # Corresponds to the JSON property `dataBoostReadLocalWrites`
572
+ # @return [Google::Apis::BigtableadminV2::DataBoostReadLocalWrites]
573
+ attr_accessor :data_boost_read_local_writes
574
+
575
+ # Checks that all writes before the consistency token was generated are
576
+ # replicated in every cluster and readable.
577
+ # Corresponds to the JSON property `standardReadRemoteWrites`
578
+ # @return [Google::Apis::BigtableadminV2::StandardReadRemoteWrites]
579
+ attr_accessor :standard_read_remote_writes
580
+
513
581
  def initialize(**args)
514
582
  update!(**args)
515
583
  end
@@ -517,6 +585,8 @@ module Google
517
585
  # Update properties of this object
518
586
  def update!(**args)
519
587
  @consistency_token = args[:consistency_token] if args.key?(:consistency_token)
588
+ @data_boost_read_local_writes = args[:data_boost_read_local_writes] if args.key?(:data_boost_read_local_writes)
589
+ @standard_read_remote_writes = args[:standard_read_remote_writes] if args.key?(:standard_read_remote_writes)
520
590
  end
521
591
  end
522
592
 
@@ -695,6 +765,34 @@ module Google
695
765
  # @return [Google::Apis::BigtableadminV2::ColumnFamilyStats]
696
766
  attr_accessor :stats
697
767
 
768
+ # `Type` represents the type of data that is written to, read from, or stored in
769
+ # Bigtable. It is heavily based on the GoogleSQL standard to help maintain
770
+ # familiarity and consistency across products and features. For compatibility
771
+ # with Bigtable's existing untyped APIs, each `Type` includes an `Encoding`
772
+ # which describes how to convert to/from the underlying data. This might involve
773
+ # composing a series of steps into an "encoding chain," for example to convert
774
+ # from INT64 -> STRING -> raw bytes. In most cases, a "link" in the encoding
775
+ # chain will be based an on existing GoogleSQL conversion function like `CAST`.
776
+ # Each link in the encoding chain also defines the following properties: *
777
+ # Natural sort: Does the encoded value sort consistently with the original typed
778
+ # value? Note that Bigtable will always sort data based on the raw encoded value,
779
+ # *not* the decoded type. - Example: STRING values sort in the same order as
780
+ # their UTF-8 encodings. - Counterexample: Encoding INT64 to a fixed-width
781
+ # STRING does *not* preserve sort order when dealing with negative numbers.
782
+ # INT64(1) > INT64(-1), but STRING("-00001") > STRING("00001). - The overall
783
+ # encoding chain sorts naturally if *every* link does. * Self-delimiting: If we
784
+ # concatenate two encoded values, can we always tell where the first one ends
785
+ # and the second one begins? - Example: If we encode INT64s to fixed-width
786
+ # STRINGs, the first value will always contain exactly N digits, possibly
787
+ # preceded by a sign. - Counterexample: If we concatenate two UTF-8 encoded
788
+ # STRINGs, we have no way to tell where the first one ends. - The overall
789
+ # encoding chain is self-delimiting if *any* link is. * Compatibility: Which
790
+ # other systems have matching encoding schemes? For example, does this encoding
791
+ # have a GoogleSQL equivalent? HBase? Java?
792
+ # Corresponds to the JSON property `valueType`
793
+ # @return [Google::Apis::BigtableadminV2::Type]
794
+ attr_accessor :value_type
795
+
698
796
  def initialize(**args)
699
797
  update!(**args)
700
798
  end
@@ -703,6 +801,7 @@ module Google
703
801
  def update!(**args)
704
802
  @gc_rule = args[:gc_rule] if args.key?(:gc_rule)
705
803
  @stats = args[:stats] if args.key?(:stats)
804
+ @value_type = args[:value_type] if args.key?(:value_type)
706
805
  end
707
806
  end
708
807
 
@@ -829,6 +928,72 @@ module Google
829
928
  end
830
929
  end
831
930
 
931
+ # The metadata for the Operation returned by CreateAuthorizedView.
932
+ class CreateAuthorizedViewMetadata
933
+ include Google::Apis::Core::Hashable
934
+
935
+ # The time at which the operation failed or was completed successfully.
936
+ # Corresponds to the JSON property `finishTime`
937
+ # @return [String]
938
+ attr_accessor :finish_time
939
+
940
+ # The request for CreateAuthorizedView
941
+ # Corresponds to the JSON property `originalRequest`
942
+ # @return [Google::Apis::BigtableadminV2::CreateAuthorizedViewRequest]
943
+ attr_accessor :original_request
944
+
945
+ # The time at which the original request was received.
946
+ # Corresponds to the JSON property `requestTime`
947
+ # @return [String]
948
+ attr_accessor :request_time
949
+
950
+ def initialize(**args)
951
+ update!(**args)
952
+ end
953
+
954
+ # Update properties of this object
955
+ def update!(**args)
956
+ @finish_time = args[:finish_time] if args.key?(:finish_time)
957
+ @original_request = args[:original_request] if args.key?(:original_request)
958
+ @request_time = args[:request_time] if args.key?(:request_time)
959
+ end
960
+ end
961
+
962
+ # The request for CreateAuthorizedView
963
+ class CreateAuthorizedViewRequest
964
+ include Google::Apis::Core::Hashable
965
+
966
+ # Placeholder for admin API work while we work out the internals.
967
+ # Corresponds to the JSON property `authorizedView`
968
+ # @return [Google::Apis::BigtableadminV2::AuthorizedView]
969
+ attr_accessor :authorized_view
970
+
971
+ # Required. The id of the AuthorizedView to create. This AuthorizedView must not
972
+ # already exist. The `authorized_view_id` appended to `parent` forms the full
973
+ # AuthorizedView name of the form `projects/`project`/instances/`instance`/
974
+ # tables/`table`/authorizedView/`authorized_view``.
975
+ # Corresponds to the JSON property `authorizedViewId`
976
+ # @return [String]
977
+ attr_accessor :authorized_view_id
978
+
979
+ # Required. This is the name of the table the AuthorizedView belongs to. Values
980
+ # are of the form `projects/`project`/instances/`instance`/tables/`table``.
981
+ # Corresponds to the JSON property `parent`
982
+ # @return [String]
983
+ attr_accessor :parent
984
+
985
+ def initialize(**args)
986
+ update!(**args)
987
+ end
988
+
989
+ # Update properties of this object
990
+ def update!(**args)
991
+ @authorized_view = args[:authorized_view] if args.key?(:authorized_view)
992
+ @authorized_view_id = args[:authorized_view_id] if args.key?(:authorized_view_id)
993
+ @parent = args[:parent] if args.key?(:parent)
994
+ end
995
+ end
996
+
832
997
  # Metadata type for the operation returned by CreateBackup.
833
998
  class CreateBackupMetadata
834
999
  include Google::Apis::Core::Hashable
@@ -1058,6 +1223,47 @@ module Google
1058
1223
  end
1059
1224
  end
1060
1225
 
1226
+ # Data Boost is a serverless compute capability that lets you run high-
1227
+ # throughput read jobs on your Bigtable data, without impacting the performance
1228
+ # of the clusters that handle your application traffic. Currently, Data Boost
1229
+ # exclusively supports read-only use-cases with single-cluster routing. Data
1230
+ # Boost reads are only guaranteed to see the results of writes that were written
1231
+ # at least 30 minutes ago. This means newly written values may not become
1232
+ # visible for up to 30m, and also means that old values may remain visible for
1233
+ # up to 30m after being deleted or overwritten. To mitigate the staleness of the
1234
+ # data, users may either wait 30m, or use CheckConsistency.
1235
+ class DataBoostIsolationReadOnly
1236
+ include Google::Apis::Core::Hashable
1237
+
1238
+ # The Compute Billing Owner for this Data Boost App Profile.
1239
+ # Corresponds to the JSON property `computeBillingOwner`
1240
+ # @return [String]
1241
+ attr_accessor :compute_billing_owner
1242
+
1243
+ def initialize(**args)
1244
+ update!(**args)
1245
+ end
1246
+
1247
+ # Update properties of this object
1248
+ def update!(**args)
1249
+ @compute_billing_owner = args[:compute_billing_owner] if args.key?(:compute_billing_owner)
1250
+ end
1251
+ end
1252
+
1253
+ # Checks that all writes before the consistency token was generated in the same
1254
+ # cluster are readable by Databoost.
1255
+ class DataBoostReadLocalWrites
1256
+ include Google::Apis::Core::Hashable
1257
+
1258
+ def initialize(**args)
1259
+ update!(**args)
1260
+ end
1261
+
1262
+ # Update properties of this object
1263
+ def update!(**args)
1264
+ end
1265
+ end
1266
+
1061
1267
  # Request message for google.bigtable.admin.v2.BigtableTableAdmin.DropRowRange
1062
1268
  class DropRowRangeRequest
1063
1269
  include Google::Apis::Core::Hashable
@@ -1339,6 +1545,271 @@ module Google
1339
1545
  end
1340
1546
  end
1341
1547
 
1548
+ # Subsets of a column family that are included in this AuthorizedView.
1549
+ class GoogleBigtableAdminV2AuthorizedViewFamilySubsets
1550
+ include Google::Apis::Core::Hashable
1551
+
1552
+ # Prefixes for qualifiers to be included in the AuthorizedView. Every qualifier
1553
+ # starting with one of these prefixes is included in the AuthorizedView. To
1554
+ # provide access to all qualifiers, include the empty string as a prefix ("").
1555
+ # Corresponds to the JSON property `qualifierPrefixes`
1556
+ # @return [Array<String>]
1557
+ attr_accessor :qualifier_prefixes
1558
+
1559
+ # Individual exact column qualifiers to be included in the AuthorizedView.
1560
+ # Corresponds to the JSON property `qualifiers`
1561
+ # @return [Array<String>]
1562
+ attr_accessor :qualifiers
1563
+
1564
+ def initialize(**args)
1565
+ update!(**args)
1566
+ end
1567
+
1568
+ # Update properties of this object
1569
+ def update!(**args)
1570
+ @qualifier_prefixes = args[:qualifier_prefixes] if args.key?(:qualifier_prefixes)
1571
+ @qualifiers = args[:qualifiers] if args.key?(:qualifiers)
1572
+ end
1573
+ end
1574
+
1575
+ # Defines a simple AuthorizedView that is a subset of the underlying Table.
1576
+ class GoogleBigtableAdminV2AuthorizedViewSubsetView
1577
+ include Google::Apis::Core::Hashable
1578
+
1579
+ # Map from column family name to the columns in this family to be included in
1580
+ # the AuthorizedView.
1581
+ # Corresponds to the JSON property `familySubsets`
1582
+ # @return [Hash<String,Google::Apis::BigtableadminV2::GoogleBigtableAdminV2AuthorizedViewFamilySubsets>]
1583
+ attr_accessor :family_subsets
1584
+
1585
+ # Row prefixes to be included in the AuthorizedView. To provide access to all
1586
+ # rows, include the empty string as a prefix ("").
1587
+ # Corresponds to the JSON property `rowPrefixes`
1588
+ # @return [Array<String>]
1589
+ attr_accessor :row_prefixes
1590
+
1591
+ def initialize(**args)
1592
+ update!(**args)
1593
+ end
1594
+
1595
+ # Update properties of this object
1596
+ def update!(**args)
1597
+ @family_subsets = args[:family_subsets] if args.key?(:family_subsets)
1598
+ @row_prefixes = args[:row_prefixes] if args.key?(:row_prefixes)
1599
+ end
1600
+ end
1601
+
1602
+ # A value that combines incremental updates into a summarized value. Data is
1603
+ # never directly written or read using type `Aggregate`. Writes will provide
1604
+ # either the `input_type` or `state_type`, and reads will always return the `
1605
+ # state_type` .
1606
+ class GoogleBigtableAdminV2TypeAggregate
1607
+ include Google::Apis::Core::Hashable
1608
+
1609
+ # `Type` represents the type of data that is written to, read from, or stored in
1610
+ # Bigtable. It is heavily based on the GoogleSQL standard to help maintain
1611
+ # familiarity and consistency across products and features. For compatibility
1612
+ # with Bigtable's existing untyped APIs, each `Type` includes an `Encoding`
1613
+ # which describes how to convert to/from the underlying data. This might involve
1614
+ # composing a series of steps into an "encoding chain," for example to convert
1615
+ # from INT64 -> STRING -> raw bytes. In most cases, a "link" in the encoding
1616
+ # chain will be based an on existing GoogleSQL conversion function like `CAST`.
1617
+ # Each link in the encoding chain also defines the following properties: *
1618
+ # Natural sort: Does the encoded value sort consistently with the original typed
1619
+ # value? Note that Bigtable will always sort data based on the raw encoded value,
1620
+ # *not* the decoded type. - Example: STRING values sort in the same order as
1621
+ # their UTF-8 encodings. - Counterexample: Encoding INT64 to a fixed-width
1622
+ # STRING does *not* preserve sort order when dealing with negative numbers.
1623
+ # INT64(1) > INT64(-1), but STRING("-00001") > STRING("00001). - The overall
1624
+ # encoding chain sorts naturally if *every* link does. * Self-delimiting: If we
1625
+ # concatenate two encoded values, can we always tell where the first one ends
1626
+ # and the second one begins? - Example: If we encode INT64s to fixed-width
1627
+ # STRINGs, the first value will always contain exactly N digits, possibly
1628
+ # preceded by a sign. - Counterexample: If we concatenate two UTF-8 encoded
1629
+ # STRINGs, we have no way to tell where the first one ends. - The overall
1630
+ # encoding chain is self-delimiting if *any* link is. * Compatibility: Which
1631
+ # other systems have matching encoding schemes? For example, does this encoding
1632
+ # have a GoogleSQL equivalent? HBase? Java?
1633
+ # Corresponds to the JSON property `inputType`
1634
+ # @return [Google::Apis::BigtableadminV2::Type]
1635
+ attr_accessor :input_type
1636
+
1637
+ # `Type` represents the type of data that is written to, read from, or stored in
1638
+ # Bigtable. It is heavily based on the GoogleSQL standard to help maintain
1639
+ # familiarity and consistency across products and features. For compatibility
1640
+ # with Bigtable's existing untyped APIs, each `Type` includes an `Encoding`
1641
+ # which describes how to convert to/from the underlying data. This might involve
1642
+ # composing a series of steps into an "encoding chain," for example to convert
1643
+ # from INT64 -> STRING -> raw bytes. In most cases, a "link" in the encoding
1644
+ # chain will be based an on existing GoogleSQL conversion function like `CAST`.
1645
+ # Each link in the encoding chain also defines the following properties: *
1646
+ # Natural sort: Does the encoded value sort consistently with the original typed
1647
+ # value? Note that Bigtable will always sort data based on the raw encoded value,
1648
+ # *not* the decoded type. - Example: STRING values sort in the same order as
1649
+ # their UTF-8 encodings. - Counterexample: Encoding INT64 to a fixed-width
1650
+ # STRING does *not* preserve sort order when dealing with negative numbers.
1651
+ # INT64(1) > INT64(-1), but STRING("-00001") > STRING("00001). - The overall
1652
+ # encoding chain sorts naturally if *every* link does. * Self-delimiting: If we
1653
+ # concatenate two encoded values, can we always tell where the first one ends
1654
+ # and the second one begins? - Example: If we encode INT64s to fixed-width
1655
+ # STRINGs, the first value will always contain exactly N digits, possibly
1656
+ # preceded by a sign. - Counterexample: If we concatenate two UTF-8 encoded
1657
+ # STRINGs, we have no way to tell where the first one ends. - The overall
1658
+ # encoding chain is self-delimiting if *any* link is. * Compatibility: Which
1659
+ # other systems have matching encoding schemes? For example, does this encoding
1660
+ # have a GoogleSQL equivalent? HBase? Java?
1661
+ # Corresponds to the JSON property `stateType`
1662
+ # @return [Google::Apis::BigtableadminV2::Type]
1663
+ attr_accessor :state_type
1664
+
1665
+ # Computes the sum of the input values. Allowed input: `Int64` State: same as
1666
+ # input
1667
+ # Corresponds to the JSON property `sum`
1668
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeAggregateSum]
1669
+ attr_accessor :sum
1670
+
1671
+ def initialize(**args)
1672
+ update!(**args)
1673
+ end
1674
+
1675
+ # Update properties of this object
1676
+ def update!(**args)
1677
+ @input_type = args[:input_type] if args.key?(:input_type)
1678
+ @state_type = args[:state_type] if args.key?(:state_type)
1679
+ @sum = args[:sum] if args.key?(:sum)
1680
+ end
1681
+ end
1682
+
1683
+ # Computes the sum of the input values. Allowed input: `Int64` State: same as
1684
+ # input
1685
+ class GoogleBigtableAdminV2TypeAggregateSum
1686
+ include Google::Apis::Core::Hashable
1687
+
1688
+ def initialize(**args)
1689
+ update!(**args)
1690
+ end
1691
+
1692
+ # Update properties of this object
1693
+ def update!(**args)
1694
+ end
1695
+ end
1696
+
1697
+ # Bytes Values of type `Bytes` are stored in `Value.bytes_value`.
1698
+ class GoogleBigtableAdminV2TypeBytes
1699
+ include Google::Apis::Core::Hashable
1700
+
1701
+ # Rules used to convert to/from lower level types.
1702
+ # Corresponds to the JSON property `encoding`
1703
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeBytesEncoding]
1704
+ attr_accessor :encoding
1705
+
1706
+ def initialize(**args)
1707
+ update!(**args)
1708
+ end
1709
+
1710
+ # Update properties of this object
1711
+ def update!(**args)
1712
+ @encoding = args[:encoding] if args.key?(:encoding)
1713
+ end
1714
+ end
1715
+
1716
+ # Rules used to convert to/from lower level types.
1717
+ class GoogleBigtableAdminV2TypeBytesEncoding
1718
+ include Google::Apis::Core::Hashable
1719
+
1720
+ # Leaves the value "as-is" * Natural sort? Yes * Self-delimiting? No *
1721
+ # Compatibility? N/A
1722
+ # Corresponds to the JSON property `raw`
1723
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeBytesEncodingRaw]
1724
+ attr_accessor :raw
1725
+
1726
+ def initialize(**args)
1727
+ update!(**args)
1728
+ end
1729
+
1730
+ # Update properties of this object
1731
+ def update!(**args)
1732
+ @raw = args[:raw] if args.key?(:raw)
1733
+ end
1734
+ end
1735
+
1736
+ # Leaves the value "as-is" * Natural sort? Yes * Self-delimiting? No *
1737
+ # Compatibility? N/A
1738
+ class GoogleBigtableAdminV2TypeBytesEncodingRaw
1739
+ include Google::Apis::Core::Hashable
1740
+
1741
+ def initialize(**args)
1742
+ update!(**args)
1743
+ end
1744
+
1745
+ # Update properties of this object
1746
+ def update!(**args)
1747
+ end
1748
+ end
1749
+
1750
+ # Int64 Values of type `Int64` are stored in `Value.int_value`.
1751
+ class GoogleBigtableAdminV2TypeInt64
1752
+ include Google::Apis::Core::Hashable
1753
+
1754
+ # Rules used to convert to/from lower level types.
1755
+ # Corresponds to the JSON property `encoding`
1756
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeInt64Encoding]
1757
+ attr_accessor :encoding
1758
+
1759
+ def initialize(**args)
1760
+ update!(**args)
1761
+ end
1762
+
1763
+ # Update properties of this object
1764
+ def update!(**args)
1765
+ @encoding = args[:encoding] if args.key?(:encoding)
1766
+ end
1767
+ end
1768
+
1769
+ # Rules used to convert to/from lower level types.
1770
+ class GoogleBigtableAdminV2TypeInt64Encoding
1771
+ include Google::Apis::Core::Hashable
1772
+
1773
+ # Encodes the value as an 8-byte big endian twos complement `Bytes` value. *
1774
+ # Natural sort? No (positive values only) * Self-delimiting? Yes * Compatibility?
1775
+ # - BigQuery Federation `BINARY` encoding - HBase `Bytes.toBytes` - Java `
1776
+ # ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN`
1777
+ # Corresponds to the JSON property `bigEndianBytes`
1778
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes]
1779
+ attr_accessor :big_endian_bytes
1780
+
1781
+ def initialize(**args)
1782
+ update!(**args)
1783
+ end
1784
+
1785
+ # Update properties of this object
1786
+ def update!(**args)
1787
+ @big_endian_bytes = args[:big_endian_bytes] if args.key?(:big_endian_bytes)
1788
+ end
1789
+ end
1790
+
1791
+ # Encodes the value as an 8-byte big endian twos complement `Bytes` value. *
1792
+ # Natural sort? No (positive values only) * Self-delimiting? Yes * Compatibility?
1793
+ # - BigQuery Federation `BINARY` encoding - HBase `Bytes.toBytes` - Java `
1794
+ # ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN`
1795
+ class GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes
1796
+ include Google::Apis::Core::Hashable
1797
+
1798
+ # Bytes Values of type `Bytes` are stored in `Value.bytes_value`.
1799
+ # Corresponds to the JSON property `bytesType`
1800
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeBytes]
1801
+ attr_accessor :bytes_type
1802
+
1803
+ def initialize(**args)
1804
+ update!(**args)
1805
+ end
1806
+
1807
+ # Update properties of this object
1808
+ def update!(**args)
1809
+ @bytes_type = args[:bytes_type] if args.key?(:bytes_type)
1810
+ end
1811
+ end
1812
+
1342
1813
  # A tablet is a defined by a start and end key and is explained in https://cloud.
1343
1814
  # google.com/bigtable/docs/overview#architecture and https://cloud.google.com/
1344
1815
  # bigtable/docs/performance#optimization. A Hot tablet is a tablet that exhibits
@@ -1523,6 +1994,33 @@ module Google
1523
1994
  end
1524
1995
  end
1525
1996
 
1997
+ # Response message for google.bigtable.admin.v2.BigtableTableAdmin.
1998
+ # ListAuthorizedViews
1999
+ class ListAuthorizedViewsResponse
2000
+ include Google::Apis::Core::Hashable
2001
+
2002
+ # The AuthorizedViews present in the requested table.
2003
+ # Corresponds to the JSON property `authorizedViews`
2004
+ # @return [Array<Google::Apis::BigtableadminV2::AuthorizedView>]
2005
+ attr_accessor :authorized_views
2006
+
2007
+ # Set if not all tables could be returned in a single response. Pass this value
2008
+ # to `page_token` in another request to get the next page of results.
2009
+ # Corresponds to the JSON property `nextPageToken`
2010
+ # @return [String]
2011
+ attr_accessor :next_page_token
2012
+
2013
+ def initialize(**args)
2014
+ update!(**args)
2015
+ end
2016
+
2017
+ # Update properties of this object
2018
+ def update!(**args)
2019
+ @authorized_views = args[:authorized_views] if args.key?(:authorized_views)
2020
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2021
+ end
2022
+ end
2023
+
1526
2024
  # The response for ListBackups.
1527
2025
  class ListBackupsResponse
1528
2026
  include Google::Apis::Core::Hashable
@@ -2400,6 +2898,20 @@ module Google
2400
2898
  end
2401
2899
  end
2402
2900
 
2901
+ # Checks that all writes before the consistency token was generated are
2902
+ # replicated in every cluster and readable.
2903
+ class StandardReadRemoteWrites
2904
+ include Google::Apis::Core::Hashable
2905
+
2906
+ def initialize(**args)
2907
+ update!(**args)
2908
+ end
2909
+
2910
+ # Update properties of this object
2911
+ def update!(**args)
2912
+ end
2913
+ end
2914
+
2403
2915
  # The `Status` type defines a logical error model that is suitable for different
2404
2916
  # programming environments, including REST APIs and RPC APIs. It is used by [
2405
2917
  # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
@@ -2650,6 +3162,63 @@ module Google
2650
3162
  end
2651
3163
  end
2652
3164
 
3165
+ # `Type` represents the type of data that is written to, read from, or stored in
3166
+ # Bigtable. It is heavily based on the GoogleSQL standard to help maintain
3167
+ # familiarity and consistency across products and features. For compatibility
3168
+ # with Bigtable's existing untyped APIs, each `Type` includes an `Encoding`
3169
+ # which describes how to convert to/from the underlying data. This might involve
3170
+ # composing a series of steps into an "encoding chain," for example to convert
3171
+ # from INT64 -> STRING -> raw bytes. In most cases, a "link" in the encoding
3172
+ # chain will be based an on existing GoogleSQL conversion function like `CAST`.
3173
+ # Each link in the encoding chain also defines the following properties: *
3174
+ # Natural sort: Does the encoded value sort consistently with the original typed
3175
+ # value? Note that Bigtable will always sort data based on the raw encoded value,
3176
+ # *not* the decoded type. - Example: STRING values sort in the same order as
3177
+ # their UTF-8 encodings. - Counterexample: Encoding INT64 to a fixed-width
3178
+ # STRING does *not* preserve sort order when dealing with negative numbers.
3179
+ # INT64(1) > INT64(-1), but STRING("-00001") > STRING("00001). - The overall
3180
+ # encoding chain sorts naturally if *every* link does. * Self-delimiting: If we
3181
+ # concatenate two encoded values, can we always tell where the first one ends
3182
+ # and the second one begins? - Example: If we encode INT64s to fixed-width
3183
+ # STRINGs, the first value will always contain exactly N digits, possibly
3184
+ # preceded by a sign. - Counterexample: If we concatenate two UTF-8 encoded
3185
+ # STRINGs, we have no way to tell where the first one ends. - The overall
3186
+ # encoding chain is self-delimiting if *any* link is. * Compatibility: Which
3187
+ # other systems have matching encoding schemes? For example, does this encoding
3188
+ # have a GoogleSQL equivalent? HBase? Java?
3189
+ class Type
3190
+ include Google::Apis::Core::Hashable
3191
+
3192
+ # A value that combines incremental updates into a summarized value. Data is
3193
+ # never directly written or read using type `Aggregate`. Writes will provide
3194
+ # either the `input_type` or `state_type`, and reads will always return the `
3195
+ # state_type` .
3196
+ # Corresponds to the JSON property `aggregateType`
3197
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeAggregate]
3198
+ attr_accessor :aggregate_type
3199
+
3200
+ # Bytes Values of type `Bytes` are stored in `Value.bytes_value`.
3201
+ # Corresponds to the JSON property `bytesType`
3202
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeBytes]
3203
+ attr_accessor :bytes_type
3204
+
3205
+ # Int64 Values of type `Int64` are stored in `Value.int_value`.
3206
+ # Corresponds to the JSON property `int64Type`
3207
+ # @return [Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeInt64]
3208
+ attr_accessor :int64_type
3209
+
3210
+ def initialize(**args)
3211
+ update!(**args)
3212
+ end
3213
+
3214
+ # Update properties of this object
3215
+ def update!(**args)
3216
+ @aggregate_type = args[:aggregate_type] if args.key?(:aggregate_type)
3217
+ @bytes_type = args[:bytes_type] if args.key?(:bytes_type)
3218
+ @int64_type = args[:int64_type] if args.key?(:int64_type)
3219
+ end
3220
+ end
3221
+
2653
3222
  # Metadata type for the operation returned by google.bigtable.admin.v2.
2654
3223
  # BigtableTableAdmin.UndeleteTable.
2655
3224
  class UndeleteTableMetadata
@@ -2727,6 +3296,74 @@ module Google
2727
3296
  end
2728
3297
  end
2729
3298
 
3299
+ # Metadata for the google.longrunning.Operation returned by UpdateAuthorizedView.
3300
+ class UpdateAuthorizedViewMetadata
3301
+ include Google::Apis::Core::Hashable
3302
+
3303
+ # The time at which the operation failed or was completed successfully.
3304
+ # Corresponds to the JSON property `finishTime`
3305
+ # @return [String]
3306
+ attr_accessor :finish_time
3307
+
3308
+ # The request for UpdateAuthorizedView.
3309
+ # Corresponds to the JSON property `originalRequest`
3310
+ # @return [Google::Apis::BigtableadminV2::UpdateAuthorizedViewRequest]
3311
+ attr_accessor :original_request
3312
+
3313
+ # The time at which the original request was received.
3314
+ # Corresponds to the JSON property `requestTime`
3315
+ # @return [String]
3316
+ attr_accessor :request_time
3317
+
3318
+ def initialize(**args)
3319
+ update!(**args)
3320
+ end
3321
+
3322
+ # Update properties of this object
3323
+ def update!(**args)
3324
+ @finish_time = args[:finish_time] if args.key?(:finish_time)
3325
+ @original_request = args[:original_request] if args.key?(:original_request)
3326
+ @request_time = args[:request_time] if args.key?(:request_time)
3327
+ end
3328
+ end
3329
+
3330
+ # The request for UpdateAuthorizedView.
3331
+ class UpdateAuthorizedViewRequest
3332
+ include Google::Apis::Core::Hashable
3333
+
3334
+ # Placeholder for admin API work while we work out the internals.
3335
+ # Corresponds to the JSON property `authorizedView`
3336
+ # @return [Google::Apis::BigtableadminV2::AuthorizedView]
3337
+ attr_accessor :authorized_view
3338
+
3339
+ # Optional. If true, ignore the safety checks when updating the AuthorizedView.
3340
+ # Corresponds to the JSON property `ignoreWarnings`
3341
+ # @return [Boolean]
3342
+ attr_accessor :ignore_warnings
3343
+ alias_method :ignore_warnings?, :ignore_warnings
3344
+
3345
+ # Optional. The list of fields to update. A mask specifying which fields in the
3346
+ # AuthorizedView resource should be updated. This mask is relative to the
3347
+ # AuthorizedView resource, not to the request message. A field will be
3348
+ # overwritten if it is in the mask. If empty, all fields set in the request will
3349
+ # be overwritten. A special value `*` means to overwrite all fields (including
3350
+ # fields not set in the request).
3351
+ # Corresponds to the JSON property `updateMask`
3352
+ # @return [String]
3353
+ attr_accessor :update_mask
3354
+
3355
+ def initialize(**args)
3356
+ update!(**args)
3357
+ end
3358
+
3359
+ # Update properties of this object
3360
+ def update!(**args)
3361
+ @authorized_view = args[:authorized_view] if args.key?(:authorized_view)
3362
+ @ignore_warnings = args[:ignore_warnings] if args.key?(:ignore_warnings)
3363
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
3364
+ end
3365
+ end
3366
+
2730
3367
  # The metadata for the Operation returned by UpdateCluster.
2731
3368
  class UpdateClusterMetadata
2732
3369
  include Google::Apis::Core::Hashable