Import Cosmos DB Data Using Azure Data Factory

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 Data Factory and import live Cosmos DB data.

Azure Data Factory (ADF) is a fully managed, serverless data integration service. When paired with CData Connect Cloud, ADF provides instant, cloud-to-cloud access to Cosmos DB data in data flows. This article demonstrates how to connect to Cosmos DB using Connect Cloud and access Cosmos DB data in ADF.

CData Connect Cloud provides a pure cloud-to-cloud interface for Cosmos DB, allowing you to access data from live Cosmos DB data in Azure Data Factory — without replicating the data to a natively supported database. 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 Azure Data Factory.

Access Live Cosmos DB Data in Azure Data Factory

To establish a connection from Azure Data Factory to the CData Connect Cloud Virtual SQL Server API, follow these steps.

  1. Login to Azure Data Factory.
  2. If you have not yet created a Data Factory, Click New -> Dataset.
  3. In the search bar, enter SQL Server and select it when it appears. On the following screen, enter a name for the server. In the Linked service field, select New.
  4. Enter the connection settings.
    • Name - enter a name of your choice.
    • Server name - enter the Virtual SQL Server endpoint and port separated by a comma: tds.cdata.com,14333
    • Database name - enter the Connection Name of the CData Connect Cloud data source you want to connect to (for example, CosmosDB1).
    • 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 - select Password (not Azure Key Vault) and enter the PAT you generated on the Settings page.
    • Click Create.
  5. In Set properties, set the Name, choose the Linked service we just created, select a Table name from those available, and Import schema from connection/store. Click OK.
  6. After creating the linked service, the following screen should appear:
  7. Click preview data to see the imported Cosmos DB table.
  8. You can now use this dataset when creating data flows in Azure Data Factory.

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!