39
Understanding Functions in MicroStrategy
MicroStrategy Functions Reference
1
46
How MicroStrategy processes functions
© 2011 MicroStrategy, Inc.
How MicroStrategy processes functions
MicroStrategy Intelligence Server has an engine component, which
comprises the following:
• SQL Engine: generates the SQL and associated logic for functions
performed by the database, and communicates with the Analytical
Engine as necessary.
• Query Engine: sends the SQL generated by the SQL Engine to the data
warehouse for execution.
• Analytical Engine: extends the capability of the system beyond what the
RDBMS provides. For example, it performs complex calculations on a
result set returned from the data warehouse, such as statistical and
financial functions, subtotal calculations on the result set, metric
calculations that are not or cannot be performed using SQL, such as
complex functions, and so on.
Types of function processing
Functions supported by the Intelligence Server are of three types:
• Those that can be processed only by the Analytical Engine, such as
finance functions.
If the Analytical Engine does not support a given function, a compound
metric containing the function cannot be smart metric enabled. This is
because smart metrics change the default order of metric evaluation and
only the Analytical Engine can support such a change.
• Those that can be processed only by the database, such as date-and-time
functions.
If a database platform does not support a given function that can only be
processed by the database, that function cannot be calculated. For a list of
functions supported for each certified database type, see Appendix A,
MicroStrategy and Database Support for Functions.
• Those that can be processed either by the Analytical Engine or by the
database.
If the database can perform the calculation, the SQL Engine sends the
instructions to the database; otherwise, the Analytical Engine processes
the task.