Class: Google::Apis::BigtableadminV2::ColumnFamily
- Inherits:
-
Object
- Object
- Google::Apis::BigtableadminV2::ColumnFamily
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigtableadmin_v2/classes.rb,
lib/google/apis/bigtableadmin_v2/representations.rb,
lib/google/apis/bigtableadmin_v2/representations.rb
Overview
A set of columns within a table which share a common configuration.
Instance Attribute Summary collapse
-
#gc_rule ⇒ Google::Apis::BigtableadminV2::GcRule
Rule for determining which cells to delete during garbage collection.
-
#stats ⇒ Google::Apis::BigtableadminV2::ColumnFamilyStats
Approximate statistics related to a single column family within a table.
-
#value_type ⇒ Google::Apis::BigtableadminV2::Type
Typerepresents the type of data that is written to, read from, or stored in Bigtable.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ColumnFamily
constructor
A new instance of ColumnFamily.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ColumnFamily
Returns a new instance of ColumnFamily.
791 792 793 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 791 def initialize(**args) update!(**args) end |
Instance Attribute Details
#gc_rule ⇒ Google::Apis::BigtableadminV2::GcRule
Rule for determining which cells to delete during garbage collection.
Corresponds to the JSON property gcRule
753 754 755 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 753 def gc_rule @gc_rule end |
#stats ⇒ Google::Apis::BigtableadminV2::ColumnFamilyStats
Approximate statistics related to a single column family within a table. This
information may change rapidly, interpreting these values at a point in time
may already preset out-of-date information. Everything below is approximate,
unless otherwise specified.
Corresponds to the JSON property stats
761 762 763 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 761 def stats @stats end |
#value_type ⇒ Google::Apis::BigtableadminV2::Type
Type represents the type of data that is written to, read from, or stored in
Bigtable. It is heavily based on the GoogleSQL standard to help maintain
familiarity and consistency across products and features. For compatibility
with Bigtable's existing untyped APIs, each Type includes an Encoding
which describes how to convert to/from the underlying data. This might involve
composing a series of steps into an "encoding chain," for example to convert
from INT64 -> STRING -> raw bytes. In most cases, a "link" in the encoding
chain will be based an on existing GoogleSQL conversion function like CAST.
Each link in the encoding chain also defines the following properties: *
Natural sort: Does the encoded value sort consistently with the original typed
value? Note that Bigtable will always sort data based on the raw encoded value,
not the decoded type. - Example: STRING values sort in the same order as
their UTF-8 encodings. - Counterexample: Encoding INT64 to a fixed-width
STRING does not preserve sort order when dealing with negative numbers.
INT64(1) > INT64(-1), but STRING("-00001") > STRING("00001). - The overall
encoding chain sorts naturally if every link does. * Self-delimiting: If we
concatenate two encoded values, can we always tell where the first one ends
and the second one begins? - Example: If we encode INT64s to fixed-width
STRINGs, the first value will always contain exactly N digits, possibly
preceded by a sign. - Counterexample: If we concatenate two UTF-8 encoded
STRINGs, we have no way to tell where the first one ends. - The overall
encoding chain is self-delimiting if any link is. * Compatibility: Which
other systems have matching encoding schemes? For example, does this encoding
have a GoogleSQL equivalent? HBase? Java?
Corresponds to the JSON property valueType
789 790 791 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 789 def value_type @value_type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
796 797 798 799 800 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 796 def update!(**args) @gc_rule = args[:gc_rule] if args.key?(:gc_rule) @stats = args[:stats] if args.key?(:stats) @value_type = args[:value_type] if args.key?(:value_type) end |