Manage Azure Analysis Services with PowerShell

This article describes PowerShell cmdlets used to perform Azure Analysis Services server and database management tasks.

Server management tasks such as creating or deleting a server, suspending or resuming server operations, or changing the service level (tier) use Azure Resource Manager (resource) cmdlets and Analysis Services (server) cmdlets. Other tasks for managing databases such as adding or removing role members, processing, or partitioning use cmdlets included in the same SqlServer module as SQL Server Analysis Services.

Permissions

Most PowerShell tasks require you have Admin privileges on the Analysis Services server you are managing. Scheduled PowerShell tasks are unattended operations. The account or service principle running the scheduler must have Admin privileges on the Analysis Services server.

For server operations using AzureRm cmdlets, your account or the account running scheduler must also belong to the Owner role for the resource in Azure Role-Based Access Control (RBAC).

Resource management operations

Module - AzureRM.AnalysisServices

Cmdlet Description
Get-AzureRmAnalysisServicesServer Gets details of a server instance.
New-AzureRmAnalysisServicesServer Creates a server instance.
New-AzureRmAnalysisServicesFirewallConfig Creates a new Analysis Services firewall config.
New-AzureRmAnalysisServicesFirewallRule Creates a new Analysis Services firewall rule.
Remove-AzureRmAnalysisServicesServer Removes a server instance.
Resume-AzureRmAnalysisServicesServer Resumes a server instance.
Suspend-AzureRmAnalysisServicesServer Suspends a server instance.
Set-AzureRmAnalysisServicesServer Modifies a server instance.
Test-AzureRmAnalysisServicesServer Tests the existence of a server instance.

Server management operations

Module - Azure.AnalysisServices

Cmdlet Description
Add-AzureAnalysisServicesAccount Adds an authenticated account to use for Azure Analysis Services server cmdlet requests.
Export-AzureAnalysisServicesInstance Exports a log from an instance of Analysis Services server in the currently logged in Environment as specified in Add-AzureAnalysisServicesAccount command
Restart-AzureAnalysisServicesInstance Restarts an instance of Analysis Services server in the currently logged in environment; specified in Add-AzureAnalysisServicesAccount command.
Sync-AzureAnalysisServicesInstance Synchronizes a specified database on the specified instance of Analysis Services server to all the query scaleout instances in the currently logged in Environment as specified in Add-AzureAnalysisServicesAccount command

Database operations

Azure Analysis Services database operations use the same SqlServer module as SQL Server Analysis Services. However, not all cmdlets are supported for Azure Analysis Services. To learn more see, SQL Server PowerShell.

The SqlServer module provides task-specific database management cmdlets as well as the general-purpose Invoke-ASCmd cmdlet that accepts a Tabular Model Scripting Language (TMSL) query or script. The following cmdlets in the SqlServer module are supported for Azure Analysis Services.

Cmdlet Description
Add-RoleMember Add a member to a database role.
Backup-ASDatabase Backup an Analysis Services database.
Remove-RoleMember Remove a member from a database role.
Invoke-ASCmd Execute a TMSL script.
Invoke-ProcessASDatabase Process a database.
Invoke-ProcessPartition Process a partition.
Invoke-ProcessTable Process a table.
Merge-Partition Merge a partition.
Restore-ASDatabase Restore an Analysis Services database.