🖥️Data Model Screen

The Data Model screen serves as your guide to your organization's shared data model. This screen displays your organization's shared data model along with the integrated BI applications. This feature within our web application is more than a mere tool; it's a robust platform designed to simplify the comprehension of complex relationships and connections within your organization's data structures. The Data Model Screen stands as a comprehensive tool, empowering users to interact with and discover the intricacies of the underlying data structure intuitively.

This screen is composed of interconnected nodes, each representing key elements of your organization's data model, such as data sources, dbt models or Looker views. Within each node, users can explore associated components—like columns in models and dimensions in Looker views—providing a comprehensive understanding of data structures. This streamlined approach facilitates intuitive navigation and insightful analysis, empowering users to optimize their data architecture effectively.

Universal Table Location (UTL)

The Universal Table Location is the unique identifier for every node within the mapped data model. The UTL is used to map location of nodes within the data model, and their connections.

The UTL can be used to filter out the data model screen by a specific node, using the UTL filter, or it can be used to help diagnose connection mapping issues. In order to diagnose mapping issue between nodes view the compiled code, to see the UTL referenced in the SQL, and compare it to the parent node's UTL (from it's URL). If the two UTL do not match, contact customer support for assistance.

Navigation

The Data Model screen presents two distinct views: Table View and Graph View, both representing the same information. Nodes within your data model are displayed on this screen.

Filtering

The nodes on the data model screen can be filtered using the following criteria:

  • Type: A multi-select filter that filters nodes by data type, including data source, data model, view, explore, looks, tiles and dashboard.

  • Name: A multi-select text filter that covers the names of nodes.

  • Proposals: Filter nodes based on whether they have a change proposal or not (applicable for views, and looks).

  • Total views 7D: A single-select filter applicable specifically to Looks and Dashboards, based on their view count in the last 7 days.

  • Total views 30D: A single-select filter applicable specifically to Looks and Dashboards, based on their view count in the last 30 days.

  • Usage filter: A single-select applicable specifically to LookML Views, based on their usage (number of times queried) over the last 14 days.

  • First seen: A single-select filter based on the timeframe in which Euno has detected them.

  • Materialization: This multi-select filter applies to data model nodes, allowing users to select the desired type of materialization.

  • Tags: A multi-select filter to isolate dbt nodes associated with specific tags.

  • Meta: A multi-select filter to isolate dbt nodes associated with specific metadata.

  • dbt Project: A multi-select filter to isolate dbt nodes existing in a specific dbt project.

  • Database schema: A multi-select filter to isolate dbt nodes based on their database schema.

  • Database: A multi-select filter to isolate dbt nodes based on their database affiliation.

  • Looker project: A multi-select filter to isolate Looker nodes based on their Looker project.

  • Looker folder: A multi-select filter to isolate Looker nodes based on their Looker folder.

  • Looker model: A multi-select filter to isolate Looker nodes based on their Looker model.

  • Looker instance: A multi-select filter to isolate Looker nodes based on their Looker instance.

  • Source folder: A multi-select filter to isolate nodes based on their source path in the git repository of where the node is defined (applicable for dbt and Looker LookML nodes).

  • UTL - A text input filter for isolating a specific node, based on their UTL (Universal Table Location)

If multiple filters are applied simultaneously, the operator between the two filters is “AND”, indicating that both criteria must be met for a node to satisfy the filtered conditions.

The main difference between the Table and Graph view is that in the Graph view, users will not only see the relevant nodes based on the filters set, but also their upstream and downstream connections, providing users with the nodes and their broader context.

Table View

The table view is a table representation of the nodes. This table includes the following columns:

  • Data type: The type of node (e.g. dbt model, view, etc…)

  • Name: The name of the node

  • Description: The description of the node

  • Columns: Number of columns under the node

  • Dimensions: Number of dimensions under the node

  • Entities: Number of entities under the node

  • Related Metrics: Number of related metrics associated with the node

  • Custom Fields: Number of custom fields under the node

  • Proposals: If the node has a change proposals

Users can click on a specific row to view the node’s sidebar, which holds the contextual information for the node (e.g. dbt model), and their components (e.g. columns).

Graph View

This view allows users to delve deeper into their organization's shared data model by clicking and highlighting specific nodes, thereby empowering the user to better understand the structure of the node within the larger model. Once a node is clicked and highlighted, its downstream and upstream connections are also highlighted. Any node that isn’t directly connected with the selected model will be overlaid, ensuring that only information relevant to that node is displayed. This allows users to easily understand both upstream and downstream implications.

