Skip to the page
Tecyfy

Azure interview question · easy

What is the difference between a datastore and a data asset in Azure Machine Learning, and how do you use them so training runs can be repeated?

The short answerA datastore is a connection to a storage account: where the data lives and how to authenticate.

The full answer

A datastore is a connection to a storage account: where the data lives and how to authenticate. A data asset is a named, versioned pointer to specific data inside it: this folder, this file or this table, as version 3. Jobs should read data assets by name and version, so every run records exactly which data it trained on.

Datastore: the connection

A datastore points to an Azure Blob container, file share or Data Lake, and holds how to get in:

  • Identity-based: your Microsoft Entra identity or a managed identity. No secret is stored, and access follows the storage account's own permissions.
  • Credential-based: an account key, SAS token or service principal saved with the datastore. Anyone with Reader access to the workspace can read those credentials, which is a good reason to prefer identity-based access.

Every workspace has default datastores, including workspaceblobstore, used for uploads and job snapshots.

Data asset: the named, versioned reference

A data asset records a path and its metadata under a friendly name. It does not copy the data, so it costs no extra storage. There are 3 types:

TypePoints toUse when
uri_fileOne fileA single CSV or Parquet file
uri_folderA folderA set of files you read with pandas or Spark
mltableA table definitionThe schema changes often, or you need a subset of a large table
inputs:
  training_data:
    type: uri_folder
    path: azureml:churn-training:3

Why versions matter

Each data asset version is immutable, so a job that read churn-training:3 can be rerun on the same reference later, and the workspace shows which jobs used which version. A version is a pointer, though, not a copy. If someone overwrites the files at that path, version 3 now reads different data. Write each new dataset to a new path (for example a dated folder) and register it as a new version, and never edit files under a registered version.

In practice

  • Raw and curated data stay in the data lake; datastores connect to it with identity-based access.
  • Each training dataset is a data asset version, created by the pipeline that prepares it.
  • Training jobs take data assets as inputs and log the name and version with the model.
  • Deleting or overwriting data under a registered version is treated like rewriting history.

What interviewers want: datastore as connection and data asset as versioned reference, identity-based access over stored keys, the 3 data types, and that a version is a pointer, so the files under it must not change.

Last updated 16 October 2026