Class Reference
IRIS for UNIX 2019.2
InterSystems: The power behind what matters   
Documentation  Search
  [ENSLIB] >  [%DeepSee] >  [Diagnostic] >  [MDXUtils]
Private  Storage   

class %DeepSee.Diagnostic.MDXUtils extends %XML.Adaptor, %ZEN.DataModel.Adaptor

This class provides an API for analyzing MDX queries and generating report data. This class is intended for diagnostic purposes only. There is no guarantee made about either the behavior or future operation of this class. Production applications should not make direct use of these APIs.

Files generated are as follows:
- A general statistics report,
- PERFMON samples from running the query both uncached and cached,
- An export of the cube class and fact table. If this cube is a member of a relationship group, all related cube classes will also be exported.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
12 21


Summary

Properties
%id %seriesCount %seriesNames %source
BaseDir CubeGroup Query ResultsCached
ResultsUncached StartTimes TrackingOn UseCache
Verbose

Methods
%AddToSaveSet %ClassIsLatestVersion %ClassName %ClearHistory
%ConstructClone %CreateModelInstance %DeleteModel %DispatchClassMethod
%DispatchGetModified %DispatchMethod %DispatchSetModified %DispatchSetMultidimProperty
%Extends %GetJSValidationCode %GetParameter %GetPropertyInfo
%InvokeAction %IsA %IsModified %IsReadOnly
%New %NormalizeObject %ObjectModified %OnCopyDataFromModel
%OnCopyDataToModel %OnDeleteModel %OnDeleteSource %OnGetPropertyInfo
%OnInvokeAction %OnLoadModel %OnNewSource %OnOpenSource
%OnSaveSource %OnStoreModel %OnSubmit %OpenModel
%OriginalNamespace %PackageName %RemoveFromSaveSet %Run
%SaveModel %SerializeObject %SetModified %SubmitHandler
%ValidateObject Version XMLDTD XMLExport
XMLExportToStream XMLExportToString XMLNew XMLSchema
XMLSchemaNamespace XMLSchemaType


Properties

• property BaseDir as %String;
Base directory for analysis output; defaults to install directory.
• property CubeGroup as %String [ MultiDimensional ];
This property contains the ordered list of cubes that have some logical relation to the cube currently being queried. The list is ordered from least dependent to most independent.
• property Query as %DeepSee.Datatype.string;
MDX Query being analyzed.
• property ResultsCached as %DeepSee.ResultSet;
DeepSee ResultSet from cached query preparartion (contains statistics).
• property ResultsUncached as %DeepSee.ResultSet;
DeepSee ResultSet from uncached query preparation (contains statistics).
• property StartTimes as array of %Numeric;
Holds the start times of the query execution and the start of %Run
• property TrackingOn as %Boolean [ InitialExpression = 0 ];
Used to trigger communication to the UI via the ^DeepSee.MDXUtils global
• property UseCache as %Boolean;
Use cache for statistics - set by %Prep method.
• property Verbose as %Boolean [ InitialExpression = 0 ];
Controls whether or not status updates should be output to the current device.

Methods

• classmethod %ClearHistory() as %Status
Clear the execution history from the logging global. This will not affect any of the diagnostic reports.
• classmethod %Run(pMDX As %String = "", pBaseDir As %String = "", pVerbose As %Boolean = 0, ByRef pParms="", Output pOutFile="") as %Status
This method is used for analysis of an MDX query. This runs the query two times; once uncached and once cached. During each of these a PERFMON report will be generated and saved to the destination folder. This utility will also collect and save general query statistics, as well as export the Cube and Fact table definitions.
pMDX - The MDX query to be analyzed
pBaseDir - The base directory for storing the output folder. This is set to the instance installation directory by default.
pVerbose - If true, the analysis will print the long-form output to the current device. Setting pVerbose = 0 will run the analysis completely silently.

There are other options that may be turned on via the pParms array:
pParms("CubeStatsOn") = 1
pParms("TimePERFMON") = 15
pParms("SystemPerformanceOn") = 0
pParms("SystemPerformanceProfile") = ""
pParms("UnattendedOn") = 1
"On" in flag name denotes it is treated as a boolean, "Time" denotes it accepts a positive integer argument, in seconds.
• classmethod Version() as %Status
Prints the current version to the screen


Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.