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



2094
2095
2096
# File 'generated/google/apis/spanner_v1/classes.rb', line 2094

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



2048
2049
2050
# File 'generated/google/apis/spanner_v1/classes.rb', line 2048

def child_links
  @child_links
end

#display_nameString

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

Returns:

  • (String)


2053
2054
2055
# File 'generated/google/apis/spanner_v1/classes.rb', line 2053

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>)


2061
2062
2063
# File 'generated/google/apis/spanner_v1/classes.rb', line 2061

def execution_stats
  @execution_stats
end

#indexFixnum

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

Returns:

  • (Fixnum)


2066
2067
2068
# File 'generated/google/apis/spanner_v1/classes.rb', line 2066

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)


2075
2076
2077
# File 'generated/google/apis/spanner_v1/classes.rb', line 2075

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>)


2086
2087
2088
# File 'generated/google/apis/spanner_v1/classes.rb', line 2086

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



2092
2093
2094
# File 'generated/google/apis/spanner_v1/classes.rb', line 2092

def short_representation
  @short_representation
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2099
2100
2101
2102
2103
2104
2105
2106
2107
# File 'generated/google/apis/spanner_v1/classes.rb', line 2099

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