Class: Google::Apis::SpannerV1::PlanNode

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/spanner_v1/classes.rb,
generated/google/apis/spanner_v1/representations.rb,
generated/google/apis/spanner_v1/representations.rb

Overview

Node information for nodes appearing in a QueryPlan.plan_nodes.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ PlanNode

Returns a new instance of PlanNode



1969
1970
1971
# File 'generated/google/apis/spanner_v1/classes.rb', line 1969

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

List of child node indexes and their relationship to this parent. Corresponds to the JSON property childLinks



1923
1924
1925
# File 'generated/google/apis/spanner_v1/classes.rb', line 1923

def child_links
  @child_links
end

#display_nameString

The display name for the node. Corresponds to the JSON property displayName

Returns:

  • (String)


1928
1929
1930
# File 'generated/google/apis/spanner_v1/classes.rb', line 1928

def display_name
  @display_name
end

#execution_statsHash<String,Object>

The execution statistics associated with the node, contained in a group of key-value pairs. Only present if the plan was returned as a result of a profile query. For example, number of executions, number of rows/time per execution etc. Corresponds to the JSON property executionStats

Returns:

  • (Hash<String,Object>)


1936
1937
1938
# File 'generated/google/apis/spanner_v1/classes.rb', line 1936

def execution_stats
  @execution_stats
end

#indexFixnum

The PlanNode's index in node list. Corresponds to the JSON property index

Returns:

  • (Fixnum)


1941
1942
1943
# File 'generated/google/apis/spanner_v1/classes.rb', line 1941

def index
  @index
end

#kindString

Used to determine the type of node. May be needed for visualizing different kinds of nodes differently. For example, If the node is a SCALAR node, it will have a condensed representation which can be used to directly embed a description of the node in its parent. Corresponds to the JSON property kind

Returns:

  • (String)


1950
1951
1952
# File 'generated/google/apis/spanner_v1/classes.rb', line 1950

def kind
  @kind
end

#metadataHash<String,Object>

Attributes relevant to the node contained in a group of key-value pairs. For example, a Parameter Reference node could have the following information in its metadata: "parameter_reference": "param1", "parameter_type": "array" Corresponds to the JSON property metadata

Returns:

  • (Hash<String,Object>)


1961
1962
1963
# File 'generated/google/apis/spanner_v1/classes.rb', line 1961

def 
  @metadata
end

#short_representationGoogle::Apis::SpannerV1::ShortRepresentation

Condensed representation of a node and its subtree. Only present for SCALAR PlanNode(s). Corresponds to the JSON property shortRepresentation



1967
1968
1969
# File 'generated/google/apis/spanner_v1/classes.rb', line 1967

def short_representation
  @short_representation
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1974
1975
1976
1977
1978
1979
1980
1981
1982
# File 'generated/google/apis/spanner_v1/classes.rb', line 1974

def update!(**args)
  @child_links = args[:child_links] if args.key?(:child_links)
  @display_name = args[:display_name] if args.key?(:display_name)
  @execution_stats = args[:execution_stats] if args.key?(:execution_stats)
  @index = args[:index] if args.key?(:index)
  @kind = args[:kind] if args.key?(:kind)
  @metadata = args[:metadata] if args.key?(:metadata)
  @short_representation = args[:short_representation] if args.key?(:short_representation)
end