Bifalgorithm post
So now that we have a complete AST, just like a compiler would turn its AST into machine code that the CPU can run, we have to turn our AST into something that our storage engine virtual machine can run. So that's the query plan, which you saw earlier in the demo. The query plan is yet another tree, man, computer science pretty much boils down to pointers and trees. But anyway, the query plan tree represents all the steps needed to compute the results of a query. So a basic example would be select a couple columns from a table where some condition.
So now that we have a complete AST, just like a compiler would turn its AST into machine code that the CPU can run, we have to turn our AST into something that…
Ideas in this flowchart
- AST to Query Plan
- AST Compilation
- AST to Machine Code
- Storage Engine VM Execution
- Query Plan
- Query Plan Tree
- Steps to Compute Query Results
- Example: Select Columns with Condition