Skip to Content

AI-102: How to Define Table, Object, and File Projections for Azure AI Search Knowledge Stores?

Master Azure AI Search by understanding how to define table, object, and file projections in knowledge stores. Perfect for AI-102 certification success!

Table of Contents

Question

You work for Xerigon Corporation. You need to implement a table projection, object projection, and file projection while defining a knowledge store for Azure AI Search.

Which properties are required for each projection?

Drag only the minimum required properties to the appropriate projections.

Properties:

  • storageConnectionString
  • generatedKeyName
  • targetName
  • source
  • dataSource
  • storageContainer

Answer

Table projection

  • generatedKeyName
  • source

Object projection

  • generatedKeyName
  • source
  • storageContainer

File projection

  • generatedKeyName
  • source
  • storageContainer

Explanation

An object projection type creates JSON representations of structured data from your indexed documents. This projection is designed to extract and organize data in a hierarchical format, ideal for applications that require detailed and structured insights. The JSON output can be used directly in data-driven applications for visualization, analysis, and integration with other services. You must define three properties in an object projection:

  • storageContainer – Specifies the new container name created in Azure Storage.
  • generatedKeyName – Name of the column for the key that uniquely identifies each row.
  • source – Specifies the path to a node that is the root of the projection.

The following JSON script projects individual car documents, one car per blob, into a container named cars:

"knowledgeStore": {
"storageConnectionString": "an Azure storage connection string",
"projections" : [
{
"tables": [ ]
},
{
"objects": [
{
"storageContainer": "cars",
"source": "/document/objectprojection",
}
]
},
{
"files": [ ]
}
]
}

A file projection type is used to generate binary files, such as PDFs or images, from the data in your index. These files can then be stored in a knowledge store for applications that require downloadable or viewable content. File projections are useful for scenarios where the output needs to be human-readable in a specific format, such as invoices or reports. You must define the same three properties for a file projection as for an object projection.

  • storageContainer – Specifies the new container name created in Azure Storage.
  • generatedKeyName – Name of the column for the key that uniquely identifies each row.
  • source – Specifies the path to the root of the projection.

The following JSON script projects images extracted from a node into a container named XerigonImages:

"projections": [
{
"tables": [ ],
"objects": [ ],
"files": [
{
"storageContainer": "XerigonImages",
"source": "/document/ images/*"
}
]
}
]

A table projection type structures data into a flat, tabular format. This projection is useful when you want to export your data into a table-like format for further analysis, reporting, or integration with databases and spreadsheet tools. Each row in the table corresponds to a document or a specific part of a document. You must define the following three properties for a table projection:

  • tableName – Specifies the name of the new table created in Azure TableStorage.
  • generatedKeyName – Name of the column for the key that uniquely identifies each row.
  • source – Specifies the path to a node in the projection tree which represents the columns that are created in the table.

The following defines a table projection:

"projections" : [
{
"tables": [
{
"tableName": "Cars",
"generatedKeyName": "CarsId",
"source": "/document/tableprojection"
}
]
"objects": [ ],
"files": [ ]
}
]

The dataSource property is not required when defining a table, object, or file projection. It is needed in an index configuration because it defines the external data source from which documents are pulled for processing by the skillset.

The storageConnectionString property is not required when defining a table, object, or file projection. This property is needed when defining the knowledge store because it specifies the path to Azure storage for the knowledge store.

The targetName property is not required when defining a table, object, or file projection. This property defines the name of the output field where skill results are stored.

Microsoft Azure AI Engineer Associate AI-102 certification exam practice question and answer (Q&A) dump with detail explanation and reference available free, helpful to pass the Microsoft Azure AI Engineer Associate AI-102 exam and earn Microsoft Azure AI Engineer Associate AI-102 certification.