Microsoft Developer Network

Your source for technical documentation and developer resources.

Analysis Services Developer Guide

This guide provides comprehensive information for developers working with Microsoft SQL Server Analysis Services. It covers the core concepts, APIs, and best practices for building powerful analytical solutions.

Getting Started with Analysis Services Development

Begin your journey into developing with Analysis Services. Learn about the development environment, tools, and fundamental concepts.

Working with Data Models

Explore how to design, build, and manage your analytical data models.

Multidimensional Models

Learn to create and manipulate cubes, dimensions, hierarchies, and measures.

Tabular Models

Discover the advantages of the tabular model and how to implement it.

Programming with Analysis Services

Leverage the powerful APIs to interact with and manage your Analysis Services instances and models programmatically.

AMO (Analysis Management Objects)

AMO is a .NET library for programmatic management of Analysis Services objects. It allows you to automate administration tasks, deploy models, and more.

Example of AMO usage:


using Microsoft.AnalysisServices.Tabular;

Server server = new Server();
server.Connect("localhost");

Database db = server.Databases.GetByName("AdventureWorksDW");
// Perform operations on the database...
db.Update(UpdateOptions.Default);
                

ADOMD.NET

ADOMD.NET is a .NET data provider for Analysis Services, enabling you to retrieve data and metadata from your models using MDX or DAX queries.

Example of ADOMD.NET usage:


using Microsoft.AnalysisServices.AdomdClient;

AdomdConnection connection = new AdomdConnection("Provider=MSOLAP;Data Source=localhost;Catalog=AdventureWorksDW");
connection.Open();

AdomdCommand command = new AdomdCommand("SELECT {[Measures].[Internet Sales Amount]} ON COLUMNS FROM [Adventure Works]", connection);
AdomdDataReader reader = command.ExecuteReader();
// Process the results...
reader.Close();
connection.Close();
                

XML for Analysis (XMLA)

XMLA is the standard protocol for communicating with Analysis Services. You can send XMLA commands directly for fine-grained control.

Performance and Best Practices

Optimize your Analysis Services solutions for speed and efficiency.

Advanced Topics

Dive deeper into advanced features and functionalities.

Resources

Additional helpful resources: