Skip to main content

Topics

In Omni, a topic is a curated dataset that organizes and structures data around a specific area of interest or analysis.

Topics can help you improve:

  • Self-service. Creating refined subsets of data means users can query and explore without needing to understand the entire data model.
  • Reusability. Once defined, topics can be re-used in any analysis that utilizes the model containing the topic.
  • Consistency. Topics ensure that analyses across different users or teams are built using the same data definitions and logic.

What's a topic?

Topics are defined within models and linked to a specific database connection. They specify a primary base table along with any associated tables that can be joined for analysis.

Creating & developing topics

Omni offers two ways to create and develop topics: visually (in workbooks) or using code (in the model IDE). You can use one or both of these methods to develop your topics.

Workbooks

There are two ways to create topics in workbooks:

  • Starting with an existing view. In a query tab, select the All view & fields option in the field browser. Locate the view you want to use, right click, and select Create topic.

  • From a CSV or XLSX upload. This method requires enabling data input tables (CSV uploads). When uploading the file, users with Querier permissions or higher will see a Create topic checkbox.

From here, you can use the visual editor to add metadata, joins, fields, and other settings. Refer to the Creating topics in Omni guide for more information and a step-by-step example.

To open the topic editor for an existing topic, open the topic in a workbook and click Model > Edit topic.

Note: Some settings, such as those controlling cache policies, access grants, and default filters, can only be added using the model IDE.

Model IDE

Using the model IDE allows you to use code to modify a topic's underlying file, which is where the configuration for the topic is stored.

To get started developing topics in the IDE, we recommend checking out:

Using topics in analyses

To use a topic in an analysis, use the topic switcher in the workbook's field browser (Fields & topics). A list of tables included in the topic will populate the panel, which you can then use in your analysis.

Examples

Topic with specified fields
base_view: order_items
fields: [all_views.*, -inventory_items.*, -tag:pii, -users.id]
label: Transactional
joins:
inventory_items:
products:
distribution_centers: {}
users: {}
Topic with access grants
joins: {}
required_access_grants: [marketing|sales]

cache_policy: policy_1
Topic with default filters
california_order_items:
base_view: order_items
default_filters:
users.state:
is: California
joins:
inventory_items:
products:
distribution_centers: {}
users: {}