Model Cosmos DB Data Using Azure Analysis Services

Ready to get started?

Learn more about CData Connect Cloud or sign up for free trial access:

  Free Trial


Use CData Connect Cloud to connect to Cosmos DB from Azure Analysis Services and import live Cosmos DB data.

Azure Analysis Services (AAS) is a fully-managed platform as a service (PaaS) that provides enterprise-level data models in the cloud. When paired with CData Connect Cloud, AAS provides instant, cloud-to-cloud access to Cosmos DB data for applications. This article demonstrates how to connect to Cosmos DB using Connect Cloud and import Cosmos DB data in Visual Studio using an AAS extension.

CData Connect Cloud provides a pure cloud-to-cloud interface for Cosmos DB, allowing you to model live Cosmos DB data in Azure Analysis Services — without replicating the data to a natively supported database. As you build enterprise-grade semantic data models for business reports and client applications, Azure Analysis Services generates SQL queries to gather data. Using optimized data processing out of the box, CData Connect Cloud pushes all supported SQL operations (filters, JOINs, etc.) directly to Cosmos DB, leveraging server-side processing to return the requested Cosmos DB data quickly.

Connect to Cosmos DB in Connect Cloud

CData Connect Cloud uses a straightforward, point-and-click interface to connect to data sources.

  1. Log into Connect Cloud, click Connections and click Add Connection
  2. Select "Cosmos DB" from the Add Connection panel
  3. Enter the necessary authentication properties to connect to Cosmos DB.

    To obtain the connection string needed to connect to a Cosmos DB account using the SQL API, log in to the Azure Portal, select Azure Cosmos DB, and select your account. In the Settings section, click Connection String and set the following values:

    • AccountEndpoint: The Cosmos DB account URL from the Keys blade of the Cosmos DB account
    • AccountKey: In the Azure portal, navigate to the Cosmos DB service and select your Azure Cosmos DB account. From the resource menu, go to the Keys page. Find the PRIMARY KEY value and set AccountKey to this value.
  4. Click Create & Test
  5. Navigate to the Permissions tab in the Add Cosmos DB Connection page and update the User-based permissions.

Add a Personal Access Token

If you are connecting from a service, application, platform, or framework that does not support OAuth authentication, you can create a Personal Access Token (PAT) to use for authentication. Best practices would dictate that you create a separate PAT for each service, to maintain granularity of access.

  1. Click on your username at the top right of the Connect Cloud app and click User Profile.
  2. On the User Profile page, scroll down to the Personal Access Tokens section and click Create PAT.
  3. Give your PAT a name and click Create.
  4. The personal access token is only visible at creation, so be sure to copy it and store it securely for future use.

With the connection configured, you are ready to connect to Cosmos DB data from Visual Studio using Azure Analysis Services.

Connect to Cosmos DB in Visual Studio Using AAS

The steps below outline connecting to CData Connect Cloud from Azure Analysis Services to create a new Cosmos DB data source. You will need the Microsoft Analysis Services Project Extension installed to continue.

  1. In Visual Studio, create a new project. Select Analysis Services Tabular Project.
  2. In the Configure your new project dialog, enter a name for your project in the Project name field. Fill in the rest of the fields.
  3. Click Create. The Tabular model designer dialog box opens. Select Workspace server and enter the address of your Azure Analysis Services server (for example, asazure://eastus.azure.windows.net/myAzureServer). Click Test Connection and sign in to your server.
  4. Click OK to create the project. Your Visual Studio window should resemble the following screenshot:
  5. In Visual Studio, in Tabular model Explorer, right-click Data Sources and select Import From Data Source.
  6. In the Table Import Wizard, select SQL Server database and click Connect. In the Server field, enter the Virtual SQL Server endpoint and port separated by a comma: e.g., tds.cdata.com,14333
  7. Click SQL Server Authentication and enter the following information:
    • User name: Enter your CData Connect Cloud username. This is displayed in the top-right corner of the CData Connect Cloud interface. For example, test@cdata.com.
    • Password: Enter the PAT you generated on the Settings page.
    Click Test Connection. If successful, choose from the Database name list and click Next.
  8. On the next screen, select Current User and click Next.
  9. Now, select the first option and click Next.
  10. On the next screen, select a table from the list and click Preview & Filter.
  11. You should now see the table from Cosmos DB populated with data.

Now that you have imported the Cosmos DB data into your data model, you are ready to deploy the project to Azure Analysis Services for use in business reports, client applications, and more.

Get CData Connect Cloud

To get live data access to 100+ SaaS, Big Data, and NoSQL sources directly from your cloud applications, try CData Connect Cloud today!