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



1067
1068
1069
# File 'generated/google/apis/spanner_v1/classes.rb', line 1067

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



1065
1066
1067
# File 'generated/google/apis/spanner_v1/classes.rb', line 1065

def child_links
  @child_links
end

#display_nameString

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

Returns:

  • (String)


1051
1052
1053
# File 'generated/google/apis/spanner_v1/classes.rb', line 1051

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


1035
1036
1037
# File 'generated/google/apis/spanner_v1/classes.rb', line 1035

def execution_stats
  @execution_stats
end

#indexFixnum

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

Returns:

  • (Fixnum)


1046
1047
1048
# File 'generated/google/apis/spanner_v1/classes.rb', line 1046

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)


1060
1061
1062
# File 'generated/google/apis/spanner_v1/classes.rb', line 1060

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


1027
1028
1029
# File 'generated/google/apis/spanner_v1/classes.rb', line 1027

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



1041
1042
1043
# File 'generated/google/apis/spanner_v1/classes.rb', line 1041

def short_representation
  @short_representation
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1072
1073
1074
1075
1076
1077
1078
1079
1080
# File 'generated/google/apis/spanner_v1/classes.rb', line 1072

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