Skip to content

Query Execution Plan (QEP)

Steve Melville edited this page Dec 19, 2024 · 3 revisions

Summary

A Query Execution Plan (QEP) is represented as a tree of operators. Each operator performs a specific task (e.g., pattern matching, filtering, projection) and produces a result set that feeds into its parent operator.

Overview of Query Execution Plan

  1. Tree Structure:
  • The QEP is a tree where:
    • Leaf nodes represent data sources (e.g., Holon retrieval or RelationshipMap traversal).
    • Intermediate nodes perform operations (e.g., filtering, joins).
    • Root node represents the final output operator (e.g., RETURN in OpenCypher).
  1. Execution:
  • The query is executed via a post-order traversal of the tree:
    • Start at the leaves.
    • Compute intermediate results by combining results from child nodes.
    • Finish at the root to produce the final output.
  1. Operator Types:
  • Operators encapsulate logic for graph query operations such as pattern matching, projection, filtering, aggregation, and joins.

Operand Design

Operator Design

Clone this wiki locally