Modeling in Azure Analysis Services

This section covers the principles and practices for designing and implementing robust data models within Azure Analysis Services (AAS). Effective modeling is crucial for delivering high-performance analytical solutions that meet business requirements.

Tabular Models

Tabular models represent data in a relational structure, similar to a relational database, but optimized for analytical querying. They use an in-memory column-based engine (VertiPaq) for fast query performance.

Key concepts include:

Recommendation: For most new projects and solutions, tabular models are the recommended approach due to their ease of use, performance, and integration with tools like Power BI and Excel.

Creating Tabular Models

You can create and manage tabular models using tools such as:

-- Example DAX for a simple SUM measure
TotalSales = SUM(Sales[SalesAmount])

Dimensional Models (Multidimensional)

Dimensional models, also known as OLAP cubes, organize data into facts and dimensions. They are built using a multidimensional OLAP engine.

Key components:

Legacy and Complex Scenarios: While still supported, dimensional models are generally considered more complex to manage and are often used for existing solutions or highly specialized analytical requirements where their specific features are advantageous.

Creating Dimensional Models

Dimensional models are typically developed using SQL Server Data Tools (SSDT) for Visual Studio.

Design Considerations

A well-designed model is fundamental to performance and usability. Consider the following:

Performance Tuning

Optimizing your AAS model for performance is key. Techniques include:

Model Type Primary Tool Engine Typical Use Case
Tabular SSDT, VS Code VertiPaq (In-Memory) Modern BI, Power BI integration, ease of development
Dimensional (Multidimensional) SSDT MOLAP Existing solutions, complex hierarchies, specialized OLAP features

For detailed guidance on specific modeling techniques and DAX functions, refer to the official Microsoft DAX documentation and Tabular Editor documentation.