In this article

What is Azure Analysis Services?

In this article

Azure Analysis Services is a fully managed platform as a service (PaaS) that provides enterprise-grade data models in the cloud. Use advanced mashup and modeling features to combine data from multiple data sources, define metrics, and secure your data in a single, trusted tabular semantic data model. The data model provides an easier and faster way for users to browse massive amounts of data for ad hoc data analysis.

Get up and running quickly

In Azure portal, you can create a server within minutes. And with Azure Resource Manager templates and PowerShell, you can create servers using a declarative template. With a single template, you can deploy server resources along with other Azure components such as storage accounts and Azure Functions.

Video: Check out Automating deployment to learn more about how you can use Azure Automation to speed server creation.

Azure Analysis Services integrates with many Azure services enabling you to build sophisticated analytics solutions. Integration with Azure Active Directory provides secure, role-based access to your critical data. Integrate with Azure Data Factory pipelines by including an activity that loads data into the model. Azure Automation and Azure Functions can be used for lightweight orchestration of models using custom code.

The right tier when you need it

Azure Analysis Services is available in Developer, Basic, and Standard tiers. Within each tier, plan costs vary according to processing power, QPUs, and memory size. When you create a server, you select a plan within a tier. You can change plans up or down within the same tier, or upgrade to a higher tier, but you can't downgrade from a higher tier to a lower tier.

Developer tier

This tier is recommended for evaluation, development, and test scenarios. A single plan includes the same functionality of the standard tier, but is limited in processing power, QPUs, and memory size. Query replica scale out is not available for this tier. This tier does not offer an SLA.

Plan

QPUs

Memory (GB)

D1

20

3

Basic tier

The tier is recommended for production solutions with smaller tabular models, limited user concurrency, and simple data refresh requirements. Query replica scale out is not available for this tier. Perspectives, multiple partitions, and DirectQuery tabular model features are not supported in this tier.

Plan

QPUs

Memory (GB)

B1

40

10

B2

80

20

Standard tier

This tier is for mission-critical production applications that require elastic user-concurrency, and have rapidly growing data models. It supports advanced data refresh for near real-time data model updates, and supports all tabular modeling features.

Plan

QPUs

Memory (GB)

S0

40

10

S1

100

25

S2

200

50

S4

400

100

S8*

320

200

S9*

640

400

* Not available in all regions.

Availability by region

Azure Analysis Services is supported in regions throughout the world. Supported plans and query replica availability depend on the region you choose. Plan and query replica availability can change depending on need and available resources for each region.

Americas

Region

Supported plans

Query replicas (Standard plans only)

Brazil South

B1, B2, S0, S1, S2, S4, D1

1

Canada Central

B1, B2, S0, S1, S2, S4, D1

1

East US

B1, B2, S0, S1, S2, S4, D1

1

East US 2

B1, B2, S0, S1, S2, S4, D1

7

East US 2

S8, S9

1

North Central US

B1, B2, S0, S1, S2, S4, D1

1

Central US

B1, B2, S0, S1, S2, S4, D1

1

South Central US

B1, B2, S0, S1, S2, S4, D1

1

West Central US

B1, B2, S0, S1, S2, S4, D1

3

West US

B1, B2, S0, S1, S2, S4, D1

7

West US

S8, S9

2

West US2

B1, B2, S0, S1, S2, S4, D1

3

West US2

S8, S9

1

Europe

Region

Supported plans

Query replicas (Standard plans only)

North Europe

B1, B2, S0, S1, S2, S4, D1

7

UK South

B1, B2, S0, S1, S2, S4, D1

1

West Europe

B1, B2, S0, S1, S2, S4, D1

7

West Europe

S8, S9

1

Asia Pacific

Region

Supported plans

Query replicas (Standard plans only)

Australia East

B1, B2, S0, S1, S2, S4

3

Australia East

S8, S9

1

Australia Southeast

B1, B2, S0, S1, S2, S4, D1

1

Japan East

B1, B2, S0, S1, S2, S4, D1

1

Southeast Asia

B1, B2, S0, S1, S2, S4, S8, S9, D1

1

West India

B1, B2, S0, S1, S2, S4, D1

1

Scale to your needs

Scale up\down, pause, and resume

Go up, down, or pause your server. Use the Azure portal or have total control on-the-fly by using PowerShell. You only pay for what you use.

Scale out resources for fast query responses

With scale out, client queries are distributed among multiple query replicas in a query pool. Query replicas have synchronized copies of your tabular models. By spreading the query workload, response times during high query workloads can be reduced. Model processing operations can be separated from the query pool, ensuring client queries are not adversely affected by processing operations.

You can create a query pool with up to seven additional query replicas (eight total, including your server). The number of query replicas you can have in your pool depend on your chosen plan and region. Query replicas cannot be spread outside your server's region. Query replicas are billed at the same rate as your server.

Just like with changing tiers, you can scale out query replicas according to your needs. Configure scale out in the portal or by using REST APIs. To learn more, see Azure Analysis Services scale out.

Pricing

Total cost depends on a number of factors; for example, your chosen region, tier, query replicas, and pause/resume. Use the Azure Analysis Services Pricing calculator to determine typical pricing for your region. This tool calculates pricing for a single-server instance for a single region. Keep in mind, query replicas are billed at the same rate as the server.

