MSDN Documentation

Analysis Services Tools

This section provides an overview of the tools available for developing, managing, and interacting with SQL Server Analysis Services (SSAS).

Integrated Development Environment (IDE)

SQL Server Data Tools (SSDT)

SQL Server Data Tools (SSDT) is the primary IDE for developing Analysis Services solutions. It integrates with Visual Studio and provides a comprehensive environment for creating multidimensional models, tabular models, and data mining models. You can design your cubes, dimensions, measures, and relationships directly within SSDT.

Client Tools for Interacting with SSAS

SQL Server Management Studio (SSMS)

SQL Server Management Studio (SSMS) is a comprehensive tool for managing SSAS instances. You can connect to your SSAS server, browse databases and objects, execute MDX and DAX queries, manage roles and permissions, and monitor performance.

Excel and Power Pivot

Microsoft Excel can connect to SSAS as a data source, enabling users to create pivot tables and pivot charts to analyze data from multidimensional or tabular models. Power Pivot for Excel is an in-memory data modeling tool that provides advanced data analysis capabilities and can also connect to SSAS.

Programmable Objects and APIs

Beyond graphical tools, SSAS offers powerful programmatic interfaces for advanced customization and integration:

XML for Analysis (XMLA)

XMLA is a SOAP-based XML protocol for communicating with Analysis Services. It's used for executing commands, retrieving metadata, and managing SSAS objects. Many client tools and custom applications use XMLA under the hood.

<!-- Example XMLA command to get database names -->
<Batch xmlns="urn:schemas-microsoft-com:xml-analysis">
  <Discover CommandID="1" ObjectExpansion="0" ExecuteDetail="0">
   <RequestType>DISCOVER_DATABASES</RequestType>
   <Properties>
    <PropertyList>
     <DataSourceInfo>Provider=MSOLAP;</DataSourceInfo>
     <Catalog>AdventureWorksDW</Catalog>
    </PropertyList>
   </Properties>
  </Discover>
</Batch>

AMO (Analysis Management Objects)

AMO is a .NET library that provides a set of objects and classes to programmatically manage Analysis Services. It allows you to automate administrative tasks such as creating databases, deploying solutions, managing security, and configuring server properties.

// C# Example using AMO to connect to an Analysis Services instance
using Microsoft.AnalysisServices.Tabular;

Server server = new Server();
server.Connect("localhost"); // Replace with your server name
Console.WriteLine("Connected to server: " + server.Name);
// ... perform management operations ...
server.Disconnect();

TOM (Tabular Object Model)

TOM is a .NET library specifically designed for working with tabular models in Analysis Services. It provides a more object-oriented and intuitive way to interact with tabular model metadata and data, facilitating advanced scripting and customization for tabular solutions.

// C# Example using TOM to create a new tabular database
using Microsoft.AnalysisServices.Tabular;

Server server = new Server();
server.Connect("localhost"); // Replace with your server name

Database newDatabase = new Database("MyNewTabularDB");
server.Databases.Add(newDatabase);
newDatabase.Update(UpdateOptions.None,0);
Console.WriteLine($"Database '{newDatabase.Name}' created.");
server.Disconnect();

Key Concepts

Explore the links above to dive deeper into each tool and its capabilities.