Quickstart: Create an Azure Cosmos DB for NoSQL account using the Azure portal

APPLIES TO: NoSQL

In this quickstart, you create a new Azure Cosmos DB for NoSQL account in the Azure portal. You then use the Data Explorer experience within the Azure portal to create a database and container configuring all required settings. Finally, you add sample data to the container and issue a basic query.

Prerequisites

Create an account

Start by creating a new Azure Cosmos DB for NoSQL account

  1. Sign in to the Azure portal (https://portal.azure.com).

  2. Enter Azure Cosmos DB in the global search bar.

    Screenshot of the global search bar in the Azure portal.

  3. Within Services, select Azure Cosmos DB.

    Screenshot of the Azure Cosmos DB option selected in the search menu.

  4. In the Azure Cosmos DB pane, select Create, and then Azure Cosmos DB for NoSQL.

    Screenshot of the Create option within the pane for an Azure service.

    Screenshot of the Azure Cosmos DB API selection pane with the API for NoSQL highlighted.

  5. Within the Basics pane, configure the following options, and then select Review + create:

    Value
    Subscription Select your Azure subscription
    Resource Group Create a new resource group or select an existing resource group
    Account Name Provide a globally unique name
    Availability Zones Disable
    Location Select a supported Azure region for your subscription

    Screenshot of the Azure Cosmos DB for NoSQL resource creation 'Basics' pane.

    Tip

    You can leave any unspecified options to their default values. You can also configure the account to limit total account throughput to 1,000 request units per second (RU/s) and enable free tier to minimize your costs.

  6. On the Review + create pane, wait for validation of your account to finish successfully, and then select Create.

    Screenshot of the resource validation step in the creation experience.

  7. The portal automatically navigates to the Deployment pane. Wait for the deployment to complete.

    Screenshot of the deployment pane with a currently pending deployment.

  8. Once the deployment is complete, select Go to resource to navigate to the new Azure Cosmos DB for NoSQL account.

    Screenshot of a fully deployed resource with the 'Go to resource' option highlighted.

Create a database and container

Next, use the Data Explorer to create a database and container in-portal.

  1. In the account resource pane, select Data Explorer in the service menu.

    Screenshot of the Data Explorer option in the service menu for the account.

  2. In the Data Explorer pane, select the New Container option.

    Screenshot of the 'New Container' option in the Data Explorer.

  3. In the New Container dialog, configure the following values and then select OK:

    Value
    Database Create new
    Database id cosmicworks
    Share throughput across containers Don't select
    Container id employees
    Partition key department/name
    Container throughput (autoscale) Autoscale
    Container Max RU/s 1000

    Screenshot of the dialog to create a new database and container with the specified options filled.

  4. Create a new file named demo.bicepparam or (demo.bicepparam).

  5. Observe the newly created database and container in the Data Explorer's hierarchy.

    Screenshot of the Data Explorer hierarchy with a database container present.

    Tip

    Optionally, you can expand the container node to observe additional properties and configuration settings.

Add and query sample data

Finally, use the Data Explorer to create a sample item and then issue a basic query to the container.

  1. Expand the node for the employees container in the tree of the Data Explorer. Then, select the Items option.

    Screenshot of the 'Items' option within a container in the Data Exploer hierarchy.

  2. In the Data Explorer's menu, select New Item.

    Screenshot of the 'New Item' option within the Data Explorer menu.

  3. Now, insert the following JSON for a new item in the employees container and then select Save:

    {
      "id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
      "name": {
        "first": "Kai",
        "last": "Carter"
      },
      "email": "<kai@adventure-works.com>",
      "department": {
        "name": "Logistics"
      }
    }
    

    Screenshot of the JSON content for a new item within the Data Explorer.

  4. In the Data Explorer's menu, select New SQL Query.

    Screenshot of the 'New SQL Query' option within the Data Explorer menu.

  5. Now, insert the following NoSQL query to get all items for the logistics department using a case-insensitive search. The query then formats the output as a structured JSON object. Run the query by selecting Execute Query:

    SELECT VALUE {
        "name": CONCAT(e.name.last, " ", e.name.first),
        "department": e.department.name,
        "emailAddresses": [
            e.email
        ]
    }
    FROM
        employees e
    WHERE
        STRINGEQUALS(e.department.name, "logistics", true)
    

    Screenshot of NoSQL query text within the Data Explorer.

  6. Observe the JSON array output from the query.

    [
      {
        "name": "Carter Kai",
        "department": "Logistics",
        "emailAddresses": [
          "kai@adventure-works.com"
        ]
      }
    ]
    

    Screenshot of the results of the previous NoSQL query's execution in the Data Explorer.