Tabular models in both in-memory and DirectQuery modes are supported. In-memory mode (default) tabular models support multiple data sources. Because model data is highly compressed and cached in-memory, this mode provides the fastest query response over large amounts of data. It also provides the greatest flexibility for complex datasets and queries. Partitioning enables incremental loads, increases parallelization, and reduces memory consumption. Other advanced data modeling features like calculated tables, and all DAX functions are supported. In-memory models must be refreshed (processed) to update cached data from data sources. With Azure service principal support, unattended refresh operations using PowerShell, TOM, TMSL and REST offer flexibility in making sure your model data is always up to date.

At the server level, Analysis Services provides firewall, Azure authentication, server administrator roles, and Server-Side Encryption. At the data model level, user roles, row-level, and object-level security ensure your data is safe and gets seen by only those users who are meant to see it.

Firewall

Azure Analysis Services Firewall blocks all client connections other than those IP addresses specified in rules. By default, firewall protection is not enabled for new servers. It's recommended firewall protection is enabled and rules are configured as part of a server provisioning script or in the portal immediately after the server is created. Configure rules specifying allowed IP addresses by individual client IPs or by range. Power BI (service) connections can also be allowed or blocked. Configure firewall and rules in the portal or by using PowerShell. To learn more, see Configure a server firewall.

Authentication

User authentication is handled by Azure Active Directory (AAD). When logging in, users use an organization account identity with role-based access to the database. User identities must be members of the default Azure Active Directory for the subscription that the server is in. To learn more, see Authentication and user permissions.

Data security

Azure Analysis Services uses Azure Blob storage to persist storage and metadata for Analysis Services databases. Data files within Blob are encrypted using Azure Blob Server Side Encryption (SSE). When using Direct Query mode, only metadata is stored. The actual data is accessed through encrypted protocol from the data source at query time.

Secure access to data sources on-premises in your organization is achieved by installing and configuring an On-premises data gateway. Gateways provide access to data for both DirectQuery and in-memory modes.

Roles

Analysis Services uses role-based authorization that grants access to server and model database operations, objects, and data. All users who access a server or database do so with their Azure AD user account within an assigned role. The server administrator role is at the server resource level. By default, the account used when creating a server is automatically included in the Server Admins role. Additional user and group accounts are added by using the portal, SSMS, or PowerShell.

Non-administrative end users who query data are granted access through database roles. A database role is created as a separate object in the database, and applies only to the database in which that role is created. Database roles are defined by (database) Administrator, Read, and Read and Process permissions. User and group accounts are added by using SSMS or PowerShell.

Row-level security

Tabular models at all compatibility levels support row-level security. Row-level security is configured in the model by using DAX expressions that define the rows in a table, and any rows in the many direction of a related table that a user can query. Row filters using DAX expressions are defined for the Read and Read and Process permissions.

Object-level security

Tabular models at the 1400 compatibility level support object-level security, which includes table-level security and column-level security. Object level security is set in the JSON-based metadata in the Model.bim file by using TMSL, or TOM. To learn more, see Object-level security.

Automation through service principals

Service principals are an Azure Active Directory application resource you create within your tenant to perform unattended resource and service level operations. Service principals are used with Azure Automation, PowerShell unattended mode, custom client applications, and web apps to automate common tasks like data refresh, scale up/down, and pause/resume. Permissions are assigned to service principals through role membership. To learn more, see Automation with service principals.

Azure governance

Use the tools you already know

Visual Studio

Develop and deploy models with the free SQL Server Data Tools (SSDT) for Visual Studio. SSDT includes Analysis Services project templates that get you up and going quickly. SSDT now includes the modern Get Data datasource query and mashup functionality for tabular 1400 models. If you're familiar with Get Data in Power BI Desktop and Excel 2016, you already know how easy it is to create highly customized data source queries.

If you're using Visual Studio 2017, Microsoft Analysis Services Projects are available as a free installable VSIX package. Download from Marketplace.

Sql Server Management Studio

Manage your servers and model databases by using SQL Server Management Studio (SSMS). Connect to your servers in the cloud. Run TMSL scripts right from the XMLA query window, and automate tasks by using TMSL scripts and PowerShell. New features and functionality happen fast - SSMS is updated monthly.

PowerShell

Server resource management tasks like creating server resources, suspending or resuming server operations, or changing the service level (tier) use Azure PowerShell cmdlets. Other tasks for managing databases such as adding or removing role members, processing, or running TMSL scripts use cmdlets in the SqlServer module. To learn more, see Manage Azure Analysis Services with PowerShell.

Supports the latest client tools

Modern data exploration and visualization tools like Power BI, Excel, Reporting Services, and third-party tools are all supported, providing users with highly interactive and visually rich insights into your model data.

Documentation

Documentation specific to Azure Analysis Services is included here. Use the table of contents on the left side of your browser screen to find articles.

Because Azure Analysis Services tabular models are much the same as tabular models in SQL Server Analysis Services, there's an extensive library of shared conceptual, procedural, developer, and reference articles in SQL Server Analysis Services Documentation. Articles in the SQL Server Analysis Services documentation show if they also apply to Azure Analysis Services by an APPLIES TO banner beneath the title.

Contribute!

Analysis Services documentation, like this article, are open source. If you have a GitHub account, you can edit an article by clicking Edit (pencil) in the upper right corner of your browser screen. Use the in-browser editor and then click Propose file change.

Your contribution will be reviewed by the documentation team and if approved, your GitHub account name will be shown as a contributor. To learn more, see the Docs contributor guide.

Azure Analysis Services documentation also uses GitHub Issues. You can provide feedback about the product or documentation. Use Feedback at the bottom of an article. GitHub Issues aren't yet enabled for SQL Server Analysis Services documentation.