Azure Cosmos DB Analytical Store Column Count

Data Engineering on Microsoft Azure

You have an Azure subscription that contains an Azure Cosmos DB database. Azure Synapse Link is implemented on the database. You configure a full fidelity schema for the analytical store. You perform the following actions: • Insert {"customerID": 12, "customer": “Tailspin Toys"} as the first document in the container. • Insert {"customerID": "14", "customer": "Contoso"} as the second document in the container. How many columns will the analytical store contain?

  1. 1
  2. 2
  3. 3 Source Reference Answer
  4. 4

Community Votes

C
100%

100% of anonymous learners picked answer C. Votes are pick records left by other test-takers — they are not the verified answer.

Community Insight

It tests the concept of type preservation in analytical stores; the trap is assuming SQL-like schema enforcement merges types, whereas full fidelity keeps them distinct.

This question tests understanding of Azure Cosmos DB's full fidelity schema in Synapse Link, where different data types for the same field create separate columns. The community consensus is that integer and string versions of 'customerID' plus 'customer' result in three columns.

Option B (2 columns) is incorrect because it assumes 'customerID' is a single column regardless of whether the value is an integer or a string, ignoring the full fidelity requirement.

Community Discussion (6 comments)

JamieMcD 👍 10
C - With a full fidelity schema, the analytical store will track both the data and their types accurately. This means different types for the same field will be stored in separate columns. Specifically: There will be one column for customerID as an integer. There will be another column for customerID as a string. There will be one column for customer as a string.
shinypriti23 👍 1 Selected: C
Total Columns: customerID_Number: For the Integer type in the first document. customerID_String: For the String type in the second document. customer_String: For the consistent String type. Total columns = 3
Okea 👍 1
Spark will manage each datatype as a column when loading into a DataFrame https://learn.microsoft.com/en-us/azure/cosmos-db/analytical-store-introduction
17c5d1e 👍 1
Whats the actual answer? I thought B as two columns will be there, CustomerID and Customer. But I guess that C could be right as a third column is added for the Text "14" ??
NAWRESS96 👍 1 Selected: C
Because the customerID field appears with different data types (integer in the first and string in the second, the analytical store will treat these as separate columns to maintain the schema's fidelity.
Danweo 👍 1 Selected: C
C, a third column will be added for the change in datatype.

Comments & Corrections

No comments yet — spotted an error or have a note? Share it below.

Log in to comment, report an error, or add a note about this question.

Submitted for moderation before publishing. Keep it helpful and respectful.

Expert Analysis

Why the Answer Is Correct

With Azure Synapse Link's full fidelity schema enabled, the analytical store preserves the exact data types from the operational store. Since the first document has customerID as an integer and the second has it as a string, these are stored in two separate columns to maintain type integrity. The customer field is consistently a string, resulting in one column for it. Thus, there are three columns total: customerID_int, customerID_string, and customer_string.

Why the Other Options Are Wrong

Options A and B fail to account for the type separation required by full fidelity. Option D suggests too many columns, perhaps counting metadata or other hidden fields not relevant to the user-defined schema. The key is recognizing that inconsistent typing within a single logical field creates multiple physical columns in the analytical store.

Community Comment Notes

Comment [1] provides the clearest explanation, noting that different types for the same field are stored separately. Comment [2] breaks down the specific column names effectively. Comment [3] links to official documentation confirming Spark manages datatypes as columns. Comments [4], [5], and [6] reinforce the reasoning that the datatype change triggers the third column.

Official Reference

Exam Strategy

When dealing with 'full fidelity' or 'schema-on-read' concepts in Cosmos DB, always check for data type inconsistencies. If a field varies in type across documents, assume each unique type generates a separate column in the analytical store.

Related Analysis

← Back to DP-203 Study Guide