Bird
Raised Fist0
Azurecloud~10 mins

Table storage basics in Azure - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to create a new Azure Table client.

Azure
from azure.data.tables import TableServiceClient

connection_string = "DefaultEndpointsProtocol=https;AccountName=example;AccountKey=key;EndpointSuffix=core.windows.net"
service = TableServiceClient.from_connection_string([1])
Drag options to blanks, or click blank then click option'
Aconnection_string
Btable_name
Caccount_key
Dendpoint_suffix
Attempts:
3 left
💡 Hint
Common Mistakes
Using account key instead of connection string
Using table name instead of connection string
2fill in blank
medium

Complete the code to create a new table named 'Customers'.

Azure
table_client = service.get_table_client(table_name=[1])
table_client.create_table()
Drag options to blanks, or click blank then click option'
A"Customers"
B"Orders"
C"Products"
D"Invoices"
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong table name
Forgetting quotes around the table name
3fill in blank
hard

Fix the error in the code to insert an entity into the table.

Azure
entity = {'PartitionKey': 'USA', 'RowKey': '001', 'Name': 'John Doe'}
table_client.[1](entity=entity)
Drag options to blanks, or click blank then click option'
Adelete_entity
Bupdate_entity
Cinsert_entity
Dget_entity
Attempts:
3 left
💡 Hint
Common Mistakes
Using update_entity instead of insert_entity
Using get_entity which only retrieves data
4fill in blank
hard

Fill both blanks to query entities with PartitionKey 'USA' and RowKey greater than '005'.

Azure
filter_query = "PartitionKey eq '[1]' and RowKey [2] '005'"
entities = table_client.query_entities(filter=filter_query)
Drag options to blanks, or click blank then click option'
AUSA
Bgt
Clt
DCanada
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong PartitionKey value
Using 'lt' instead of 'gt' for RowKey comparison
5fill in blank
hard

Fill all three blanks to update the 'Name' property of an entity with PartitionKey 'USA' and RowKey '001'.

Azure
entity = table_client.get_entity(partition_key=[1], row_key=[2])
entity['Name'] = [3]
table_client.update_entity(entity=entity)
Drag options to blanks, or click blank then click option'
A'USA'
B'001'
C'Jane Smith'
D'Canada'
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong keys for get_entity
Forgetting quotes around string values

Practice

(1/5)
1. What two keys uniquely identify a record in Azure Table Storage?
easy
A. StorageKey and DataKey
B. PrimaryKey and SecondaryKey
C. PartitionKey and RowKey
D. TableKey and RecordKey

Solution

  1. Step 1: Understand Azure Table Storage keys

    Azure Table Storage uses two keys to uniquely identify each record: PartitionKey and RowKey.
  2. Step 2: Confirm uniqueness of keys

    PartitionKey groups records, and RowKey uniquely identifies a record within that partition.
  3. Final Answer:

    PartitionKey and RowKey -> Option C
  4. Quick Check:

    Unique record ID = PartitionKey + RowKey [OK]
Hint: Remember: PartitionKey groups, RowKey identifies [OK]
Common Mistakes:
  • Confusing PartitionKey with PrimaryKey
  • Thinking TableKey is a valid key
  • Assuming only one key is needed
2. Which of the following is the correct way to create a table client in Azure SDK for Table Storage?
easy
A. TableClient = new TableServiceClient(tableName).GetTableClient(connectionString);
B. TableClient = new TableClient(tableName, connectionString);
C. TableClient = new TableServiceClient(tableName).GetClient(connectionString);
D. TableClient = new TableClient(connectionString, tableName);

Solution

  1. Step 1: Review Azure Table Storage SDK syntax

    The correct constructor for TableClient requires connection string first, then table name.
  2. Step 2: Match syntax to options

    TableClient = new TableClient(connectionString, tableName); matches the correct syntax: new TableClient(connectionString, tableName); others mix order or use wrong classes.
  3. Final Answer:

    TableClient = new TableClient(connectionString, tableName); -> Option D
  4. Quick Check:

    Constructor order: connectionString, tableName [OK]
Hint: Connection string always comes before table name [OK]
Common Mistakes:
  • Swapping connection string and table name order
  • Using TableServiceClient instead of TableClient
  • Calling non-existent methods like GetClient
3. Given this code snippet, what will be the output?
var entity = new TableEntity("users", "user1") { { "Name", "Alice" }, { "Age", 30 } };
Console.WriteLine(entity.PartitionKey + ", " + entity.RowKey + ", " + entity["Name"]);
medium
A. user1, users, Alice
B. users, user1, Alice
C. users, user1, 30
D. user1, users, 30

Solution

  1. Step 1: Identify PartitionKey and RowKey values

    PartitionKey is "users" and RowKey is "user1" as set in the constructor.
  2. Step 2: Access the "Name" property value

    The "Name" property is set to "Alice", so entity["Name"] returns "Alice".
  3. Final Answer:

    users, user1, Alice -> Option B
  4. Quick Check:

    PartitionKey, RowKey, Name = users, user1, Alice [OK]
Hint: PartitionKey first, RowKey second, then properties [OK]
Common Mistakes:
  • Mixing PartitionKey and RowKey order
  • Printing Age instead of Name
  • Confusing property access syntax
4. You try to insert an entity with the same PartitionKey and RowKey twice. What will happen?
medium
A. An error occurs because keys must be unique.
B. The table creates a duplicate record with a new key.
C. The second insert overwrites the first entity silently.
D. The insert is ignored without error.

Solution

  1. Step 1: Understand uniqueness constraint in Table Storage

    PartitionKey and RowKey together uniquely identify an entity; duplicates are not allowed.
  2. Step 2: Behavior on duplicate insert

    Trying to insert an entity with existing keys causes an error, preventing duplicates.
  3. Final Answer:

    An error occurs because keys must be unique. -> Option A
  4. Quick Check:

    Duplicate keys cause error, no silent overwrite [OK]
Hint: Duplicate keys cause error, not overwrite [OK]
Common Mistakes:
  • Assuming silent overwrite happens
  • Thinking duplicates are allowed
  • Believing insert is ignored silently
5. You want to design a scalable Azure Table Storage schema for a large user database. Which approach best supports fast lookups and scalability?
hard
A. Use PartitionKey as user country and RowKey as user ID
B. Use PartitionKey as user ID and RowKey as timestamp
C. Use a single PartitionKey for all users and RowKey as user ID
D. Use random GUIDs for both PartitionKey and RowKey

Solution

  1. Step 1: Understand partitioning for scalability

    PartitionKey groups data to distribute load; grouping by country balances partitions.
  2. Step 2: Use RowKey for unique identification

    RowKey as user ID uniquely identifies users within each country partition.
  3. Step 3: Evaluate other options

    Single partition causes bottleneck; random GUIDs reduce query efficiency; user ID as PartitionKey fragments data poorly.
  4. Final Answer:

    Use PartitionKey as user country and RowKey as user ID -> Option A
  5. Quick Check:

    Partition by country, RowKey unique ID = scalable [OK]
Hint: PartitionKey groups data logically for scalability [OK]
Common Mistakes:
  • Using single partition for all data
  • Random keys hurting query performance
  • Misusing RowKey as partitioning key
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard