Structured, semi-structured and unstructured data

DP-900 · Core data concepts · Updated

Every storage decision starts with the shape of the data. DP-900 expects you to recognise the three shapes quickly and match each to the right Azure service.

Structured data

Structured data follows a fixed schema: every row has the same columns, each with a defined type. It lives in tables, and the classic home is a relational database such as Azure SQL Database.

Vocabulary the exam uses:

  • Entity: the thing you describe, such as a customer or an order.
  • Row (record): one instance of an entity.
  • Column (attribute, field): one property shared by all rows.
  • Cell: the value at one row and column.

Semi-structured data

Semi-structured data has some organisation, but no rigid schema. Items carry their own labels, so two items in the same collection can have different attributes.

Common formats:

  • JSON: keys and values, widely used by APIs.
  • XML: nested tags.
  • Key-value and graph data: also described as semi-structured.
{ "id": 1, "name": "Ana", "phone": "555-0100" }
{ "id": 2, "name": "Ivo" }

The second record has no phone and that is perfectly valid. Typical stores are Azure Cosmos DB and Azure Table storage.

Unstructured data

Unstructured data has no model at all. It is stored as files: images, video, audio, PDFs, Word documents, log text. You can store and retrieve it, but you cannot query inside it with SQL without extra processing.

The usual Azure home is Azure Blob Storage. For a shared drive mapped from Windows or Linux over the SMB protocol, use Azure Files.

Quick comparison

TypeSchemaExampleAzure fit
StructuredFixedSales tableAzure SQL Database
Semi-structuredFlexible, self-describingJSON documentsAzure Cosmos DB
UnstructuredNonePhotos, PDFs, videoAzure Blob Storage

Schema on write and schema on read

Relational systems use schema on write: data must match the table definition before it is saved. Data lakes and many analytics tools use schema on read: raw data is stored as it is, and structure is applied when you query it. This difference reappears when you study OLTP versus analytics and ETL versus ELT.

Exam traps

  • JSON, XML and YAML are semi-structured, not unstructured. Only raw files such as images and video are unstructured.
  • A row is an instance; a column is an attribute. People swap them under pressure.
  • A CSV file looks tabular, yet the file itself carries no enforced schema, so read the scenario to see how it is described.
  • Azure Blob Storage is for unstructured objects, while Azure Files is the answer when the wording says “mapped drive” or “file share”.

Practice questions

Choose an answer, then review the explanation to check your understanding.

1. A file holds customer records as JSON. Some records contain a phone number and some do not. How is this data classified?

Show answer

Answer: B.JSON uses keys to describe each item but does not enforce one fixed schema, so it is semi-structured.

2. A company stores thousands of scanned contracts and product photos. Which Azure service is the best fit?

Show answer

Answer: B.Images and documents are unstructured data and belong in object storage such as Azure Blob Storage.

3. In a table of employees, what represents one individual instance of an employee?

Show answer

Answer: B.A row (record) is one instance of the entity. A column is an attribute shared by all rows.

4. Which statement describes structured data?

Show answer

Answer: B.Structured data adheres to a fixed schema, which is why relational databases and SQL work so well with it.

DP-900 course outline

All 8 lessons · Course overview
  1. Structured, semi-structured and unstructured dataCore data concepts Free
  2. Data roles, OLTP and analytical workloadsCore data concepts Free
  3. ACID, SQL statement types and relational objectsRelational data on Azure Full access
  4. Azure SQL family and open-source databasesRelational data on Azure Full access
  5. NoSQL data store typesNon-relational data on Azure Full access
  6. Azure Cosmos DB and Azure StorageNon-relational data on Azure Full access
  7. Analytics services on Azure and Microsoft FabricAnalytics workloads on Azure Full access
  8. Power BI and types of analyticsAnalytics workloads on Azure Full access