The Graph view groups nodes into four vertical swimlanes;

  1. Sources: This includes nodes that are dbt sources.

  2. Transformation: This includes nodes that are dbt models as well as orphan nodes - Orphan nodes refer to tables in your database that are referenced by a BI application but are not part of your dbt project, and therefore, we have limited information about these tables, other than their existence.

  3. App Modeling: This includes transformation-like nodes within the BI application (e.g., Views and Explores in Looker).

  4. Application: This includes nodes in the BI application that are related to visualizations (e.g., Looks, Tiles and Dashboards in Looker).

Any connection node that does not match the filter will be displayed with lower opacity, making it easy to distinguish between connection nodes and those that match the filters. Additionally, filtered nodes cannot be removed from the graph view unless they are filtered out.

Searching

Users can efficiently search for nodes and their components in the Graph view using the search bar located in the top right corner of the screen next to the view selector. The search functionality enables users to input free-text, instantly displaying a list of relevant nodes, and their components in the shared data model. The search dynamically filters through elements as the text expands, allowing for quick and effective exploration. Users can select a node, or a component from the list, which will highlight the node or component in the Lineage view, and open the sidebar for the node, or component.

Sidebar

In order to understand additional information about a specific model, users can view the schema by clicking on the sidebar icon found above the model once highlighted (see image below). This sidebar will provide user insight and information into the specific model. Users can also directly select a specific component (e.g. column, dimension, etc…) when the model is expanded, which will open the sidebar view with the information on the specific component. The sidebar feature also works with BI applications, and provides users with information on the connected BI element.

Open Source Button

At the top of the sidebar, beneath the node's description, there's a button to access its source. Clicking this button redirects the user to the node's respective source. Depending on the node type, users will be directed to different sources. For instance, Views, Explores, Looks, Tiles and Dashboards redirect to the organization's Looker account, while sources and models redirect to their dbt code repository.

View Code Button

By clicking on the code button (</>) situated next to the open source button, a window opens, revealing the node’s code (if available), offering an insightful view into the code that shapes the element. The popup window with the transformation code, includes a toggle which allows for toggling between the source and compiled code.

In addition to being available at the node level, certain components also provide access to their source code. Below is a list of nodes and the corresponding components supporting the 'View Code' button:

Nodes:

  • dbt Models

    • Source Code: Displays the compiled dbt code for the models.

    • Compiled Code: Shows the compiled dbt code for the models.

    • Semantic Code: If the dbt model includes a semantic representation, the semantic code tab will be available. This utilizes the dbt semantic layer, written in MetricFlow.

  • Views & Explores (LookML Files)

    • Source Code: Provides the LookML code for the views.

    • Euno Compiled Code: This is divided into two code blocks: one written in SQL, transpiling all dimensions and columns in the LookML into an SQL query, and the second, a semantic block, transpiling all measures into MetricFlow measures.

Components:

  • Measures & Related Metrics Under dbt Models

    • Source Code: Displays the MetricFlow code for the measure or related metric.

    • Compiled Code: Presents an SQL transpilation of the MetricFlow code, suitable for copying and execution in an SQL notebook.

  • Dimensions & Measures in Looker Under Views

    • Source Code: Provides the LookML code for the specific dimension or measure in LookML.

  • Custom Fields in Looker Under Looks

    • Source Code: Displays the Looker expression used to create the calculated field.

  • Custom Fields in Looker Under Tiles

    • Source Code: Displays the Looker expression used to create the calculated field.

In the code pop-up window, there's a 'Copy' button to quickly copy the displayed code. For dbt semantic layer elements like measures and metrics, users can copy the transpiled SQL code to run in a notebook, producing the same results as the shared data model.

Views

For specific nodes (Looks and Dashboards), we crawl your BI tool to gather impression data. This process enriches the node with valuable context, helping to provide context as to the importance and whether the associated report is actively utilized. Through the application of filters like "Total Views 7D" or "Total Views 30D," users can refine the displayed graph to discern which nodes within your application layer are receiving attention.

Usage Insights

For specific nodes and fields (LookML Views, and the measures and dimensions underneath them), we harness data derived from query log within your BI tool to provide usage insights. This approach offers valuable information on how frequently the node or field has been utilized in queries over the last 14 days, offering key insights into its relevance and usage patterns within recent activity. Additionally, users can explore further details by expanding this section to view the top 5 queried sources, revealing which reports triggered the queries, as well as identifying the top 5 users who have queried this information. To streamline analysis, users can apply the filter "Looker usage 14D" to refine the displayed nodes, enabling focused exploration of recent usage trends within their BI environment. This comprehensive breakdown empowers users to gain deeper insights into the utilization of nodes and fields within their BI ecosystem.

Last updated