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



1791
1792
1793
# File 'generated/google/apis/spanner_v1/classes.rb', line 1791

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



1745
1746
1747
# File 'generated/google/apis/spanner_v1/classes.rb', line 1745

def child_links
  @child_links
end

#display_nameString

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

Returns:

  • (String)


1750
1751
1752
# File 'generated/google/apis/spanner_v1/classes.rb', line 1750

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


1758
1759
1760
# File 'generated/google/apis/spanner_v1/classes.rb', line 1758

def execution_stats
  @execution_stats
end

#indexFixnum

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

Returns:

  • (Fixnum)


1763
1764
1765
# File 'generated/google/apis/spanner_v1/classes.rb', line 1763

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)


1772
1773
1774
# File 'generated/google/apis/spanner_v1/classes.rb', line 1772

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


1783
1784
1785
# File 'generated/google/apis/spanner_v1/classes.rb', line 1783

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



1789
1790
1791
# File 'generated/google/apis/spanner_v1/classes.rb', line 1789

def short_representation
  @short_representation
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1796
1797
1798
1799
1800
1801
1802
1803
1804
# File 'generated/google/apis/spanner_v1/classes.rb', line 1796

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