> For the complete documentation index, see [llms.txt](https://docs.ovaledge.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ovaledge.com/release8.1/connectors/connector-repositories/reporting-tool/microstrategy/microstrategy-lineage.md).

# MicroStrategy - Lineage

This article outlines lineage coverage, configuration requirements, supported components, transformation support, supported use cases, partial or limited coverage, unsupported scenarios, and the current functional status of lineage extraction in MicroStrategy.

The MicroStrategy connector provides automated lineage extraction across Reports, Cubes, Dashboards, Semantic Tables, and physical database objects. It provides end-to-end visibility into data flow from physical source tables through semantic layers and Cubes to Reports and Visualizations. The connector supports column-level lineage and multi-hop lineage across semantic and reporting layers.

## Lineage Configuration Requirements

Successful lineage extraction depends on valid SQL dialect configuration, access to physical database metadata, available MicroStrategy metadata, and the required lineage processing configuration. The following requirements apply to MicroStrategy lineage extraction.

### Configuration Requirements Table

<table data-search="false"><thead><tr><th width="220">Configuration</th><th>Required Detail</th></tr></thead><tbody><tr><td>SQL Dialects</td><td>SQL dialects must be configured through <code>supportingDialects</code> in <code>CrawlerOption</code> for SQL parsing.</td></tr><tr><td>Database Catalog Access</td><td>Database catalog access is required to map physical tables and columns to MicroStrategy objects.</td></tr><tr><td>MicroStrategy Metadata</td><td>Valid JSON <code>SourceCode</code> metadata must be available for Reports and Cubes.</td></tr><tr><td>Object ID Decryption</td><td>Object ID decryption support is required for lineage processing.</td></tr><tr><td>Query Length</td><td><code>MAX_QUERY_LENGTH</code> may require tuning to process large Report queries.</td></tr><tr><td>Pre-crawled Metadata</td><td>Physical tables, columns, charts, and datasets must be crawled before lineage is built so that lineage relationships can be established.</td></tr></tbody></table>

{% hint style="info" %}
Missing physical database metadata, unavailable JSON SourceCode metadata, incomplete crawled objects, unsuccessful object ID processing, or Report queries that exceed the configured MAX\_QUERY\_LENGTH may result in incomplete lineage generation.
{% endhint %}

## Lineage Components

The following table identifies the MicroStrategy components and lineage features supported by the connector.

<table data-search="false"><thead><tr><th>Component / Feature</th><th align="center">Supported</th></tr></thead><tbody><tr><td>Reports</td><td align="center">✅</td></tr><tr><td>Cubes</td><td align="center">✅</td></tr><tr><td>Dashboards</td><td align="center">✅</td></tr><tr><td>Visualizations</td><td align="center">✅</td></tr><tr><td>Semantic Tables</td><td align="center">✅</td></tr><tr><td>Physical Tables</td><td align="center">✅</td></tr><tr><td>Physical Columns</td><td align="center">✅</td></tr><tr><td>Report Columns</td><td align="center">✅</td></tr><tr><td>Metrics</td><td align="center">⚠️</td></tr><tr><td>Attributes</td><td align="center">⚠️</td></tr><tr><td>Derived Metrics</td><td align="center">⚠️</td></tr><tr><td>SQL Queries</td><td align="center">✅</td></tr><tr><td>Alias Mapping</td><td align="center">⚠️</td></tr><tr><td>Dynamic SQL</td><td align="center">⚠️</td></tr><tr><td>Multi-hop Lineage</td><td align="center">✅</td></tr><tr><td>Runtime Execution Lineage</td><td align="center">❌</td></tr></tbody></table>

{% hint style="info" %}
The ⚠️ icon indicates partially supported functionality where lineage coverage depends on metadata availability, SQL parsing capability, query complexity, or the specific MicroStrategy implementation.
{% endhint %}

## Column Creation Support

This section outlines lineage support for columns created through SQL expressions, semantic-to-physical mappings, aliases, formulas, aggregations, temporary objects, and logical columns.

### Column Creation from Lineage

<table data-search="false"><thead><tr><th>Transformation Type</th><th align="center">Supported</th></tr></thead><tbody><tr><td>SQL-derived Columns</td><td align="center">✅</td></tr><tr><td>Semantic-to-Physical Column Mapping</td><td align="center">✅</td></tr><tr><td>Renamed/Alias Columns</td><td align="center">⚠️</td></tr><tr><td>Derived Metrics/Formulas</td><td align="center">⚠️</td></tr><tr><td>Aggregate Columns</td><td align="center">⚠️</td></tr><tr><td>Temp Columns</td><td align="center">✅</td></tr><tr><td>Logical Columns</td><td align="center">✅</td></tr><tr><td>Runtime-generated Columns</td><td align="center">❌</td></tr></tbody></table>

{% hint style="info" %}
The ⚠️ icon indicates partial column-level lineage coverage. Resolution depends on SQL parser capability, formula complexity, alias structure, and the availability of required metadata.
{% endhint %}

## Supported Use Cases

The MicroStrategy connector supports lineage extraction across physical database objects, semantic layers, Reports, Cubes, Dashboards, and Visualizations.

### Supported Lineage Scenarios

<table data-search="false"><thead><tr><th width="264">Supported Scenario</th><th>Details</th></tr></thead><tbody><tr><td>Physical Table → Semantic Table Lineage</td><td>Lineage from physical database tables to corresponding MicroStrategy Semantic Tables.</td></tr><tr><td>Semantic Table → Report Lineage</td><td>Lineage from Semantic Tables to Reports that reference the corresponding semantic objects.</td></tr><tr><td>Cube → Report → Dashboard Lineage</td><td>Multi-hop lineage across Cubes, Reports, and Dashboards.</td></tr><tr><td>Report → Visualization Lineage</td><td>Lineage between MicroStrategy Reports and associated Visualizations.</td></tr><tr><td>SQL-based Report Lineage</td><td>Lineage extraction from SQL-based Reports using SQL parsing and supported alias mapping.</td></tr><tr><td>Multi-source Report Lineage</td><td>Lineage across Reports that reference multiple source systems or physical sources.</td></tr><tr><td>Sub-report / Chart-to-Chart Lineage</td><td>Lineage between supported sub-reports, charts, and related reporting objects.</td></tr><tr><td>Logical-to-Physical Column Mapping</td><td>Column-level lineage between logical or semantic columns and physical database columns.</td></tr><tr><td>Column-level Lineage for Reports and Cubes</td><td>Column-level lineage across supported Reports, Cubes, and source objects.</td></tr><tr><td>Multi-hop Lineage</td><td>End-to-end lineage across physical, semantic, analytical, and reporting layers.</td></tr><tr><td>SQL Query Lineage</td><td>Lineage from source tables and columns through available SQL query definitions.</td></tr></tbody></table>

{% hint style="info" %}
Lineage extraction depends on crawled physical database metadata, available MicroStrategy JSON SourceCode, SQL parsing, object resolution, and the ability to establish relationships across semantic and reporting layers.
{% endhint %}

## Partial or Limited Coverage

Certain MicroStrategy scenarios provide partial lineage coverage because formula complexity, dynamic query generation, alias structures, metadata availability, or query size can limit complete lineage resolution.

### Scenarios

<table data-search="false"><thead><tr><th width="217">Scenario</th><th width="321">Limitation Description</th><th width="318">Recommendation / Workaround</th></tr></thead><tbody><tr><td>Calculated Metrics</td><td>Complex metric formulas may not fully resolve into individual source-to-target lineage relationships.</td><td>Validate complex metric dependencies manually where detailed transformation lineage is required.</td></tr><tr><td>Derived Columns</td><td>Formula parsing relies on text matching and may not resolve complex derived-column logic completely.</td><td>Validate derived-column dependencies manually where required.</td></tr><tr><td>Aggregations and Window Functions</td><td>Support depends on the capabilities of the configured SQL parser and the SQL structure.</td><td>Validate aggregation and window-function lineage manually for complex queries.</td></tr><tr><td>Dynamic SQL</td><td>Runtime-generated queries may not be resolved when the required SQL is not available in metadata.</td><td>Use statically available SQL definitions where possible and validate dynamic dependencies separately.</td></tr><tr><td>Alias Resolution</td><td>Complex aliases and aliases containing special characters may not resolve correctly.</td><td>Use clear and consistent aliases where possible and validate affected column mappings manually.</td></tr><tr><td>Non-SQL Objects</td><td>Metadata-only lineage may be available when complete SQL definitions are not available.</td><td>Validate source dependencies separately when complete SQL-level lineage is required.</td></tr><tr><td>Large Queries</td><td>Reports that exceed the configured <code>MAX_QUERY_LENGTH</code> may be skipped during lineage processing.</td><td>Review and tune <code>MAX_QUERY_LENGTH</code> where required for large Report queries.</td></tr><tr><td>AI-based Fuzzy Matching</td><td>Fuzzy matching functionality is present in the code but is currently disabled.</td><td>Use exact or supported matching methods and validate unresolved column relationships manually.</td></tr><tr><td>Missing Metadata</td><td>Temporary objects created with incomplete metadata may result in partial lineage.</td><td>Ensure relevant metadata is available and validate temporary-object lineage where required.</td></tr></tbody></table>

{% hint style="info" %}
Complex metric formulas, derived columns, aggregation logic, dynamic SQL, complex aliases, large queries, disabled fuzzy matching, and incomplete metadata may reduce lineage completeness and column-level accuracy.
{% endhint %}

## Unsupported Scenarios

The connector does not support complete lineage extraction for runtime-generated SQL, execution-level lineage, advanced formula decomposition, unresolved physical sources, and certain metadata processing scenarios.

### Unsupported Lineage

<table data-search="false"><thead><tr><th width="208">Not Supported</th><th width="300">Description</th><th width="267">Recommendation / Workaround</th></tr></thead><tbody><tr><td>Runtime-generated SQL</td><td>SQL generated at runtime is not available for lineage extraction when the required SQL is not present in metadata.</td><td>Use statically available SQL definitions where possible and validate runtime dependencies separately.</td></tr><tr><td>Advanced Formula Decomposition</td><td>Complex calculated formulas cannot be fully decomposed into individual source-column lineage relationships.</td><td>Validate complex formula dependencies manually where expression-level lineage is required.</td></tr><tr><td>Execution / Runtime Lineage</td><td>Lineage based on actual runtime execution is not supported.</td><td>Use metadata-based lineage and validate runtime data flows separately where required.</td></tr><tr><td>Automatic Fuzzy Matching</td><td>Automatic fuzzy matching for unresolved columns is currently disabled.</td><td>Use supported exact or normalized matching and validate unresolved relationships manually.</td></tr><tr><td>Uncrawled Physical Databases / Tables</td><td>Lineage cannot be established for physical databases or tables that are not available in the crawled catalog.</td><td>Crawl the required physical databases and tables before building lineage.</td></tr><tr><td>Complete Analytical Engine SQL Context</td><td>Complete preservation of analytical engine SQL context is not supported for all lineage scenarios.</td><td>Validate analytical-engine-specific transformations separately where required.</td></tr><tr><td>Automatic Encrypted Metadata Failure Handling</td><td>Automatic handling of encrypted metadata failures is not supported.</td><td>Resolve metadata access or decryption issues before lineage extraction.</td></tr><tr><td>Runtime-generated Columns</td><td>Columns created dynamically at runtime are not supported for lineage creation.</td><td>Validate runtime-generated column dependencies separately where required.</td></tr></tbody></table>

{% hint style="info" %}
Unsupported scenarios do not generate complete lineage and may result in missing or disconnected lineage relationships within lineage visualization.
{% endhint %}

## Current Functional Status

This section outlines the current lineage capabilities and coverage of the MicroStrategy connector.

<table data-search="false"><thead><tr><th width="200">Status Area</th><th>Details</th></tr></thead><tbody><tr><td>Overall Coverage</td><td>Partial coverage across MicroStrategy Reports, Cubes, Dashboards, Semantic Tables, physical database objects, and supported SQL-based lineage scenarios.</td></tr><tr><td>Lineage Depth</td><td>Table-level, semantic-level, report-level, visualization-level, and column-level lineage across supported MicroStrategy objects.</td></tr><tr><td>Supported Inputs</td><td>Reports, Cubes, Dashboards, Visualizations, Semantic Tables, Physical Tables, Physical Columns, Report Columns, SQL Queries, and supported metadata objects.</td></tr><tr><td>Functional Scope</td><td>End-to-end lineage from physical source tables through semantic layers and Cubes to Reports, Dashboards, and Visualizations, including multi-hop and column-level lineage.</td></tr><tr><td>Transformation Support</td><td>SQL-derived columns, semantic-to-physical column mappings, temporary columns, logical columns, and supported SQL transformations are handled.</td></tr><tr><td>Limitation Areas</td><td>Calculated Metrics, Derived Columns, Aggregations, Window Functions, Dynamic SQL, Alias Resolution, Non-SQL Objects, large queries, and incomplete metadata have partial coverage.</td></tr><tr><td>Unsupported Areas</td><td>Runtime execution lineage, advanced formula decomposition, automatic fuzzy matching, lineage for uncrawled physical sources, complete analytical engine SQL context preservation, and runtime-generated columns are not supported.</td></tr><tr><td>Resulting Output</td><td>Reliable lineage across core MicroStrategy reporting, semantic, and physical database scenarios, with partial coverage for complex formulas, dynamic SQL, aliases, and advanced metadata interpretation.</td></tr></tbody></table>

{% hint style="info" %}
The MicroStrategy connector provides reliable lineage across Reports, Cubes, Dashboards, Semantic Tables, physical database objects, SQL queries, and supported column-level and multi-hop lineage scenarios. SQL-derived columns, semantic-to-physical mappings, temporary columns, logical columns, and supported SQL transformations are handled. Complex formulas, derived metrics, aggregations, dynamic SQL, complex alias mapping, large queries, incomplete metadata, and advanced analytical-engine SQL interpretation have partial or unsupported coverage. Runtime execution lineage and runtime-generated columns are not supported and may require separate validation or manual lineage supplementation.
{% endhint %}

***

Copyright © 2026, OvalEdge LLC, Peachtree Corners GA USA


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ovaledge.com/release8.1/connectors/connector-repositories/reporting-tool/microstrategy/microstrategy-lineage.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
