Skip to main content

Setting Up Snowflake Semantic Views

Snowflake Semantic Views as a business‑focused abstraction layer layered on top of physical tables. They let you define logical tables like customers, orders, or suppliers that encapsulate consistent definitions for facts, metrics, and dimensions. These are the building blocks for Business Intelligence:

Snowflake Semantic Views
  • Facts are the granular, row‑level numeric details (like “quantity sold”) used to build up metrics.
  • Metrics are aggregated business indicators, such as total revenue or average order value.
  • Dimensions add context—attributes like date, product category, or region—used to slice metrics meaningfully.

How Snowflake Semantic Views Work

Semantic Views can be built via:

  • SQL commands like CREATE SEMANTIC VIEW, defining logical tables, their relationships, and the facts/dimensions/metrics.
  • A wizard in Snowsight – The Snowflake wizard guides you through selecting tables and columns, defining relationships, and even adding sample queries or synonyms to help AI interpretation.

How to Query Snowflake Semantic Views

To query, you use the specialized SEMANTIC_VIEW construct in the FROM clause, specifying at least one of METRICS, DIMENSIONS, or FACTS:

SELECT * FROM SEMANTIC_VIEW(
  your_view
  DIMENSIONS some.dimension
  METRICS some.metric
);

How to use Snowflake Semantic Views to Work with MCP & AI Workflows

The Model Context Protocol (MCP) is an open standard (launched by Anthropic in 2024) that enables LLMs to interact with external systems via tools. Snowflake provides an MCP Server that exposes Cortex features, including Cortex Analyst. The MCP Server can be configured using simple YAML files and used with clients like Claude Desktop, fast-agent, or Cursor.