– The key thing to note about the report execution process in MicroStrategy involves 3 engines. They are as follows:
– SQL Engine
– Query Engine
– Analytical Engine
SQL Engine :
SQL Engine is responsible for generating the optimized SQL and producing the result sets that can be resolved by pure SQL alone. The SQL Engine manages the Query and Analytical engine. This is considered to be the Brain behind the entire MicroStrategy engine operation. It generates SQL based on the information stored in the metadata. It also looks into the VLDB settings stored in the metadata before generating the SQL. Most cases, the SQL engine itself resolves the calculations involved for the report. At some point of time – it might need to perform complex calculations / calculations that are beyond pure SQL will be handled by Analytical Engine.
Query Engine :
Query Engine is responsible for executing queries against the DWH. Acts as a messenger to pass the SQL that is generated by SQL Engine to DWH for processing. If a report can be resolved using pure SQL, then the query engine just interacts with SQL engine alone. When there are complicated reports, the query engine need to interact with Analytical engine to complete the SQL engine logic.
Analytical Engine :
Analytical engine is responsible for advanced analytical processing, cross tabbing reports and multidimensional storage. Depending on the complexity of the report – the analytical engine is invoked in all the stages of report execution process ( will discuss about report execution process in detail in coming posts )
Hope it helps everyone!!!
Have a Good Day!!