Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

QueryEngine

https://github.com/thulab/iotdb/files/6087969/query-engine.pdf

Design ideas

The query engine is responsible for parsing all user commands, generating plans, delivering them to the corresponding executors, and returning result sets.

Related classes

  • org.apache.iotdb.db.service.thrift.impl.TSServiceImpl.java

    IoTDB server-side RPC implementation, which directly interacts with the client.

  • org.apache.iotdb.db.qp.Planner

    Parse SQL, generate logical plans, optimize logical plans, and generate physical plans.

  • org.apache.iotdb.db.qp.executor.PlanExecutor

    Distribute the physical plan to the corresponding actuators, including the following four specific actuators.

    • MManager: Metadata operations

    • StorageEngine: Data write

    • QueryRouter: Data query

    • LocalFileAuthorizer: Permission operation

  • org.apache.iotdb.db.query.dataset.*

    The batch result set is returned to the client and contains part of the query logic.

Query process

  • SQL parsing

  • Generate logical plans

  • Generate physical plans

  • Constructing a result set generator

  • Returning result sets in batches

Related documents