Exam Prep Hubs available on The Data Community

Below are the free Exam Prep Hubs currently available on The Data Community.
Bookmark the hubs you are interested in and use them to ensure you are fully prepared for the respective exam.

Each hub contains:

  1. The topic-by-topic (from the official study guide) coverage of the material, making it easy for you to ensure you are covering all aspects of the exam material.
  2. Practice exam questions for each section.
  3. Bonus material to help you prepare
  4. Two (2) Practice Exams with 60 questions each, or Four (4) Practice Exams with 30 questions each – along with answers.
  5. Links to useful resources, such as Microsoft Learn content, YouTube video series, and more.






AI-900: Microsoft Azure AI Fundamentals

WARNING: AI-900 will retire on June 30, 2026. It will be replaced with AI-901. You can continue to earn this certification after AI-900 retires by passing AI-901.


AI-901: Microsoft Azure AI Fundamentals

AI-901 replaces AI-900.







“Clear all slicers” in Power BI

The “Clear all slicers” feature/button in Power BI allows report users to quickly reset every slicer on the current report page back to its default state. Rather than clearing each slicer individually, users can restore the page’s original filter selections with a single click.

This feature is particularly valuable for interactive reports that contain many slicers, helping users start a new analysis without manually removing multiple filters one-by-one.


Why Use the “Clear all slicers” Button?

As reports become more interactive, it’s common to have numerous slicers controlling different aspects of the data. After applying several filters, users may want to return to the report’s default view.

The Clear all slicers button provides several benefits:

  • Saves time by resetting all slicers simultaneously.
  • Improves the user experience on reports with many filters.
  • Allows users to quickly begin a new analysis.
  • Reduces confusion caused by forgotten slicer selections.
  • Creates a more intuitive and professional report interface.

For example, a sales dashboard might include slicers for:

  • Year
  • Quarter
  • Region
  • Salesperson
  • Product Category
  • Customer Segment

Instead of clearing six slicers individually, users simply click Clear all slicers to restore the default selections.


When Should You Use It?

The Clear all slicers feature is most useful when:

  • A report contains several slicers.
  • Users frequently change filter combinations.
  • Reports are used for exploratory data analysis.
  • Business users need an easy way to reset the report.
  • You want to provide a cleaner and more user-friendly experience.

For simple reports with only one or two slicers, the feature may not provide much additional value.


How the Feature Works

When a user selects Clear all slicers, Power BI resets every slicer on the current page to its default state. Depending on how the report was designed, this may mean:

  • Returning to “All” values.
  • Returning to predefined default selections.
  • Removing user-applied filter selections.

Only slicers on the current report page are affected.


How to Implement the “Clear all slicers” Button

Implementation is straightforward.

Step 1: Configure the Default Slicer Selections

Before adding the button:

  1. Place all required slicers on the report page.
  2. Configure each slicer to the desired default value.
  3. Save the report with these default selections.

These become the state that users return to when clearing slicers.

Step 2: Insert the Button

  1. Select Insert from the ribbon.
  2. Choose Buttons.
  3. Select Clear all slicers.

Power BI automatically inserts a button configured for this purpose.

Step 3: Position and Format the Button

Customize the button by:

  • Changing the text
  • Adding an icon
  • Applying theme colors
  • Adjusting borders and shadows
  • Positioning it near the slicers for easy access

Many report designers place it above or beside the slicer panel so users can easily find it.

Step 4: Test the Report

After publishing or previewing the report:

  1. Change several slicer selections.
  2. Click Clear all slicers.
  3. Verify that every slicer returns to its default state.

Best Practices

To maximize usability:

  • Place the button close to the slicers.
  • Label it clearly (for example, Clear Filters or Reset Filters).
  • Use consistent styling throughout the report.
  • Establish meaningful default slicer values before publishing.
  • Test the feature after adding or modifying slicers.

Common Mistakes to Avoid

Some common implementation issues include:

  • Forgetting to set the desired default slicer selections before publishing.
  • Hiding the button where users cannot easily find it.
  • Assuming the button affects slicers on other report pages.
  • Expecting it to reset filters that are not implemented as slicers (such as page-level, report-level, or visual-level filters).

Best Used Alongside the Apply All Slicers Feature

The Clear all slicers button works especially well when paired with the Apply all slicers feature. Together they provide users with complete control over filtering:

  • Apply all slicers lets users make multiple filter changes before refreshing the report.
  • Clear all slicers lets users instantly return to the default filter state.

This combination creates a smoother, more efficient experience for reports with numerous filters, especially when working with large datasets or DirectQuery models where reducing unnecessary visual refreshes can improve performance.


Summary

The Clear all slicers feature is a simple but valuable enhancement for Power BI reports. By allowing users to reset all slicers with a single click, it improves usability, encourages exploration, and helps users quickly return to a known starting point. When combined with thoughtful default slicer settings and the Apply all slicers feature, it contributes to a cleaner, faster, and more user-friendly reporting experience.

Thanks for reading!

Using the “Apply all slicers” button in Power BI

If you are wondering …

How can I delay the refresh of the reports on a dashboard page until after I have made all my slicer changes?
-or-
How can I apply all my slicer changes at once instead of each change being applied automatically and refreshing the visualizations on the dashboard page?

… then this post is for you.


Understanding default slicer behavior

One of the most useful interactive features in Power BI is the ability for slicers to filter report visuals. By default, whenever a user changes the value of a slicer, every visual affected by that slicer immediately refreshes. This behavior provides instant feedback and works well for reports with small datasets.

However, immediate refresh isn’t always the best experience. Reports that contain large datasets, complex DAX calculations, DirectQuery connections, or numerous visuals may require several seconds to refresh. If users need to change multiple slicers, the report may refresh after every individual selection, resulting in unnecessary queries and a slower user experience.

To address this issue, Power BI provides the “Apply all slicers” feature/button.


What does the “Apply all slicers” feature/button do?

The “Apply all slicers” feature allows for users to modify multiple slicers without triggering repeated refreshes. Once all desired selections have been made, users simply click the “Apply all slicers” button to refresh the report a single time. This approach can improve responsiveness, reduce query volume, and provide a smoother experience for reports, especially those built on large datasets or DirectQuery connections.


When should I use the “Apply all slicers” feature/button?

In general, use this feature when you do not want your reports/visualizations to refresh automatically after each slicer selection, but you instead want to apply all your selections at once refreshing the reports/visualizations just once. This feature is especially useful when:

  • Reports use DirectQuery.
  • Models contain millions of rows.
  • Complex DAX calculations require significant processing.
  • Numerous visuals exist on a single report page.
  • Multiple slicers are commonly changed together.
  • Minimizing database queries is important.

Why would I want to change the default slicer behavior?

Immediate refresh is convenient, but it can:

  • Execute multiple unnecessary queries.
  • Increase report loading time.
  • Generate additional load on the data source.
  • Create a poor user experience when users need to modify several slicers before analyzing the results.

Using “Apply all slicers” allows users to make all of their filter selections first and then refresh the report only once. Instead of refreshing visuals after every slicer change, Power BI waits until the user finishes selecting filter values. This often results in fewer queries sent to the data source, reduced processing, faster overall user experience, and lower resource consumption.


How to enable the “Apply all slicers” button

Implementing this feature only takes a few steps.

Step 1: Open the Report in Power BI Desktop

Open the report that contains the slicers you want to optimize.

Step 2: Enable the Button

From the ribbon:

InsertButtonsApply all slicers

Power BI inserts a button onto the report page.

Step 3: Position the Button

Move the button to an intuitive location, such as:

  • Above the slicers
  • Beside the filter panel
  • At the top of the report page

Many developers also format the button with a distinctive color and descriptive text such as Apply Filters or Apply Selections or Update Report.

Step 5: Test the Report

After publishing or previewing the report:

  1. Change one slicer.
  2. Change another slicer.
  3. Notice that visuals do not refresh.
  4. Select / Click “Apply all slicers“.
  5. All visuals refresh simultaneously using the combined filter selections.

Best Practices

Consider the following recommendations when using this “Apply all slicers” feature:

  • Use it for reports with many slicers or expensive queries.
  • Clearly label the button so users understand that filters are not applied automatically.
  • Place the button near the slicers for better usability.
  • Test both Import and DirectQuery models to determine whether the feature provides measurable performance improvements.
  • Educate report consumers about the changed behavior, particularly if they are accustomed to automatic updates.

Summary

By default, Power BI refreshes report visuals every time a slicer selection changes. While this provides immediate feedback, it can also result in unnecessary processing and slower performance for large or complex reports.

The “Apply all slicers” feature allows users to modify multiple slicers without triggering repeated refreshes. Once all desired selections have been made, users simply select the “Apply all slicers” button to refresh the report a single time. This approach can improve responsiveness, reduce query volume, and provide a smoother experience for reports built on large datasets or DirectQuery connections.

When designing enterprise-scale Power BI solutions, understanding when to use “Apply all slicers” is another valuable technique for balancing interactivity with performance.

If interested, you may already read a post about the “Clear all slicers” feature here.

Thanks for reading!

Understanding the Power BI Semantic Model

Introduction

One of the most important concepts in Microsoft Power BI is the Semantic Model. While reports and dashboards are what users see, the semantic model is the intelligence that sits behind them. It organizes data, defines business logic, and ensures that reports produce consistent, accurate results.

A well-designed semantic model makes report development faster, simplifies maintenance, improves performance, and creates a single version of the truth for an organization.


What Is a Power BI Semantic Model?

A Power BI Semantic Model is a structured collection of data, relationships, calculations, and business rules that provides a business-friendly view of your data.

Think of it as the translation layer between your organization’s raw data and the reports your users consume.

Instead of report developers needing to understand dozens of database tables and SQL queries, they simply connect to a semantic model that already contains:

  • Imported or connected data
  • Relationships between tables
  • Measures
  • Calculated columns
  • Hierarchies
  • Data formatting
  • Security rules
  • Business definitions

The semantic model allows users to analyze data without needing to understand where the data originally came from.


Why Is the Semantic Model Important?

The semantic model serves as the foundation for nearly every Power BI report.

Some of its biggest benefits include:

  • Creates a single source of truth
  • Eliminates duplicated business logic
  • Improves report consistency
  • Simplifies report development
  • Improves report performance
  • Makes security easier to manage
  • Enables report reuse across teams

Without a semantic model, every report developer would need to create their own calculations for example, resulting in inconsistent numbers across reports.


What Makes Up a Semantic Model?

A semantic model typically contains several key components.

Tables

The business data that users analyze.

Examples include:

  • Sales
  • Customers
  • Products
  • Employees
  • Dates

Relationships

Relationships connect tables together so Power BI understands how information relates.

For example:

Sales → Customer

Sales → Product

Sales → Date

Proper relationships eliminate the need for complicated report calculations.


Measures

Measures perform calculations at query time.

Examples:

  • Total Sales
  • Average Order Value
  • Profit Margin
  • Year-to-Date Sales

Measures are generally preferred over calculated columns for aggregations because they are more flexible and consume less storage.


Calculated Columns

Calculated columns create new values that become part of the data model.

Examples include:

  • Full Name
  • Profit Category
  • Fiscal Quarter

Hierarchies

Hierarchies make navigation easier.

Example:

Year → Quarter → Month → Day


Data Formatting

Semantic models define:

  • Currency formats
  • Percentages
  • Decimal places
  • Date formats

This ensures reports display information consistently.


Row-Level Security (RLS)

Security rules determine which data each user is allowed to see.

For example:

  • Regional managers only see their own region.
  • Sales representatives only see their own customers.

How Is a Semantic Model Created?

The typical process looks like this:

  1. Connect to one or more data sources.
  2. Clean and transform data using Power Query.
  3. Load the data into Power BI.
  4. Create relationships.
  5. Create measures using DAX.
  6. Configure formatting.
  7. Build hierarchies.
  8. Configure security.
  9. Publish the semantic model to the Power BI Service.

Once published, reports can connect directly to the semantic model rather than importing data again.


How Is a Semantic Model Maintained?

Like any business asset, semantic models require ongoing maintenance.

Common maintenance activities include:

  • Refreshing data
  • Adding new tables
  • Creating or updating relationships
  • Updating business calculations
  • Optimizing model performance
  • Reviewing and updating security
  • Creating new columns or removing unused columns
  • Documenting business definitions
  • Monitoring refresh failures
  • and more

A well-maintained semantic model becomes increasingly valuable over time.


Shared Semantic Models

One of the greatest strengths of Power BI is the ability to share a semantic model across many reports.

Instead of creating ten separate datasets containing the same sales data:

  • Build one high-quality semantic model.
  • Allow many reports to connect to it.

Benefits include:

  • Consistent calculations
  • Less duplicated work
  • Smaller storage footprint
  • Easier maintenance
  • Better governance
  • Faster report development

This approach is sometimes called the “build once, report many” strategy.


Best Practices

When designing semantic models, consider the following recommendations.

Use a Star Schema

Organize data into:

  • Fact tables
  • Dimension tables

This improves both performance and usability.


Hide Technical Columns

Hide columns that report authors should not use.

Examples:

  • Primary keys
  • Foreign keys
  • Internal IDs

This creates a cleaner report authoring experience.


Create Measures Instead of Repeating Calculations

Store business calculations centrally.

Instead of recreating “Total Sales” in every report, define it once inside the semantic model.


Use Meaningful Names

Instead of:

SalesAmt

Use:

Total Sales

Business-friendly names improve usability.


Remove Unnecessary Data

Only import:

  • Needed tables
  • Needed columns
  • Needed rows

Smaller models perform better.


Document Business Logic

Describe:

  • Measures
  • KPIs
  • Calculations
  • Business rules

Future developers will appreciate the documentation.


Optimize Relationships

Avoid unnecessary many-to-many relationships when possible.

Keep relationships simple and easy to understand.


Securing a Semantic Model

Security should be considered from the beginning rather than added later.

Important security practices include:

  • Use Row-Level Security (RLS) when different users should see different data.
  • Apply workspace permissions using the principle of least privilege.
  • Secure the underlying data source.
  • Protect sensitive information using sensitivity labels when appropriate.
  • Limit who can modify the semantic model.
  • Review permissions regularly.

Good security protects both the data and the business.


Common Mistakes to Avoid

Many new Power BI developers make similar mistakes.

Building a Separate Model for Every Report

Instead, reuse a shared semantic model whenever possible.


Importing Every Column

Extra columns increase model size and reduce performance.


Creating Duplicate Measures

One calculation should exist only once.


Poor Naming

Names like:

Measure1

Calc2

Table3

make models difficult to maintain.


Ignoring Relationships

Incorrect relationships often produce incorrect totals.

Always validate relationship directions and cardinality.


Excessive Calculated Columns

Use measures whenever practical for aggregations.


Skipping Documentation

Undocumented models become difficult to maintain as teams grow.


How to Make Your Semantic Model More Valuable

Organizations receive the greatest value when they treat the semantic model as a shared enterprise asset.

Some ways to maximize its value include:

  • Develop reusable measures.
  • Standardize business definitions.
  • Encourage report developers to connect to existing semantic models.
  • Validate and certify trusted semantic models for organization-wide use.
  • Monitor usage to identify opportunities for improvement.
  • Regularly review performance and security.
  • Keep the model simple, clean, and well documented.

As adoption grows, the semantic model becomes the central foundation for business reporting.


Frequently Asked Questions

Can multiple reports use the same semantic model?

Yes. In fact, this is one of the primary design goals of Power BI. A single semantic model can support dozens—or even hundreds—of reports while ensuring consistent calculations and business definitions.


What is the difference between a semantic model and a report?

The semantic model contains the data, relationships, measures, and business logic. A report is the visual presentation that connects to and displays information from the semantic model.


Can a semantic model connect to multiple data sources?

Yes. A semantic model can combine information from databases, spreadsheets, cloud services, data warehouses, data lakes, and many other supported data sources.


Who should create semantic models?

Ideally, semantic models are created and maintained by BI developers, data engineers, analytics engineers, or Power BI developers who understand both the organization’s data and its business rules.


When should a new semantic model be created?

A new semantic model should generally be created only when the data serves a different business domain or has substantially different security, refresh, or performance requirements. Otherwise, extending an existing shared semantic model is often the better choice.


Can security be applied inside the semantic model?

Yes. Row-Level Security (RLS) can restrict which rows users see, and Object-Level Security (OLS) can hide specific tables or columns from certain users when supported. These features help enforce data access policies consistently across all reports that use the model.


Summary

The Power BI semantic model is the foundation of effective business intelligence. It transforms raw data into a reusable, business-friendly resource by defining relationships, calculations, security, and business logic in one central location.

Organizations that invest in well-designed, shared semantic models benefit from more consistent reporting, faster report development, improved performance, stronger governance, and easier maintenance. By following best practices—such as using a star schema, creating reusable measures, documenting business logic, securing data appropriately, and encouraging report reuse—you can build semantic models that deliver lasting value across the organization.

Thanks for reading!

Choose from full-text, semantic vector, and hybrid search (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25–30%)
   --> Design and implement intelligent search
      --> Choose from full-text, semantic vector, and hybrid search


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

One of the most important skills measured on the DP-800 exam is knowing which search technology is appropriate for different AI-enabled database scenarios. Modern applications no longer rely solely on keyword matching. Instead, they increasingly combine traditional SQL capabilities with semantic understanding powered by embeddings and vector databases.

Microsoft SQL Server 2025, Azure SQL Database, Azure SQL Managed Instance, Azure AI Search, and Microsoft Fabric all support architectures that combine relational data with AI-powered retrieval.

The DP-800 exam expects candidates to understand:

  • Traditional Full-Text Search
  • Semantic Vector Search
  • Hybrid Search
  • When each technique should be selected
  • Advantages and disadvantages of each approach
  • How embeddings enable semantic retrieval
  • How intelligent search supports Retrieval-Augmented Generation (RAG)

Understanding the strengths and weaknesses of each search strategy is critical because choosing the wrong approach can significantly reduce application quality, increase cost, or degrade performance.


Why Intelligent Search Matters

Traditional databases are excellent at retrieving structured information.

For example:

Find all customers named Smith.

or

Find invoices created after January 1.

However, AI applications often ask questions like:

  • Which support ticket is similar to this one?
  • Find documents about password recovery.
  • Find articles discussing authentication failures.
  • Recommend products similar to this description.

These questions require understanding meaning, not merely matching characters.

This is why semantic search has become an essential component of modern database applications.


Three Primary Search Approaches

Microsoft generally categorizes intelligent search into three approaches:

  1. Full-Text Search
  2. Semantic Vector Search
  3. Hybrid Search

Each solves a different problem.


Full-Text Search

Full-text search is Microsoft’s traditional text search technology.

Instead of scanning every row with LIKE comparisons, SQL Server builds specialized indexes that understand words and language.

Example:

Find all documents containing:
database
security
Azure

Rather than performing:

WHERE Description LIKE '%Azure%'

Full-text indexes tokenize words and search efficiently.


Full-Text Search Features

Supports:

  • Word searches
  • Phrase searches
  • Prefix searches
  • Inflectional forms
  • Language-specific stemming
  • Stop words
  • Ranking

Example:

Searching for

run

may also find

  • running
  • runs
  • ran

depending on language settings.


Full-Text Index Architecture

A full-text index stores:

  • Tokens
  • Word locations
  • Linguistic metadata

instead of raw text.

This allows much faster retrieval than LIKE queries.


Common Full-Text Functions

Examples include:

CONTAINS()
FREETEXT()
CONTAINSTABLE()
FREETEXTTABLE()

Example:

SELECT *
FROM Articles
WHERE CONTAINS(Content,'Azure');

Advantages of Full-Text Search

Advantages include:

  • Mature technology
  • Extremely fast keyword searches
  • Built directly into SQL Server
  • Efficient indexing
  • Supports ranking
  • Low storage overhead
  • Easy implementation

Limitations of Full-Text Search

It still relies primarily on matching words.

It does not understand meaning.

For example:

Search:

vehicle repair

A document containing

automobile maintenance

might not be returned.

Although synonyms can sometimes help, semantic understanding remains limited.


When Full-Text Search Is Best

Choose Full-Text Search when:

  • Exact words matter
  • Legal document searches
  • Product catalogs
  • Article searches
  • Documentation portals
  • Knowledge bases
  • Compliance systems

It excels when users know the terminology they are searching for.


Semantic Vector Search

Vector search is fundamentally different.

Instead of searching words, it searches meaning.

The process is:

Text

Embedding model

Vector

Similarity search

Every document becomes a numerical representation.

Example:

"Reset your password"

becomes

[0.183,
-0.912,
0.447,
...]

The numbers themselves are not important.

Their relative position in vector space is.


Embeddings Power Semantic Search

Embedding models place similar concepts near each other.

For example:

Dog

and

Puppy

produce vectors close together.

Likewise:

Laptop

and

Notebook computer

may generate highly similar vectors.

The model learns semantic relationships.


Similarity Search

Rather than asking:

“Does this document contain this word?”

Vector search asks:

“Which vectors are closest?”

Similarity is commonly measured using:

  • Cosine similarity
  • Euclidean distance
  • Dot product

Cosine similarity is the most common metric.


Example

User asks:

“How do I recover my account?”

Stored article:

“Reset your password”

Even though no identical words exist, vector search recognizes the concepts are related.

This is impossible using ordinary keyword matching.


Advantages of Semantic Vector Search

Benefits include:

  • Understands meaning
  • Finds similar content
  • Supports natural language
  • Excellent for AI assistants
  • Ideal for RAG
  • Handles synonyms automatically
  • Better user experience

Limitations of Vector Search

Tradeoffs include:

  • Requires embedding models
  • Consumes more storage
  • Embedding generation costs compute
  • Requires vector indexes
  • More complex infrastructure
  • Results can occasionally be less predictable than exact keyword searches

Typical Use Cases

Vector search is ideal for:

  • AI chatbots
  • Enterprise search
  • Recommendation engines
  • Similar document retrieval
  • Customer support assistants
  • Semantic knowledge bases
  • Question answering systems
  • RAG architectures

Understanding Hybrid Search

Neither full-text nor vector search is perfect for every workload.

Hybrid search combines both approaches.

Instead of choosing one search method, the application performs:

  • Full-text search
  • Vector search

simultaneously.

Results are then merged and ranked.

This provides higher-quality search than either technique alone.


Why Hybrid Search Works

Imagine a user searches:

“Azure SQL backup”

Keyword search finds:

  • Azure SQL backup documentation

Vector search finds:

  • Disaster recovery guidance
  • Database restore procedures
  • Business continuity articles

Combining both returns a richer, more relevant result set.


Benefits of Hybrid Search

Hybrid search offers:

  • Higher recall
  • Better ranking
  • Exact keyword matches
  • Semantic understanding
  • More complete search results
  • Improved user satisfaction
  • Better grounding for AI responses

Hybrid Search in RAG

Retrieval-Augmented Generation depends heavily on retrieving the most relevant context.

Hybrid search often performs best because it retrieves:

  • Exact terminology
  • Related concepts
  • Similar documents

The LLM then generates an answer using higher-quality evidence.

This significantly reduces hallucinations.


Choosing the Right Search Method

RequirementBest Choice
Exact keywordsFull-Text Search
SQL documentation searchFull-Text Search
Product SKU lookupFull-Text Search
Semantic similarityVector Search
AI chatbotVector Search
Recommendation engineVector Search
RAG systemHybrid Search
Enterprise searchHybrid Search
Large knowledge baseHybrid Search
Customer support assistantHybrid Search

Comparison Table

FeatureFull-TextVectorHybrid
Keyword matchingExcellentPoorExcellent
Semantic understandingNoYesYes
Finds synonymsLimitedExcellentExcellent
Natural language queriesLimitedExcellentExcellent
Requires embeddingsNoYesYes
Requires vector indexNoYesYes
Best for RAGFairGoodExcellent
AI chatbot supportLimitedExcellentExcellent
Traditional SQL workloadsExcellentModerateGood
ComplexityLowMediumHigher

DP-800 Exam Tips

Remember these key distinctions:

  • Full-text search is optimized for exact words and phrases.
  • Vector search retrieves semantically similar content using embeddings.
  • Hybrid search combines keyword precision with semantic relevance.
  • Embeddings are required only for vector and hybrid search.
  • Hybrid search is generally the preferred approach for enterprise AI assistants and RAG solutions because it balances precision and recall.
  • LIKE queries are not substitutes for full-text indexes in large-scale search applications.
  • Expect scenario-based questions asking you to recommend the most appropriate search technology based on application requirements, performance, and user experience.

Practice Exam Questions


Question 1

A development team is building an enterprise knowledge base for an AI chatbot. Users ask questions in natural language, and the chatbot retrieves relevant documents before generating a response.

Which search approach should you recommend?

A. Full-text search only

B. Semantic vector search

C. LIKE queries

D. Indexed views

Correct Answer: B

Explanation:
Semantic vector search uses embeddings to retrieve documents based on meaning rather than exact keywords. This makes it ideal for AI chatbots and Retrieval-Augmented Generation (RAG). LIKE queries and indexed views do not provide semantic understanding, while full-text search is limited to keyword matching.


Question 2

A legal department maintains millions of contracts. Attorneys usually know the exact legal terms they are searching for and require fast, precise keyword matching.

Which search technology is the best fit?

A. Hybrid search

B. Semantic vector search

C. Full-text search

D. Azure AI embeddings only

Correct Answer: C

Explanation:
Full-text search is optimized for exact words, phrases, stemming, ranking, and efficient indexing. Since attorneys typically search using precise terminology, full-text search provides the best balance of performance and accuracy.


Question 3

A company stores product manuals and wants search results to include documents discussing “automobile maintenance” when users search for “car repair.”

Which search capability provides this behavior?

A. SQL LIKE operator

B. Clustered indexes

C. Full-text search only

D. Semantic vector search

Correct Answer: D

Explanation:
Semantic vector search retrieves content based on meaning instead of exact words. Because embedding models understand semantic relationships, they recognize that “car repair” and “automobile maintenance” describe similar concepts.


Question 4

A RAG application must retrieve documents that contain both exact product names and semantically similar troubleshooting articles.

Which search strategy should you recommend?

A. Full-text search

B. LIKE queries

C. Hybrid search

D. Clustered columnstore indexes

Correct Answer: C

Explanation:
Hybrid search combines full-text search with semantic vector search. Exact product names are retrieved through keyword matching, while related troubleshooting content is found using semantic similarity.


Question 5

Which characteristic is unique to semantic vector search?

A. It stores documents in XML format.

B. It searches using vector similarity instead of exact text matching.

C. It requires clustered indexes.

D. It eliminates the need for embeddings.

Correct Answer: B

Explanation:
Semantic vector search converts content into embeddings and compares vectors using similarity metrics such as cosine similarity. It does not rely on exact text matching.


Question 6

Your application must support searches for:

  • “running”
  • “runs”
  • “ran”

using a single search term.

Which technology provides this capability without AI embeddings?

A. Full-text search

B. Azure OpenAI

C. Semantic vector search

D. Azure AI Search only

Correct Answer: A

Explanation:
Full-text search supports stemming and inflectional forms, allowing different grammatical variations of a word to match automatically without requiring embeddings.


Question 7

Which similarity metric is most commonly associated with vector search?

A. SHA-256

B. CRC32

C. Cosine similarity

D. Binary comparison

Correct Answer: C

Explanation:
Cosine similarity is the most widely used metric for measuring how similar two embedding vectors are by comparing the angle between them rather than their magnitude.


Question 8

An organization wants users to receive highly relevant search results even when they misspell keywords or use different terminology.

Which search method generally provides the highest quality results?

A. LIKE queries

B. Full-text search only

C. Hybrid search

D. Primary key lookups

Correct Answer: C

Explanation:
Hybrid search combines keyword matching with semantic understanding, improving recall and relevance by returning both exact matches and conceptually related documents.


Question 9

A database developer asks why embeddings are required for semantic search.

What is the primary purpose of embeddings?

A. Encrypt database rows.

B. Compress database backups.

C. Replace SQL indexes.

D. Represent content numerically so semantic similarity can be calculated.

Correct Answer: D

Explanation:
Embeddings transform text into high-dimensional numerical vectors that capture semantic meaning. Similar vectors represent similar concepts, enabling semantic search.


Question 10

Which scenario is the strongest candidate for using hybrid search instead of only full-text search?

A. Searching employee IDs

B. Retrieving rows by primary key

C. Supporting an AI assistant that answers questions using company documentation

D. Looking up invoice numbers

Correct Answer: C

Explanation:
AI assistants benefit from hybrid search because they require both exact keyword matching and semantic understanding. Hybrid search improves document retrieval quality, which directly improves the quality of RAG-generated responses.


DP-800 Exam Tips

  • Full-text search is best for exact keywords, phrases, and language-aware searches using stemming and ranking.
  • Semantic vector search retrieves information based on meaning by comparing embeddings with similarity metrics such as cosine similarity.
  • Hybrid search combines keyword precision with semantic relevance and is generally the preferred approach for enterprise AI search and RAG solutions.
  • Embeddings are required for vector and hybrid search but not for traditional full-text search.
  • Expect scenario-based exam questions where you must recommend the most appropriate search technology based on user requirements, data type, query style, and application architecture.
  • Remember that LIKE queries are suitable only for simple pattern matching and are not a replacement for full-text or semantic search in large-scale intelligent applications.

Go to the DP-800 Exam Prep Hub main page

Implement full-text search (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25–30%)
   --> Design and implement intelligent search
      --> Implement full-text search


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Full-text search is one of the foundational search technologies available in Microsoft SQL Server and Azure SQL Managed Instance. Unlike traditional SQL searches that rely on exact text matching through operators such as LIKE, full-text search provides a much more efficient and intelligent mechanism for searching large collections of textual data.

For the DP-800: Developing AI-Enabled Database Solutions exam, you should understand:

  • What full-text search is
  • When it should be used
  • How it works internally
  • Full-text indexes and catalogs
  • Supported query predicates and functions
  • Language-aware searching
  • Stoplists and thesaurus files
  • Ranking search results
  • Performance considerations
  • When to choose full-text search instead of vector or hybrid search

Although AI-powered semantic search is becoming increasingly popular, full-text search remains an important technology for applications that require fast keyword-based retrieval.


What Is Full-Text Search?

Full-text search is a SQL Server feature that enables efficient searching of large text columns.

Unlike:

WHERE Description LIKE '%backup%'

full-text search creates a specialized index that understands words rather than simple character sequences.

It supports searching within:

  • CHAR
  • VARCHAR
  • NCHAR
  • NVARCHAR
  • TEXT (legacy)
  • NTEXT (legacy)
  • XML
  • FILESTREAM documents through filters

Instead of scanning every row, SQL Server searches an optimized full-text index.


Why Traditional LIKE Queries Are Limited

Many developers initially use:

SELECT *
FROM Articles
WHERE Content LIKE '%security%'

Although this works, it has several disadvantages:

  • Table scans on large datasets
  • Poor performance
  • Cannot rank results
  • No language awareness
  • No stemming
  • No synonym support
  • Limited search capabilities

For enterprise search applications, LIKE queries do not scale effectively.


Benefits of Full-Text Search

Full-text search provides:

  • Fast keyword searches
  • Phrase searching
  • Prefix matching
  • Inflectional searches
  • Linguistic processing
  • Word breaking
  • Ranking of results
  • Stop word removal
  • Efficient indexing
  • Large-scale text retrieval

Full-Text Search Architecture

Several components work together.

Source Tables

Contain text data.

Example:

Articles
Products
KnowledgeBase
SupportTickets
Policies

Full-Text Index

Instead of indexing every character, SQL Server stores:

  • Tokens
  • Word positions
  • Language metadata

This dramatically speeds searches.


Full-Text Catalog

A full-text catalog is a logical container for one or more full-text indexes.

Modern SQL Server versions automatically manage catalogs, but understanding the concept remains important for the DP-800 exam.


Word Breakers

SQL Server separates text into words using language-specific rules.

Example:

SQL Server enables intelligent search.

becomes

SQL
Server
enables
intelligent
search

Different languages use different tokenization rules.


Stemmers

Stemmers recognize grammatical variations.

Searching:

run

may also find

  • running
  • runs
  • ran

depending on the configured language.


Enabling Full-Text Search

Before using full-text search:

  1. Install Full-Text Search feature.
  2. Create a unique key index.
  3. Create a full-text catalog (optional in newer versions).
  4. Create a full-text index.

Example:

CREATE FULLTEXT INDEX
ON Articles(Content)
KEY INDEX PK_Articles;

The index is then populated.


Full-Text Predicates

The DP-800 exam expects familiarity with common predicates.


CONTAINS()

Searches for precise words or phrases.

Example:

SELECT *
FROM Articles
WHERE CONTAINS(Content,'Azure');

Phrase Search

CONTAINS(Content,'"Azure SQL"')

Returns only rows containing the complete phrase.


Boolean Operators

Supports:

AND
OR
AND NOT

Example:

CONTAINS(Content,'"Azure" AND "Backup"')

Prefix Search

CONTAINS(Content,'"cloud*"')

Matches

  • cloud
  • clouds
  • cloud-based
  • clouding

Proximity Search

Finds words located near each other.

Example:

database NEAR backup

Useful when context matters.


FREETEXT()

Unlike CONTAINS(), FREETEXT searches for the meaning of words rather than exact expressions.

Example:

SELECT *
FROM Articles
WHERE FREETEXT(Content,'database recovery');

SQL Server automatically considers:

  • synonyms
  • stemming
  • inflectional forms

It is more natural-language oriented than CONTAINS().


Ranking Results

Often multiple documents match.

SQL Server can assign relevance rankings.

Functions include:

CONTAINSTABLE()
FREETEXTTABLE()

Example:

SELECT *
FROM CONTAINSTABLE
(
Articles,
Content,
'Azure'
)

Returns:

  • KEY
  • RANK

Applications can sort using the ranking score.


Stoplists

Certain words appear so frequently that indexing them offers little value.

Examples:

  • the
  • is
  • and
  • a
  • of

These are called stop words.

Stoplists improve:

  • Index size
  • Query performance
  • Search quality

Custom stoplists may also be created.


Thesaurus Files

SQL Server supports synonym expansion through thesaurus XML files.

Example:

Searching:

car

may automatically include

automobile
vehicle

This improves keyword searches without requiring embeddings.


Supported Languages

Full-text search supports dozens of languages.

Language-specific processing includes:

  • tokenization
  • stemming
  • stop words
  • word breakers

Examples include:

  • English
  • French
  • German
  • Spanish
  • Japanese
  • Chinese

Each language has its own linguistic rules.


Maintaining Full-Text Indexes

Indexes require updates when data changes.

Population modes include:

Full Population

Rebuilds the entire index.

Suitable for:

  • initial creation
  • major updates

Automatic Change Tracking

Automatically updates the index after data modifications.

Recommended for most OLTP workloads.


Manual Population

Administrators trigger updates manually.

Useful when:

  • large batch loads occur
  • maintenance windows exist

Performance Considerations

Full-text search is highly optimized but requires planning.

Consider:

  • index storage
  • population time
  • update frequency
  • large document sizes
  • language configuration
  • stoplists

For massive document repositories, automatic population should be monitored to avoid excessive resource usage.


When to Use Full-Text Search

Choose full-text search when users search by:

  • keywords
  • phrases
  • document titles
  • product names
  • legal terminology
  • technical documentation

Examples:

  • Knowledge bases
  • Product catalogs
  • Documentation portals
  • Legal document repositories
  • Medical reference systems

When NOT to Use Full-Text Search

Full-text search is not ideal when users expect semantic understanding.

Example:

User searches:

“recover my account”

Stored document:

“reset your password”

These phrases contain different words.

Full-text search may not match them effectively.

Semantic vector search would perform much better.


Full-Text Search vs LIKE

FeatureLIKEFull-Text Search
PerformancePoor on large tablesExcellent
Uses indexesLimitedSpecialized full-text indexes
Phrase searchLimitedYes
Word stemmingNoYes
Stop wordsNoYes
RankingNoYes
Prefix searchLimitedYes
Language awarenessNoYes

Full-Text Search vs Semantic Vector Search

FeatureFull-TextVector Search
Keyword matchingExcellentLimited
Semantic understandingNoExcellent
Embeddings requiredNoYes
Natural languageLimitedExcellent
Synonym understandingLimitedExcellent
AI chatbot supportModerateExcellent
RAG supportModerateExcellent
ComplexityLowMedium

Common DP-800 Scenarios

Scenario 1

A legal team searches contracts using exact legal terminology.

Best solution: Full-text search.


Scenario 2

A documentation portal searches millions of technical articles.

Best solution: Full-text search.


Scenario 3

An AI assistant answers questions using company documentation.

Best solution: Hybrid search (full-text + vector search).


Scenario 4

A recommendation engine finds similar documents.

Best solution: Vector search.


Best Practices

  • Use full-text indexes instead of LIKE for large text searches.
  • Configure the correct language for linguistic processing.
  • Enable automatic change tracking for frequently updated data.
  • Use stoplists to reduce index size and improve relevance.
  • Use CONTAINS() for precise searches and FREETEXT() for natural-language style queries.
  • Use CONTAINSTABLE() or FREETEXTTABLE() when relevance ranking is required.
  • Consider hybrid search when applications require both keyword precision and semantic understanding.
  • Monitor full-text index population and maintenance in production environments.

DP-800 Exam Tips

  • Know the differences between CONTAINS(), FREETEXT(), CONTAINSTABLE(), and FREETEXTTABLE().
  • Understand how full-text indexes differ from traditional SQL indexes.
  • Remember that full-text search is keyword-based, while vector search is meaning-based.
  • Understand the purpose of stoplists, word breakers, stemmers, and thesaurus files.
  • Expect scenario-based questions asking you to choose between LIKE queries, full-text search, vector search, and hybrid search based on application requirements.
  • Know when full-text search is sufficient and when semantic search or hybrid search provides a better user experience.

Practice Exam Questions


Question 1

A company stores millions of technical articles in an Azure SQL Database. Users frequently search for exact product names and technical terms. Developers currently use the following query:

SELECT *
FROM Articles
WHERE Content LIKE '%Azure SQL%'

The search is becoming increasingly slow as the table grows.

Which feature should you recommend?

A. Full-text search
B. Columnstore indexes
C. Semantic vector search
D. Table partitioning

Correct Answer: A

Explanation

Full-text search is specifically designed for efficient searching of large text columns. It creates specialized indexes that support keyword searches, phrase matching, ranking, and linguistic analysis. While table partitioning and columnstore indexes improve other workloads, they do not replace full-text search functionality.


Question 2

Which SQL Server function searches for exact words, phrases, Boolean expressions, and prefix terms?

A. FREETEXT()
B. CONTAINS()
C. PATINDEX()
D. CHARINDEX()

Correct Answer: B

Explanation

CONTAINS() supports advanced search expressions including:

  • Exact words
  • Exact phrases
  • Boolean operators (AND, OR, AND NOT)
  • Prefix searches
  • Proximity searches

FREETEXT() is intended for natural-language searching rather than precise keyword expressions.


Question 3

A developer wants search results to include different grammatical forms of the word run, such as:

  • running
  • runs
  • ran

Which SQL Server component provides this capability?

A. Stoplists

B. Full-text catalogs

C. Stemmers

D. Clustered indexes

Correct Answer: C

Explanation

Stemmers recognize different inflectional forms of words based on language-specific rules. This allows a search for “run” to also return documents containing “running,” “runs,” or “ran.”


Question 4

Which statement best describes a full-text catalog?

A. It stores database backups.

B. It replaces clustered indexes.

C. It is a logical container that organizes one or more full-text indexes.

D. It stores vector embeddings.

Correct Answer: C

Explanation

A full-text catalog is a logical container for full-text indexes. While SQL Server automatically manages catalogs in newer versions, understanding their role remains important for administration and exam scenarios.


Question 5

Which function is most appropriate when users enter natural-language search phrases rather than precise keywords?

A. CONTAINS()

B. LIKE

C. FREETEXT()

D. PATINDEX()

Correct Answer: C

Explanation

FREETEXT() performs natural-language searches by considering linguistic analysis, stemming, and synonyms. It is designed for less structured search input compared to CONTAINS().


Question 6

Which full-text search feature helps reduce index size by excluding commonly occurring words such as the, is, and and?

A. Word breakers

B. Stoplists

C. Stemmers

D. Ranking tables

Correct Answer: B

Explanation

Stoplists contain common words, known as stop words, that are ignored during indexing and searching. This improves both index efficiency and search relevance.


Question 7

Your application must display search results ordered from the most relevant document to the least relevant.

Which functions are specifically designed for this purpose?

A. CONTAINS() and FREETEXT()

B. LIKE and PATINDEX()

C. CONTAINSTABLE() and FREETEXTTABLE()

D. CHARINDEX() and STRING_SPLIT()

Correct Answer: C

Explanation

CONTAINSTABLE() and FREETEXTTABLE() return a RANK value that indicates the relevance of each result, allowing applications to sort documents by search quality.


Question 8

Which scenario is the best use case for traditional full-text search?

A. Finding semantically similar customer support tickets

B. Building a Retrieval-Augmented Generation (RAG) chatbot

C. Recommending similar research papers based on meaning

D. Searching legal documents using exact legal terminology

Correct Answer: D

Explanation

Full-text search excels when users search using precise words and phrases, making it well suited for legal, compliance, technical documentation, and product catalog scenarios. Semantic vector search is generally preferred for AI assistants and recommendation systems.


Question 9

Which component is responsible for separating text into searchable words based on language-specific rules?

A. Word breakers

B. Stoplists

C. Embedding models

D. Full-text catalogs

Correct Answer: A

Explanation

Word breakers tokenize text into individual searchable terms according to the linguistic rules of the configured language. Proper tokenization is essential for accurate indexing and querying.


Question 10

A company is building an AI-powered knowledge assistant. Users expect searches such as:

“recover my account”

to return documents titled:

“reset your password”

Which recommendation is most appropriate?

A. Continue using LIKE queries

B. Use only full-text search

C. Replace all searches with clustered indexes

D. Combine full-text search with semantic vector search using hybrid search

Correct Answer: D

Explanation

Full-text search primarily matches keywords and phrases, while semantic vector search retrieves documents based on meaning. Hybrid search combines both approaches, producing more accurate results for AI-powered applications such as RAG systems and enterprise knowledge assistants.


DP-800 Exam Tips

  • Use full-text search when exact keywords, phrases, and language-aware matching are required.
  • Understand the differences between CONTAINS(), FREETEXT(), CONTAINSTABLE(), and FREETEXTTABLE().
  • Remember that word breakers tokenize text, stemmers recognize grammatical variations, and stoplists remove common words to improve search efficiency.
  • Use ranking functions when applications need to order search results by relevance.
  • Recognize that LIKE queries are not appropriate for large-scale enterprise text search.
  • Know that full-text search is keyword-based, while vector search is meaning-based; hybrid search combines the strengths of both and is often the preferred approach for AI-enabled search solutions.

Go to the DP-800 Exam Prep Hub main page

Design for vector data, including vector data type, vector indexes, and size (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25–30%)
   --> Design and implement intelligent search
      --> Design for vector data, including vector data type, vector indexes, and size


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Modern AI-enabled applications increasingly rely on vector data to represent the meaning of text, images, audio, and other unstructured information. Instead of matching exact words, vector-based search enables applications to find content based on semantic similarity.

Microsoft SQL Server 2025, Azure SQL Database, and Azure SQL Managed Instance introduce native support for vector data, allowing databases to store embeddings directly alongside relational data. Combined with AI models and vector indexes, SQL databases become powerful platforms for semantic search, Retrieval-Augmented Generation (RAG), recommendation engines, document similarity, and AI assistants.

For the DP-800 exam, candidates should understand how to:

  • Design schemas that store vector embeddings
  • Choose appropriate vector dimensions
  • Understand vector data types
  • Create and maintain vector indexes
  • Balance storage, performance, and accuracy
  • Select index types appropriate for AI workloads
  • Understand how vector size affects database performance

What Is Vector Data?

A vector is a numerical representation of data generated by an embedding model.

Instead of storing text directly, the model converts text into hundreds or thousands of floating-point numbers.

Example:

Original text:

“Azure SQL supports AI-powered search.”

Embedding:

[0.012,
-0.553,
0.441,
...
0.318]

This numerical representation captures semantic meaning.

Documents discussing:

  • AI databases
  • Azure SQL
  • semantic search

will produce vectors located close together within vector space.


Why Store Vectors in SQL?

Traditionally, embeddings were stored in external vector databases.

Modern SQL databases now support vectors directly, allowing organizations to:

  • Keep structured and unstructured data together
  • Simplify architecture
  • Reduce synchronization complexity
  • Improve transactional consistency
  • Query relational and vector data simultaneously

Example table:

ProductIDNameCategoryDescriptionDescriptionEmbedding
101LaptopElectronicsPortable computerVector

This allows applications to perform:

  • SQL filtering
  • joins
  • semantic search

within one query.


Understanding the Vector Data Type

The new VECTOR data type stores embeddings efficiently inside SQL tables.

Example:

VECTOR(1536)

The number specifies the vector dimensions.

Examples:

VECTOR(768)
VECTOR(1024)
VECTOR(1536)
VECTOR(3072)

The dimension must exactly match the embedding model.


What Are Vector Dimensions?

Each embedding model outputs a fixed number of values.

Examples:

ModelTypical Dimensions
Small embedding model768
text-embedding-3-small1536
text-embedding-3-large3072

If an embedding model generates 1536 values:

VECTOR(1536)

must be used.

Using the wrong size causes insert failures.


Choosing the Correct Vector Size

Higher dimensions provide richer semantic meaning.

However they also require:

  • more storage
  • larger indexes
  • slower searches
  • additional memory

Example comparison:

DimensionsCharacteristics
256Very small, fast, lower accuracy
768Good balance
1024Higher quality
1536Excellent semantic understanding
3072Highest quality but larger storage

Choosing unnecessarily large vectors wastes storage.


How Embedding Size Affects Storage

Each dimension stores a floating-point number.

Example:

1536 dimensions

≈1536 floating point values

Across one million rows:

1,000,000 vectors
×
1536 dimensions

This becomes a significant storage requirement.

Large AI applications should estimate storage before deployment.


Designing Tables for Vector Data

Common design:

Documents
------------
DocumentID
Title
Category
Content
Embedding

The embedding column stores semantic meaning.

Other columns remain relational.

This design enables hybrid queries.


Separating Embeddings from Business Data

Many organizations separate embeddings into another table.

Example:

Documents
DocumentID
Title
Content
DocumentEmbeddings
DocumentID
Embedding
ModelVersion
CreatedDate

Benefits:

  • easier regeneration
  • reduced locking
  • independent maintenance
  • multiple embedding versions

Versioning Embeddings

Embedding models evolve.

Example:

Version 1:

text-embedding-3-small

Later:

text-embedding-3-large

A model change usually requires regenerating all vectors.

Many databases store:

  • Model Name
  • Version
  • Generation Date

This allows safe migrations.


One Embedding or Multiple?

Some applications store several embeddings.

Example:

Products

  • Title embedding
  • Description embedding
  • Review embedding

Different searches can target different meanings.


Designing for Chunk-Level Embeddings

Large documents are usually divided into chunks.

Instead of:

Entire PDF
One vector

Applications store:

Document
Paragraphs
One vector per paragraph

Benefits include:

  • higher search precision
  • better RAG responses
  • smaller embeddings
  • improved relevance

Vector Search vs Traditional Search

Traditional search matches keywords.

Example:

Search:

vehicle

Document:

car

Keyword search may miss it.

Vector search recognizes semantic similarity.

It understands:

  • automobile
  • vehicle
  • car
  • SUV

are closely related.


Combining SQL Filters with Vector Search

One major benefit of SQL databases is combining structured filters with AI search.

Example:

Category = Electronics
AND
Vector similarity

Only electronics are searched semantically.

This improves both performance and relevance.


Exact Search vs Approximate Search

Vector searches generally use two approaches.

Exact Search

Compares every vector.

Advantages:

  • highest accuracy

Disadvantages:

  • slower
  • expensive for large datasets

Approximate Search

Uses specialized indexes.

Advantages:

  • much faster
  • scalable

Tradeoff:

  • slight reduction in accuracy

Most production AI systems use approximate search.


Understanding Vector Indexes

Without indexes:

Every vector must be compared.

1 million vectors
1 million comparisons

Vector indexes dramatically reduce work.

They organize vectors based on similarity.

This enables very fast nearest-neighbor searches.


Approximate Nearest Neighbor (ANN)

Modern vector databases commonly use ANN indexing.

Instead of checking every vector:

Search
Relevant region
Nearby vectors
Best matches

Response times become milliseconds instead of seconds.


Why Vector Indexes Matter

Benefits include:

  • faster semantic search
  • reduced CPU usage
  • scalable AI applications
  • improved RAG performance
  • lower query latency

Large AI systems depend heavily on vector indexing.


Choosing Whether to Create a Vector Index

Small datasets:

A vector index may not provide significant benefit.

Large datasets:

Vector indexes become essential.

Typical guidance:

RowsRecommendation
ThousandsOptional
Hundreds of thousandsRecommended
MillionsEssential

Best Practices

  • Use the embedding dimensions required by the selected model.
  • Store vectors in dedicated VECTOR columns.
  • Keep relational data alongside embeddings whenever practical.
  • Separate embeddings into dedicated tables when frequent regeneration is expected.
  • Track embedding model versions.
  • Chunk large documents before generating embeddings.
  • Choose the smallest embedding model that delivers acceptable quality.
  • Create vector indexes for large datasets.
  • Combine relational filtering with semantic search.
  • Monitor storage growth as embeddings increase.

Common Exam Tips

  • Know that VECTOR stores embedding data.
  • Understand that vector dimensions must match the embedding model.
  • Remember that larger vectors increase storage and memory requirements.
  • Recognize that vector indexes accelerate semantic similarity searches.
  • Understand the difference between exact and approximate nearest-neighbor searches.
  • Know that chunking improves retrieval quality for large documents.
  • Understand that multiple embeddings may exist for a single record.
  • Remember that embedding model upgrades usually require regenerating vectors.
  • Understand that relational filtering and vector search can be combined.
  • Expect scenario-based questions involving storage, indexing, scalability, and AI search architecture.

Practice Exam Questions


Question 1

A company is building a Retrieval-Augmented Generation (RAG) application using Azure SQL Database. They plan to store embeddings generated by the text-embedding-3-small model.

Which VECTOR data type should be used for the embedding column?

A. VECTOR(768)
B. VECTOR(1024)
C. VECTOR(1536)
D. VECTOR(3072)

Correct Answer: C

Explanation:
The text-embedding-3-small model generates 1,536-dimensional embeddings. The VECTOR column must match the number of dimensions produced by the embedding model. Using any other dimension would prevent embeddings from being stored correctly.


Question 2

A database contains 12 million product embeddings. Semantic searches are becoming increasingly slow because every query compares all vectors.

What should the database developer implement?

A. A clustered index on the VECTOR column
B. A vector index that supports Approximate Nearest Neighbor (ANN) searches
C. A nonclustered index on the product name
D. A filtered index on the category column

Correct Answer: B

Explanation:
Vector indexes using Approximate Nearest Neighbor algorithms dramatically reduce the number of comparisons required during similarity searches. Traditional SQL indexes cannot optimize vector similarity calculations.


Question 3

A developer must choose between a 768-dimensional embedding model and a 3,072-dimensional embedding model.

What is generally true about the larger embedding model?

A. It always performs searches faster.
B. It requires fewer storage resources.
C. It typically captures more semantic detail but requires additional storage and memory.
D. It cannot be indexed.

Correct Answer: C

Explanation:
Higher-dimensional embeddings generally preserve more semantic information, improving search quality. However, they increase storage requirements, memory consumption, and indexing costs.


Question 4

A database stores customer information together with vector embeddings representing customer support conversations.

Which design provides the greatest flexibility for regenerating embeddings after switching to a new embedding model?

A. Store embeddings in a separate table linked by the primary key.
B. Store embeddings inside a JSON document.
C. Store embeddings inside XML columns.
D. Store embeddings inside temporary tables.

Correct Answer: A

Explanation:
Separating embeddings into their own table simplifies regeneration, maintenance, versioning, and model migration while keeping business data unchanged.


Question 5

A development team wants to search only engineering documents while using semantic similarity.

Which approach best meets this requirement?

A. Perform only vector similarity searches across every document.
B. Filter documents by department using SQL, then perform vector similarity searches.
C. Disable relational filtering.
D. Store engineering documents in a separate SQL Server instance.

Correct Answer: B

Explanation:
One advantage of SQL databases is combining structured filtering with vector similarity search. Restricting the dataset before similarity comparisons improves both performance and relevance.


Question 6

A company stores embeddings for technical manuals that average 400 pages each.

What is the recommended design approach?

A. Generate one embedding for the entire manual.
B. Store only the title as an embedding.
C. Divide manuals into logical chunks and generate embeddings for each chunk.
D. Generate embeddings only for images.

Correct Answer: C

Explanation:
Chunking improves semantic retrieval accuracy by allowing searches to return only the most relevant portions of large documents rather than entire documents.


Question 7

A developer upgrades from one embedding model to another that produces vectors with a different number of dimensions.

What should the developer expect?

A. Existing vectors automatically resize.
B. Existing vectors remain compatible without changes.
C. SQL Server automatically converts vector dimensions.
D. Existing embeddings must be regenerated to match the new model dimensions.

Correct Answer: D

Explanation:
Embedding dimensions are fixed for each model. Changing models often changes vector size, requiring regeneration of all stored embeddings.


Question 8

An application contains approximately 3,000 embedded documents.

Which statement is most accurate regarding vector indexes?

A. Vector indexes are mandatory regardless of database size.
B. Vector indexes cannot be created until at least one million vectors exist.
C. A vector index may provide limited benefit for a very small dataset.
D. Vector indexes only work with GraphQL.

Correct Answer: C

Explanation:
Small datasets often perform adequately without vector indexes. The performance gains become much more significant as the number of vectors increases.


Question 9

A developer wants to support semantic search over product descriptions while maintaining product categories, prices, and inventory information in the same database.

Which database design best supports this objective?

A. Store embeddings in a VECTOR column while keeping relational attributes in standard SQL columns.
B. Store all relational data inside embedding vectors.
C. Replace relational tables with JSON files.
D. Store embeddings only in application memory.

Correct Answer: A

Explanation:
Keeping embeddings alongside relational data enables hybrid queries that combine SQL filtering with semantic similarity search, one of the major strengths of AI-enabled SQL databases.


Question 10

Which factor has the greatest impact on the storage requirements of vector data?

A. Database collation
B. Number of database users
C. Recovery model
D. Number of dimensions in each embedding

Correct Answer: D

Explanation:
Each embedding stores one numeric value per dimension. As the number of dimensions increases, the storage required for each vector grows proportionally, affecting table size, indexes, backups, and memory usage.


Final Exam Tips

  • Ensure the VECTOR column dimension exactly matches the embedding model.
  • Larger embeddings generally improve semantic quality but increase storage and computational costs.
  • Use vector indexes (ANN) for large datasets to improve search performance.
  • Combine relational SQL filtering with vector similarity searches for efficient hybrid queries.
  • Chunk large documents before generating embeddings to improve retrieval quality.
  • Store embedding model metadata and versions to simplify future migrations.
  • Separate embeddings from business data when frequent regeneration is expected.
  • Expect scenario-based questions comparing performance, storage, indexing strategies, and search architectures.

Go to the DP-800 Exam Prep Hub main page

Identify when to use vector-related types and functions for semantic searching, including VECTOR_NORMALIZE, VECTOR_DISTANCE, VECTORPROPERTY, and VECTOR_SEARCH (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25–30%)
   --> Design and implement intelligent search
      --> Identify when to use vector-related types and functions for semantic searching, including VECTOR_NORMALIZE, VECTOR_DISTANCE, VECTORPROPERTY, and VECTOR_SEARCH


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Modern AI-powered database applications increasingly rely on semantic search, which retrieves information based on meaning rather than exact keyword matches. SQL Server 2025 (Preview), Azure SQL Database, and Azure SQL Managed Instance now include native vector capabilities, allowing developers to store embeddings and perform semantic searches directly inside the database.

Instead of exporting data to a separate vector database, developers can use built-in vector data types and functions to compare embeddings, calculate similarity, inspect vector metadata, normalize vectors, and perform efficient nearest-neighbor searches.

For the DP-800 certification exam, you should understand:

  • When semantic search is appropriate
  • The purpose of the VECTOR data type
  • How VECTOR_DISTANCE measures similarity
  • Why VECTOR_NORMALIZE is useful
  • How VECTORPROPERTY retrieves vector metadata
  • When to use VECTOR_SEARCH
  • Performance considerations
  • Common semantic search design patterns

Understanding Semantic Search

Traditional SQL searches compare exact values.

Example:

WHERE Description LIKE '%car%'

This search only returns rows containing the word car.

Semantic search instead compares meaning.

Searching for:

vehicle

may also return:

  • automobile
  • SUV
  • truck
  • sedan
  • crossover

because their embeddings are close together within vector space.


Native Vector Support in SQL

Microsoft SQL now supports vectors as first-class database objects.

Instead of storing embeddings externally, SQL databases can store:

  • relational columns
  • vector columns
  • AI metadata

inside one table.

Example:

ProductIDNameCategoryEmbedding
101LaptopElectronicsVECTOR(1536)

This enables SQL to perform both relational filtering and semantic similarity searches.


VECTOR Data Type

The VECTOR data type stores embedding values.

Example:

Embedding VECTOR(1536)

The dimension must exactly match the embedding model.

Examples:

  • VECTOR(768)
  • VECTOR(1024)
  • VECTOR(1536)
  • VECTOR(3072)

The VECTOR type is the foundation of all semantic search operations.


When to Use VECTOR_DISTANCE

VECTOR_DISTANCE measures how similar two vectors are.

Think of it as calculating the “distance” between meanings.

Smaller distance

More similar

Larger distance

Less similar

Example:

Customer query:

lightweight laptop

Document A

portable notebook computer

Very small distance

Document B

kitchen appliances

Very large distance


Common Uses of VECTOR_DISTANCE

Developers commonly use VECTOR_DISTANCE to:

  • Rank search results
  • Compare embeddings
  • Measure semantic similarity
  • Build recommendation engines
  • Find related documents
  • Identify duplicate content
  • Support AI assistants

Example Scenario

Suppose a user searches:

cloud database backup

SQL compares the query embedding against stored embeddings.

Each document receives a distance score.

Example:

DocumentDistance
Azure Backup Guide0.08
SQL Disaster Recovery0.13
Cloud Storage Overview0.19
Restaurant Menu0.92

The smallest distance represents the best semantic match.


Choosing a Distance Metric

Several similarity calculations exist.

Common metrics include:

  • Cosine similarity
  • Euclidean distance
  • Dot product

SQL vector functions abstract much of this complexity.

Developers simply request semantic similarity without implementing complex mathematics.


Why VECTOR_NORMALIZE Exists

Different vectors may have different magnitudes.

Normalization converts vectors into standardized lengths.

Instead of comparing:

Length + Direction

only

Direction

is compared.

This improves consistency.


When to Normalize Vectors

Normalization is commonly used when:

  • comparing embeddings from different sources
  • improving cosine similarity calculations
  • preprocessing vectors
  • preparing vectors before indexing

Many embedding models already generate normalized vectors.

Others do not.


Benefits of VECTOR_NORMALIZE

Normalization helps:

  • improve comparison consistency
  • reduce magnitude bias
  • improve semantic similarity scoring
  • produce more reliable nearest-neighbor searches

VECTORPROPERTY

VECTORPROPERTY retrieves metadata about vectors.

Rather than comparing vectors, it provides information about them.

Examples include:

  • dimension count
  • storage characteristics
  • metadata
  • vector properties

Developers often use VECTORPROPERTY for:

  • validation
  • diagnostics
  • troubleshooting
  • quality checks

Example Scenario

A developer receives embeddings from multiple AI models.

Some generate:

768 dimensions

Others generate:

1536 dimensions

Before inserting data, the developer verifies dimensions using VECTORPROPERTY.

This prevents invalid inserts.


VECTOR_SEARCH

VECTOR_SEARCH performs semantic nearest-neighbor searches.

Instead of writing complex similarity calculations manually, developers can search vectors directly.

Typical workflow:

User Question

Generate embedding

VECTOR_SEARCH

Most similar documents

Return results


When to Use VECTOR_SEARCH

VECTOR_SEARCH is ideal for:

  • Retrieval-Augmented Generation (RAG)
  • AI chatbots
  • document search
  • recommendation engines
  • semantic search portals
  • customer support systems
  • knowledge bases

VECTOR_SEARCH vs VECTOR_DISTANCE

Although related, they serve different purposes.

VECTOR_DISTANCE

  • compares two vectors

VECTOR_SEARCH

  • searches an entire collection

Think of it this way:

VECTOR_DISTANCE

Individual comparison

VECTOR_SEARCH

Database-wide search


Example Workflow

A user asks:

How do I configure Azure SQL backups?

Step 1

Generate query embedding.

Step 2

VECTOR_SEARCH finds similar documents.

Step 3

Top documents returned.

Step 4

LLM generates an answer.


Combining SQL Filtering with VECTOR_SEARCH

One advantage of SQL databases is hybrid querying.

Example:

Return only:

Category = Documentation

AND

perform semantic search.

This combines relational filtering with AI similarity.

Benefits include:

  • better accuracy
  • faster searches
  • improved relevance

Performance Considerations

Semantic search can become expensive.

Best practices include:

  • use vector indexes
  • normalize vectors when appropriate
  • filter relational data first
  • avoid unnecessarily large embeddings
  • use approximate nearest-neighbor indexes
  • limit returned results

Typical Semantic Search Architecture

Documents

Generate embeddings

Store vectors

Create vector index

User submits question

Generate query embedding

VECTOR_SEARCH

Nearest neighbors

LLM response


Choosing the Correct Function

FunctionPrimary Purpose
VECTORStores embeddings
VECTOR_DISTANCEMeasures similarity between two vectors
VECTOR_NORMALIZEStandardizes vectors before comparison
VECTORPROPERTYReturns vector metadata
VECTOR_SEARCHSearches collections for similar vectors

Best Practices

  • Store embeddings using the VECTOR data type.
  • Match VECTOR dimensions to the embedding model.
  • Use VECTOR_SEARCH for semantic retrieval.
  • Use VECTOR_DISTANCE for direct similarity comparisons.
  • Normalize vectors when required by the similarity metric.
  • Use VECTORPROPERTY to validate vector characteristics.
  • Combine relational filters with vector searches.
  • Create vector indexes for large datasets.
  • Store embedding model versions alongside vectors.
  • Monitor storage and indexing costs.

Common DP-800 Exam Tips

  • Understand when semantic search is preferable to keyword search.
  • Know the purpose of each vector function.
  • Understand that VECTOR_DISTANCE compares two vectors, while VECTOR_SEARCH searches an entire dataset.
  • Remember that VECTOR_NORMALIZE standardizes vectors before comparison.
  • Know that VECTORPROPERTY retrieves vector metadata rather than similarity scores.
  • Expect scenario-based questions requiring you to choose the correct vector function for a given task.
  • Understand how these functions support RAG, AI assistants, recommendation systems, and semantic search.

Practice Exam Questions


Question 1

A development team is building a Retrieval-Augmented Generation (RAG) application. They need to compare a user’s query embedding against thousands of stored document embeddings and return the most semantically similar documents.

Which SQL function is specifically designed for this purpose?

A. VECTOR_DISTANCE

B. VECTOR_SEARCH

C. VECTORPROPERTY

D. VECTOR_NORMALIZE

Correct Answer: B

Explanation:

VECTOR_SEARCH is designed to search an entire collection of stored vectors and return the nearest neighbors based on semantic similarity. VECTOR_DISTANCE compares only two vectors, VECTORPROPERTY returns metadata, and VECTOR_NORMALIZE standardizes vectors before comparison.


Question 2

An application receives embeddings from several AI models. Before storing them in SQL, developers want to verify that every embedding contains the expected number of dimensions.

Which function should they use?

A. VECTORPROPERTY

B. VECTOR_DISTANCE

C. VECTOR_SEARCH

D. VECTOR_NORMALIZE

Correct Answer: A

Explanation:

VECTORPROPERTY returns metadata about a vector, including characteristics such as its dimensions. This makes it ideal for validating vectors before they are stored.


Question 3

A developer needs to calculate how semantically similar two individual product descriptions are after generating embeddings for each.

Which function should be used?

A. VECTORPROPERTY

B. VECTOR_SEARCH

C. VECTOR_DISTANCE

D. VECTOR_NORMALIZE

Correct Answer: C

Explanation:

VECTOR_DISTANCE calculates the similarity or distance between two vectors. It is appropriate when directly comparing one embedding against another rather than searching an entire dataset.


Question 4

A machine learning engineer wants to eliminate differences caused by varying vector magnitudes before calculating cosine similarity.

Which function is most appropriate?

A. VECTORPROPERTY

B. VECTOR_SEARCH

C. VECTOR_DISTANCE

D. VECTOR_NORMALIZE

Correct Answer: D

Explanation:

VECTOR_NORMALIZE scales vectors to a consistent length while preserving their direction. This improves similarity calculations that rely on normalized vectors, particularly cosine similarity.


Question 5

A customer support chatbot first filters documentation to only include networking articles and then performs semantic retrieval over those documents.

What is the primary advantage of this approach?

A. It removes the need for embeddings.

B. It combines relational filtering with semantic search for improved relevance.

C. It converts keyword search into full-text search.

D. It prevents vector indexing.

Correct Answer: B

Explanation:

Filtering relational data before performing vector search reduces the search space and increases the relevance of returned results, improving both performance and accuracy.


Question 6

A SQL developer needs to rank five candidate documents according to how closely each one matches a user’s question.

Which function should be applied repeatedly against each candidate vector?

A. VECTOR_DISTANCE

B. VECTOR_SEARCH

C. VECTORPROPERTY

D. VECTOR_NORMALIZE

Correct Answer: A

Explanation:

VECTOR_DISTANCE computes similarity between two vectors. Developers can compare the query vector against multiple document vectors and rank the results by the smallest distance.


Question 7

Which scenario is the best use case for VECTOR_SEARCH?

A. Determining the number of dimensions stored within a vector

B. Standardizing vectors before storage

C. Finding the most similar documents across an entire knowledge base

D. Comparing only two vectors for similarity

Correct Answer: C

Explanation:

VECTOR_SEARCH is optimized for nearest-neighbor retrieval across an entire vector collection, making it ideal for semantic search applications such as RAG systems and AI assistants.


Question 8

An organization stores millions of embeddings inside Azure SQL Database.

Which action provides the greatest improvement in semantic search performance?

A. Increasing the embedding dimensions

B. Eliminating relational filtering

C. Replacing vectors with VARCHAR columns

D. Creating vector indexes

Correct Answer: D

Explanation:

Vector indexes significantly improve nearest-neighbor search performance over large datasets. Without indexing, vector searches become increasingly expensive as data volumes grow.


Question 9

A developer mistakenly uses VECTOR_SEARCH when they simply need to compare two embeddings generated during a unit test.

Which function would have been the more appropriate choice?

A. VECTORPROPERTY

B. VECTOR_DISTANCE

C. VECTOR_NORMALIZE

D. VECTOR_SEARCH

Correct Answer: B

Explanation:

VECTOR_DISTANCE compares two vectors directly. VECTOR_SEARCH is intended for searching an entire vector collection and would introduce unnecessary overhead for a simple comparison.


Question 10

Which statement best describes VECTORPROPERTY?

A. It calculates semantic similarity between vectors.

B. It searches vector indexes for nearest neighbors.

C. It retrieves metadata about stored vectors.

D. It converts text into embeddings.

Correct Answer: C

Explanation:

VECTORPROPERTY returns information about vectors, such as their dimensions or other characteristics. It does not calculate similarity, generate embeddings, or perform semantic searches.


DP-800 Exam Tips

  • Know the distinction between VECTOR_DISTANCE (two-vector comparison) and VECTOR_SEARCH (collection-wide nearest-neighbor search).
  • Use VECTORPROPERTY to inspect or validate vector metadata before processing.
  • Apply VECTOR_NORMALIZE when your similarity metric or embedding workflow benefits from normalized vectors.
  • Combine relational filtering with semantic search to improve performance and relevance.
  • Create vector indexes for large datasets to optimize semantic search operations.
  • Expect scenario-based exam questions that require selecting the appropriate vector function based on a real-world AI application, such as RAG, semantic search, recommendation systems, or AI chatbots.

Go to the DP-800 Exam Prep Hub main page

Choose between using ANN and ENN for vector search (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25–30%)
   --> Design and implement intelligent search
      --> Choose between using ANN and ENN for vector search


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Vector search is the foundation of modern AI-powered applications such as Retrieval-Augmented Generation (RAG), semantic search, recommendation engines, document similarity, and intelligent assistants. As vector databases grow from thousands to millions of embeddings, selecting the appropriate search algorithm becomes increasingly important.

One of the most important architectural decisions is choosing between:

  • Approximate Nearest Neighbor (ANN) search
  • Exact Nearest Neighbor (ENN) search

Although both methods retrieve vectors that are similar to a query vector, they differ significantly in performance, scalability, accuracy, resource usage, and appropriate use cases.

For the DP-800 exam, candidates should understand when to use ANN versus ENN, how vector indexes influence each approach, and the trade-offs involved in balancing search speed with search accuracy.


Understanding Nearest Neighbor Search

Once embeddings have been generated for documents, products, images, or other data, a user query is also converted into an embedding.

The search engine must identify the vectors that are “closest” to the query vector.

Closeness is typically measured using:

  • Cosine similarity
  • Euclidean distance (L2)
  • Dot product

The challenge becomes finding the nearest vectors efficiently.

If a database contains:

  • 5,000 vectors
  • 500,000 vectors
  • 50 million vectors

the search strategy dramatically affects response time.


Exact Nearest Neighbor (ENN)

Exact Nearest Neighbor performs an exhaustive comparison.

Every stored vector is compared against the query vector.

The system computes the distance to every record before returning the closest matches.

Characteristics

  • Searches every vector
  • Produces mathematically exact results
  • No approximation
  • Highest accuracy
  • Computationally expensive
  • Slower as data grows

ENN Workflow

Query Vector
Compare against Vector 1
Compare against Vector 2
Compare against Vector 3
...
Compare against Vector N
Sort by similarity
Return Top K

Advantages of ENN

Maximum Accuracy

Every possible vector is evaluated.

No relevant documents are skipped.


Deterministic Results

The same query always produces the same ranking.


No Index Approximation

Results represent the actual nearest neighbors.


Simpler Conceptually

The algorithm is straightforward.

No graph traversal or approximation heuristics are involved.


Disadvantages of ENN

Poor Scalability

Performance decreases linearly with dataset size.

Examples:

  • 1,000 vectors → very fast
  • 100,000 vectors → acceptable
  • 10 million vectors → slow
  • 100 million vectors → often impractical

High CPU Usage

Every query compares against every stored embedding.


Higher Latency

Search time increases as the vector collection grows.


Common ENN Use Cases

ENN is appropriate when:

  • Maximum precision is required
  • Dataset is relatively small
  • Scientific applications require exact matches
  • Benchmarking ANN algorithms
  • Testing search quality
  • Evaluation environments

Examples include:

  • Medical research
  • Financial analytics
  • Legal document comparison
  • Academic datasets
  • Quality assurance testing

Approximate Nearest Neighbor (ANN)

Approximate Nearest Neighbor avoids comparing every vector.

Instead, it uses specialized vector indexes that intelligently narrow the search space.

The goal is to find vectors that are almost certainly among the nearest neighbors while dramatically improving search speed.

ANN typically achieves:

  • 95–99.9% recall
  • Much lower latency
  • Massive scalability

ANN Workflow

Query Vector
Search Vector Index
Explore Nearby Candidates
Evaluate Candidate Vectors
Return Top K

Instead of examining millions of vectors, ANN may evaluate only a few hundred or a few thousand candidate vectors.


Advantages of ANN

Extremely Fast

ANN dramatically reduces search time.

Milliseconds instead of seconds.


Highly Scalable

Suitable for:

  • Millions of vectors
  • Tens of millions
  • Hundreds of millions
  • Billions of vectors

Lower Compute Costs

Fewer distance calculations are required.


Excellent User Experience

Ideal for interactive AI applications requiring real-time responses.


Production Ready

Nearly every modern AI search engine uses ANN.

Examples include:

  • Azure AI Search
  • Azure SQL vector indexes
  • Azure Cosmos DB vector search
  • Pinecone
  • Milvus
  • Weaviate
  • Qdrant
  • FAISS
  • pgvector with ANN indexes

Disadvantages of ANN

Results Are Approximate

Occasionally, the true nearest neighbor may not be returned.

Instead, the algorithm returns vectors that are extremely close.


Slight Reduction in Recall

Typical recall values:

  • 95%
  • 98%
  • 99%

depending on index configuration.


Index Maintenance

ANN requires building and maintaining vector indexes.


Additional Memory Usage

Indexes consume additional storage.


ANN vs ENN Comparison

FeatureENNANN
Accuracy100%Nearly 100%
SpeedSlowerMuch faster
ScalabilityPoorExcellent
Uses Vector IndexNoYes
CPU UsageHighLower
Memory UsageLowerHigher
Best for Small DataYesSometimes
Best for Large DataNoYes
Typical Production ChoiceRareVery Common

Why ANN Is Usually Preferred

Most enterprise AI applications prioritize:

  • Fast responses
  • Interactive user experiences
  • Large knowledge bases
  • Millions of documents

Waiting several seconds for every search is unacceptable.

Therefore, ANN has become the industry standard for production semantic search.

For example:

A chatbot searching:

  • 8 million support articles

cannot realistically compare every embedding.

Instead, ANN rapidly narrows the candidate set before computing exact similarity among only the most promising vectors.


Recall vs Accuracy

One of the most important concepts is recall.

Recall measures how many of the true nearest neighbors are successfully returned.

Example:

Suppose the true Top 10 neighbors are:

A
B
C
D
E
F
G
H
I
J

An ANN search returns:

A
B
C
D
E
F
G
H
I
K

Recall is:

9 / 10 = 90%

Although one neighbor is missing, the results are still highly useful for most AI applications.

Many ANN algorithms achieve recall rates above 99%.


Popular ANN Algorithms

Several indexing algorithms support ANN search.

Common examples include:

HNSW (Hierarchical Navigable Small World)

Most common modern ANN algorithm.

Advantages:

  • Very fast
  • Excellent recall
  • High-quality results
  • Widely used

IVF (Inverted File Index)

Partitions vectors into clusters.

Search examines only relevant clusters.

Good for extremely large datasets.


DiskANN

Optimized for very large vector collections stored partly on disk.

Designed for cloud-scale systems.


Product Quantization (PQ)

Compresses vectors to reduce memory usage.

Often combined with IVF.


Choosing Between ANN and ENN

Choose ENN When

  • Dataset is small
  • Exact results are mandatory
  • Benchmarking search quality
  • Scientific analysis
  • Compliance requires deterministic behavior
  • Testing vector models

Choose ANN When

  • Dataset contains millions of vectors
  • Response time matters
  • Building chatbots
  • Implementing RAG
  • Semantic document search
  • Recommendation systems
  • AI copilots
  • Enterprise knowledge bases

ANN in Azure SQL

Azure SQL’s vector search capabilities are designed to support scalable semantic search workloads.

When vector indexes are implemented, Azure SQL can perform ANN searches efficiently, making it practical to query very large embedding collections while maintaining excellent recall.

This enables AI-powered applications to combine:

  • Relational filtering
  • Vector similarity
  • SQL queries
  • AI inference

within a single database platform.


ANN and Hybrid Search

Many production applications combine ANN with traditional filtering.

Example:

A company stores:

  • 20 million product embeddings

A customer searches:

“Wireless ergonomic keyboard”

The query first filters:

Category = Electronics
Brand = Microsoft
Price < $150

Then ANN searches only the filtered candidate vectors.

This combination improves:

  • Speed
  • Relevance
  • Scalability

DP-800 Exam Tips

  • Understand that ENN performs exhaustive comparisons, while ANN uses vector indexes to accelerate nearest-neighbor retrieval.
  • Remember that ANN trades a small amount of accuracy for significant gains in performance and scalability, making it the preferred option for production AI systems.
  • Be familiar with HNSW, IVF, and other ANN indexing techniques at a conceptual level.
  • Know that ENN is appropriate for small datasets, benchmarking, and scenarios requiring mathematically exact results.
  • Expect scenario-based questions asking which approach is best based on dataset size, latency requirements, scalability, and accuracy expectations.
  • Recognize that ANN is the default choice for RAG systems, semantic search, recommendation engines, AI assistants, and enterprise knowledge bases containing millions of embeddings.

Practice Exam Questions


Question 1

A company has built a Retrieval-Augmented Generation (RAG) solution that searches through 50 million document embeddings. Users expect responses within two seconds. Which vector search approach is the most appropriate?

A. Exact Nearest Neighbor (ENN) because it guarantees mathematically exact results for every query

B. Approximate Nearest Neighbor (ANN) because it provides low-latency searches while maintaining high recall

C. Sequential table scans because they avoid maintaining vector indexes

D. Full-text search because embeddings are not required for semantic search

Correct Answer: B

Explanation: ANN is specifically designed for large-scale vector datasets where fast response times are essential. It dramatically reduces search latency while maintaining very high recall, making it ideal for production RAG systems.


Question 2

A research laboratory is validating a new embedding model and requires every query to return the mathematically closest vectors with no approximation. Which search method should be used?

A. Hybrid search

B. Hierarchical Navigable Small World (HNSW)

C. Exact Nearest Neighbor (ENN)

D. Approximate Nearest Neighbor (ANN)

Correct Answer: C

Explanation: ENN compares the query vector against every stored vector, guaranteeing exact nearest-neighbor results. This makes it appropriate for benchmarking, scientific validation, and testing.


Question 3

What is the primary advantage of Approximate Nearest Neighbor (ANN) search over Exact Nearest Neighbor (ENN) search?

A. ANN always returns more accurate results.

B. ANN eliminates the need for vector embeddings.

C. ANN significantly improves search performance and scalability by reducing the number of vectors evaluated.

D. ANN only works with relational databases.

Correct Answer: C

Explanation: ANN achieves much faster searches by using specialized vector indexes to evaluate only the most promising candidate vectors instead of comparing every vector.


Question 4

A database contains approximately 2,500 embeddings used by a legal review application where accuracy is more important than response time. Which search strategy is most appropriate?

A. Approximate Nearest Neighbor (ANN)

B. Hybrid search

C. Semantic ranking

D. Exact Nearest Neighbor (ENN)

Correct Answer: D

Explanation: With a relatively small dataset and strict accuracy requirements, ENN is preferred because it guarantees exact nearest-neighbor results.


Question 5

Which statement best describes the concept of recall in Approximate Nearest Neighbor search?

A. It measures how quickly a query completes.

B. It measures the percentage of true nearest neighbors successfully returned.

C. It measures the amount of memory consumed by the vector index.

D. It measures the total number of vectors stored.

Correct Answer: B

Explanation: Recall measures how many of the actual nearest neighbors are retrieved by the ANN algorithm. Higher recall indicates results that more closely match those of an exact search.


Question 6

Which indexing algorithm is most commonly associated with modern ANN implementations due to its excellent balance of speed and recall?

A. HNSW (Hierarchical Navigable Small World)

B. B-tree

C. Hash index

D. Clustered columnstore index

Correct Answer: A

Explanation: HNSW is one of the most widely used ANN algorithms because it provides fast searches with excellent recall for large vector datasets.


Question 7

A development team notices that vector search performance decreases as the database grows from thousands to tens of millions of embeddings. Which architectural change is most likely to improve scalability?

A. Replace vector embeddings with keyword indexes.

B. Use ENN for every query.

C. Disable vector indexes.

D. Implement ANN with an appropriate vector index.

Correct Answer: D

Explanation: ANN combined with vector indexes is specifically designed to scale efficiently to millions or even billions of embeddings while maintaining acceptable accuracy.


Question 8

Which characteristic is typically associated with Exact Nearest Neighbor (ENN) search?

A. Uses approximation techniques to improve performance.

B. Compares only a subset of candidate vectors.

C. Performs exhaustive comparisons against every stored vector.

D. Requires HNSW indexing.

Correct Answer: C

Explanation: ENN performs a complete comparison against all stored vectors, ensuring mathematically exact results but requiring significantly more computation.


Question 9

An AI-powered product recommendation system serves millions of users each day. The recommendation engine must respond in milliseconds while maintaining highly relevant results. Which approach best meets these requirements?

A. Exact Nearest Neighbor (ENN)

B. Sequential vector scans

C. ANN using vector indexes

D. Full-table scans followed by sorting

Correct Answer: C

Explanation: ANN is optimized for production AI workloads that require low latency and high scalability while maintaining high-quality semantic search results.


Question 10

Which statement best summarizes the trade-off between ANN and ENN?

A. ENN sacrifices accuracy for better scalability.

B. ANN always returns identical results to ENN.

C. ENN requires vector indexes while ANN does not.

D. ANN slightly reduces accuracy in exchange for dramatically improved search performance and scalability.

Correct Answer: D

Explanation: The primary trade-off is that ANN accepts a small reduction in accuracy (typically maintaining 95–99%+ recall) to achieve significantly faster query performance and support very large datasets.


Go to the DP-800 Exam Prep Hub main page

Evaluate vector index types and metrics (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25–30%)
   --> Design and implement intelligent search
      --> Evaluate vector index types and metrics


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Understanding vector indexes and similarity metrics is essential when building AI-enabled database applications that perform semantic search, retrieval-augmented generation (RAG), recommendation engines, and AI-powered document retrieval. Selecting the correct vector index type and similarity metric has a major impact on search accuracy, scalability, latency, and infrastructure costs.

Traditional database indexes are designed to efficiently locate exact values or values within a range.

Examples include:

  • Primary key indexes
  • Clustered indexes
  • Nonclustered indexes
  • Full-text indexes

These indexes perform extremely well for queries such as:

WHERE CustomerID = 123

or

WHERE LastName LIKE 'Smith%'

However, AI applications frequently need to answer questions based on meaning rather than exact text.

For example:

User query:

“Hotels close to the beach with great seafood.”

Documents may contain:

“Oceanfront resort featuring fresh local cuisine.”

There are no matching keywords, yet both sentences describe the same concept.

This is where vector search becomes essential.


What Is a Vector?

A vector is a numerical representation of text, images, audio, or other data generated by an embedding model.

Instead of storing text as characters, AI models convert information into hundreds or thousands of numeric dimensions.

Example:

"The cat sat on the mat."
[0.183,
-0.442,
0.913,
...
1536 dimensions]

Documents discussing similar concepts produce vectors that are mathematically close together.


Why Vector Indexes Are Needed

Suppose a database contains 10 million document embeddings.

Without an index:

  • every query compares against every vector
  • search complexity becomes enormous
  • latency may reach several seconds

Vector indexes organize vectors to reduce the number of comparisons dramatically while preserving high search quality.


Exact vs Approximate Search

Vector search generally falls into two categories.

Exact Search

Also known as:

  • Brute-force search
  • Exhaustive search

Process:

  1. Compare query vector to every stored vector.
  2. Calculate similarity score.
  3. Sort results.
  4. Return best matches.

Advantages:

  • 100% accurate
  • Always finds nearest neighbor
  • Simple implementation

Disadvantages:

  • Slow
  • Poor scalability
  • High CPU usage

Best for:

  • Small datasets
  • Testing
  • Benchmarking

Approximate Nearest Neighbor (ANN)

ANN algorithms search intelligently instead of comparing every vector.

Advantages:

  • Extremely fast
  • Scales to millions or billions of vectors
  • Lower resource consumption

Tradeoff:

  • Results are extremely close to optimal but not always mathematically perfect.

Most enterprise AI systems use ANN indexes.


Common Vector Index Types

1. Flat Index (Brute Force)

Every vector is scanned.

Query
Compare with Vector 1
Compare with Vector 2
Compare with Vector 3
...
Best Match

Advantages

  • Perfect accuracy
  • No preprocessing
  • Easy to maintain

Disadvantages

  • Slow
  • Doesn’t scale well

Best for

  • Small datasets
  • Testing

2. HNSW (Hierarchical Navigable Small World)

One of the most popular ANN indexes.

Rather than checking every vector, HNSW creates multiple graph layers.

High-level layers:

A
B
C

Lower layers:

A — D — E — F
\ |
G — H

The search begins at higher levels and progressively narrows the search.

Advantages

  • Extremely high recall
  • Very low latency
  • Excellent scalability

Disadvantages

  • More memory required
  • Longer index creation time

Commonly used in:

  • Azure SQL vector search
  • AI search engines
  • Modern vector databases

3. IVF (Inverted File Index)

Vectors are grouped into clusters.

Cluster A
Cluster B
Cluster C
Cluster D

Instead of searching every cluster:

  1. Identify closest cluster.
  2. Search only that cluster.

Advantages

  • Very fast
  • Efficient memory usage

Disadvantages

  • Search quality depends on clustering accuracy.

4. Product Quantization (PQ)

PQ compresses vectors into compact representations.

Instead of storing:

1536 floating-point numbers

it stores compressed codes.

Advantages

  • Huge storage savings
  • Faster searches
  • Lower memory usage

Disadvantages

  • Slight loss of precision

Often combined with IVF.


5. Disk-Based Indexes

Some systems keep indexes primarily on disk instead of RAM.

Advantages

  • Supports enormous datasets

Disadvantages

  • Higher latency

Useful when memory is limited.


Comparing Index Types

IndexAccuracySpeedMemoryTypical Use
FlatHighestSlowMediumSmall datasets
HNSWVery HighVery FastHighEnterprise RAG
IVFHighFastMediumLarge datasets
IVF + PQModerate-HighVery FastLowMassive collections
Disk-basedHighModerateLow RAMVery large databases

Understanding Similarity Metrics

A vector index determines how vectors are organized.

A similarity metric determines how closeness is measured.

Choosing the wrong metric can significantly reduce search quality.


Cosine Similarity

The most widely used similarity metric.

Measures the angle between vectors.

Formula (conceptually):

Similarity = cos(angle)

Identical direction:

1.0

Perpendicular:

0

Opposite direction:

-1

Advantages

  • Ignores vector magnitude
  • Excellent for semantic search
  • Very common in embedding models

Typical uses

  • Document search
  • Chatbots
  • RAG
  • Azure OpenAI embeddings

Euclidean Distance

Measures straight-line distance.

Distance = √((x₂−x₁)²...)

Smaller distance means greater similarity.

Advantages

  • Easy to understand
  • Works well for spatial data

Disadvantages

  • Sensitive to vector magnitude

Dot Product

Calculates the mathematical product of vectors.

Useful when embedding magnitude carries meaning.

Often used by recommendation systems.

Advantages

  • Computationally efficient
  • Good with normalized embeddings

Manhattan Distance

Also called:

L1 distance

Measures movement along axes.

|x1-x2| + |y1-y2|

Less common in vector databases.


Hamming Distance

Used for binary vectors.

Measures the number of differing bits.

Common in binary embeddings.


Choosing the Right Similarity Metric

MetricBest For
Cosine SimilaritySemantic search
Euclidean DistanceSpatial similarity
Dot ProductRecommendation systems
Manhattan DistanceGrid-based comparisons
Hamming DistanceBinary vectors

Matching Metrics to Embedding Models

Many embedding models are trained assuming a particular similarity metric.

Examples:

  • OpenAI embeddings → Cosine similarity
  • Azure OpenAI embeddings → Cosine similarity
  • Sentence Transformer models → Cosine similarity (commonly)
  • Some recommendation models → Dot product

Using the incorrect metric can reduce retrieval quality.


Tradeoffs When Evaluating Vector Indexes

Database developers evaluate multiple characteristics.

Search Accuracy

Higher recall produces better retrieval quality.

Higher accuracy often requires:

  • more memory
  • more CPU
  • larger indexes

Query Latency

AI chat applications typically require responses within milliseconds.

Approximate indexes dramatically reduce latency.


Recall

Recall measures how many true nearest neighbors are returned.

Example:

Actual nearest neighbors:

A
B
C
D
E

Returned:

A
B
C
X
Y

Recall:

3/5 = 60%

Higher recall improves RAG quality.


Memory Usage

HNSW indexes often consume substantial memory.

Compressed indexes require much less.


Build Time

Some indexes build quickly.

Others may require extensive preprocessing.

Large enterprise indexes may take hours to create.


Update Performance

Questions to evaluate:

  • How quickly can vectors be inserted?
  • Can vectors be deleted efficiently?
  • Is index rebuilding required?

Applications with frequent updates may favor indexes that support incremental maintenance.


Vector Index Selection Guidelines

Small Collections (<100K vectors)

Recommended:

  • Flat index

Reason:

  • Simplicity
  • Maximum accuracy

Medium Collections (100K–10M)

Recommended:

  • HNSW

Reason:

  • Excellent speed
  • Excellent recall

Massive Collections (100M+)

Recommended:

  • IVF
  • IVF + PQ

Reason:

  • Reduced storage
  • Excellent scalability

Memory-Constrained Systems

Recommended:

  • Product Quantization
  • Disk-based indexes

Vector Indexes in SQL-Based AI Solutions

Modern SQL platforms increasingly support vector capabilities.

Examples include:

  • SQL databases with vector data types
  • Vector indexes
  • Embedding storage
  • Similarity search functions

These capabilities enable developers to combine structured SQL queries with semantic AI search within a single database solution.


Best Practices

  • Match the similarity metric to the embedding model.
  • Use cosine similarity for most semantic search workloads.
  • Prefer ANN indexes for production systems.
  • Benchmark recall, latency, and throughput before deployment.
  • Monitor index performance as datasets grow.
  • Rebuild or optimize indexes when fragmentation or large-scale updates reduce efficiency.
  • Evaluate memory consumption alongside query performance.
  • Test retrieval quality using realistic user queries.

DP-800 Exam Tips

Remember these key points for the exam:

  • Vector indexes optimize similarity search rather than exact matching.
  • ANN indexes trade a small amount of accuracy for significant performance gains.
  • HNSW is a leading ANN algorithm due to its high recall and low latency.
  • IVF clusters vectors before searching.
  • Product Quantization reduces storage requirements.
  • Cosine similarity is the preferred metric for most semantic search scenarios.
  • Choosing the appropriate similarity metric is just as important as choosing the index type.
  • Retrieval quality depends on embeddings, similarity metrics, and index configuration working together.

Practice Exam Questions

Question 1

A development team is building a Retrieval-Augmented Generation (RAG) solution containing over 15 million document embeddings. The application requires low query latency while maintaining high retrieval accuracy.

Which vector index type is the most appropriate?

A. Flat index

B. HNSW

C. Clustered index

D. Full-text index

Answer: B

Explanation:
HNSW is designed for Approximate Nearest Neighbor (ANN) search and offers excellent recall with very low latency, making it a common choice for large-scale RAG implementations. Flat indexes become too slow at this scale, while clustered and full-text indexes are not vector indexes.


Question 2

Which similarity metric is most commonly used with modern text embedding models for semantic search?

A. Manhattan Distance

B. Euclidean Distance

C. Cosine Similarity

D. Hamming Distance

Answer: C

Explanation:
Cosine similarity compares the angle between vectors rather than their magnitude, making it ideal for semantic search. Many embedding models, including Azure OpenAI embeddings, are designed to work effectively with cosine similarity.


Question 3

A database developer wants mathematically perfect nearest-neighbor results regardless of execution time.

Which search method should be selected?

A. Approximate Nearest Neighbor

B. Product Quantization

C. Exhaustive (Flat) Search

D. IVF

Answer: C

Explanation:
Exhaustive or flat search compares the query against every stored vector, guaranteeing the exact nearest neighbors. This approach is computationally expensive but provides maximum accuracy.


Question 4

What is the primary purpose of Product Quantization (PQ)?

A. Improve SQL joins

B. Increase transaction throughput

C. Normalize embeddings

D. Reduce storage and memory requirements

Answer: D

Explanation:
Product Quantization compresses vectors into compact representations, reducing storage and memory usage while enabling efficient searches. The tradeoff is a small reduction in precision.


Question 5

Which statement best describes Approximate Nearest Neighbor (ANN) indexing?

A. It guarantees perfect search accuracy.

B. It searches every vector sequentially.

C. It balances retrieval accuracy with search performance.

D. It only supports binary vectors.

Answer: C

Explanation:
ANN algorithms reduce search time by avoiding exhaustive comparisons. They provide high-quality results with much better performance than exact search, making them suitable for production AI systems.


Question 6

A team notices that their semantic search results have degraded after switching from cosine similarity to Euclidean distance while using the same embedding model.

What is the most likely cause?

A. The embedding model was trained assuming cosine similarity.

B. Euclidean distance always produces identical results.

C. Vector indexes require clustered tables.

D. SQL Server does not support vectors.

Answer: A

Explanation:
Embedding models are often optimized for specific similarity metrics. Using a different metric than the one assumed during training can reduce retrieval quality even if the vectors themselves remain unchanged.


Question 7

Why do vector indexes improve search performance?

A. They reduce the dimensionality of every embedding.

B. They organize vectors so fewer comparisons are needed.

C. They convert vectors into relational tables.

D. They eliminate the need for embeddings.

Answer: B

Explanation:
Vector indexes structure embeddings so that searches examine only promising candidates instead of every stored vector, significantly reducing query latency.


Question 8

A company has a small proof-of-concept application containing 25,000 document embeddings. Search accuracy is more important than performance.

Which index is the best choice?

A. IVF + PQ

B. HNSW

C. Flat index

D. Disk-based ANN index

Answer: C

Explanation:
For relatively small datasets where absolute accuracy is the priority, a flat index is often the simplest and most accurate solution. Performance remains acceptable because the collection size is limited.


Question 9

Which evaluation metric indicates how many true nearest neighbors are successfully returned during a vector search?

A. Latency

B. Precision

C. Throughput

D. Recall

Answer: D

Explanation:
Recall measures the proportion of actual nearest neighbors that are retrieved by the search algorithm. Higher recall generally leads to better retrieval quality in semantic search and RAG systems.


Question 10

When evaluating different vector index types for a production AI solution, which combination of factors is most important?

A. File size and backup frequency

B. Number of SQL tables and views

C. Search latency, recall, memory usage, and index maintenance

D. Number of stored procedures and triggers

Answer: C

Explanation:
Production vector indexes should be evaluated based on their ability to deliver fast queries, high recall, efficient memory utilization, and manageable maintenance as data volumes grow. These characteristics directly affect the performance and scalability of AI-enabled database solutions.


Go to the DP-800 Exam Prep Hub main page

Implement vector search (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25–30%)
   --> Design and implement intelligent search
      --> Implement vector search


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Implementing vector search is one of the foundational skills for building modern AI-enabled database applications. Vector search enables databases to retrieve information based on semantic meaning rather than exact keyword matches, making it essential for Retrieval-Augmented Generation (RAG), AI assistants, recommendation engines, semantic document search, knowledge management systems, and intelligent enterprise applications.


What Is Vector Search?

Traditional SQL queries search for exact values.

For example:

SELECT *
FROM Products
WHERE ProductName = 'Laptop';

or

WHERE Description LIKE '%wireless%'

These approaches rely on exact text matching.

However, AI applications often need to answer questions like:

“Find documents about reducing cloud costs.”

Relevant documents might contain:

  • Lower Azure spending
  • Optimize infrastructure expenses
  • Cloud cost optimization
  • Reduce operational costs

Although these documents contain different words, they share the same meaning.

Vector search enables databases to find these semantically related documents.


How Vector Search Works

Vector search consists of several stages.

User Query
Embedding Model
Query Vector
Vector Similarity Search
Nearest Neighbor Documents
(Optional)
Large Language Model (LLM)

Instead of comparing text directly, the database compares numeric vector representations generated by an embedding model.


What Is a Vector?

A vector is a high-dimensional numerical representation of data.

Example:

"Azure SQL Database"
[-0.134,
0.281,
0.998,
...
1536 dimensions]

Every document stored in the database has its own embedding vector.

When a user submits a query, the query is also converted into a vector.

The database then compares vectors mathematically to identify the most similar results.


Components of a Vector Search Solution

A complete vector search implementation includes several components.

1. Source Data

Examples include:

  • PDF files
  • Product catalogs
  • Emails
  • Knowledge articles
  • Web pages
  • Support tickets
  • SQL records

2. Embedding Model

The embedding model converts text into vectors.

Popular examples include:

  • Azure OpenAI Embeddings
  • OpenAI text embedding models
  • Sentence Transformers
  • Other compatible embedding models

The embedding model should remain consistent for both indexing and querying.


3. Vector Storage

Embeddings are stored inside the database.

Example table:

DocumentIDContentEmbedding
101Product Manual[1536 values]
102FAQ[1536 values]
103Warranty Guide[1536 values]

Modern SQL databases increasingly support dedicated vector data types.


4. Vector Index

Searching millions of vectors without an index would require comparing every vector.

Vector indexes organize embeddings for efficient similarity searches.

Common vector indexes include:

  • Flat (Exact Search)
  • HNSW
  • IVF
  • IVF + Product Quantization (PQ)

Approximate Nearest Neighbor (ANN) indexes are commonly used in production systems because they significantly reduce search latency while maintaining high recall.


5. Similarity Function

The database determines which vectors are closest.

Common similarity metrics include:

  • Cosine similarity
  • Euclidean distance
  • Dot product

Cosine similarity is the most common metric for semantic search.


Exact Search vs Approximate Search

Exact (Brute Force) Search

The database compares the query vector against every stored vector.

Advantages:

  • Perfect accuracy
  • Guaranteed nearest neighbors

Disadvantages:

  • Slow
  • Poor scalability

Best suited for:

  • Small datasets
  • Testing
  • Validation

Approximate Nearest Neighbor (ANN)

ANN indexes intelligently reduce the search space.

Advantages:

  • Extremely fast
  • Scales to millions or billions of vectors
  • Lower CPU utilization

Tradeoff:

Results are highly accurate but not mathematically perfect.

Most enterprise AI applications use ANN search.


Implementing Vector Search

A typical implementation follows these steps.

Step 1. Prepare Data

Collect the documents.

Examples:

  • Product manuals
  • Policies
  • Emails
  • Support articles

Clean the text by removing unnecessary formatting and duplicate content.


Step 2. Generate Embeddings

Use an embedding model to create vectors.

Example workflow:

Document
Embedding Model
1536-Dimensional Vector

Each document receives one or more embeddings.


Step 3. Store Embeddings

Store:

  • Original text
  • Metadata
  • Embedding vector

Example:

DocumentIDCategoryContentEmbedding
501HRVacation PolicyVector
502ITVPN SetupVector

Metadata enables additional filtering during searches.


Step 4. Create a Vector Index

The vector index accelerates similarity searches.

Without an index:

Query
Compare to every vector

With an ANN index:

Query
Index
Small candidate set
Best matches

Step 5. Convert User Query

The user’s search query is embedded using the same embedding model.

Example:

"How do I connect remotely?"
Embedding Model
Query Vector

Consistency is critical. Using a different embedding model for queries than for indexed documents can significantly reduce search quality.


Step 6. Perform Similarity Search

The database compares the query vector with stored vectors.

Example SQL pseudocode:

SELECT TOP 5
DocumentID,
SimilarityScore
FROM Documents
ORDER BY VECTOR_DISTANCE(Embedding, @QueryVector);

The exact syntax varies depending on the database platform and vector search implementation.


Step 7. Return Results

The application retrieves the closest documents.

Example:

RankDocument
1VPN Configuration Guide
2Remote Access FAQ
3Employee Network Policy

Vector Search Workflow

Documents
Generate Embeddings
Store Vectors
Create Vector Index
User Query
Generate Query Embedding
Similarity Search
Top Matching Documents

Filtering Vector Search Results

Many applications combine vector search with traditional SQL filtering.

Example:

Semantic Search
+
WHERE Department = 'Finance'
+
ORDER BY Similarity

This approach is often called hybrid filtering, allowing organizations to limit searches by structured metadata while still leveraging semantic similarity.

Examples of filters include:

  • Department
  • Date
  • Customer
  • Region
  • Security classification
  • Language

Hybrid Search

Hybrid search combines:

  • Keyword search
  • Full-text search
  • Vector search

Example:

Keyword Search
+
Vector Search
Combined Ranking
Final Results

Benefits include:

  • Higher relevance
  • Better handling of synonyms
  • Stronger ranking
  • Improved user satisfaction

Many enterprise AI search systems use hybrid search instead of vector search alone.


Using Vector Search in RAG

Retrieval-Augmented Generation relies heavily on vector search.

Workflow:

User Question
Embedding
Vector Search
Relevant Documents
LLM
Grounded Response

Instead of relying solely on the LLM’s training data, the model uses retrieved documents as grounding data.

Benefits:

  • More accurate responses
  • Reduced hallucinations
  • Access to current organizational knowledge

Common Vector Search Scenarios

Enterprise Knowledge Search

Users ask natural language questions.

Example:

“How do I reset my VPN password?”

The database retrieves the most semantically relevant documentation.


Customer Support

Support engineers search:

“Printer won’t connect.”

Relevant troubleshooting documents are retrieved even if they use different wording.


Product Recommendation

Customers searching for:

“Comfortable running shoes”

may receive products described as:

  • Lightweight trainers
  • Cushioned athletic footwear
  • Marathon shoes

Legal Document Search

Law firms search by legal concepts rather than exact wording.


Healthcare Knowledge Bases

Clinicians retrieve similar cases based on symptoms rather than identical terminology.


Performance Considerations

Database developers should evaluate:

Search Latency

Users expect responses within milliseconds.

ANN indexes dramatically reduce latency.


Recall

Recall measures how many of the true nearest neighbors are returned.

Higher recall generally improves RAG quality.


Index Size

Larger indexes often improve retrieval quality but require more memory.


Memory Consumption

HNSW indexes typically consume more RAM than compressed indexes.


Index Build Time

Large vector indexes may require significant time to build.

Plan for maintenance windows when rebuilding indexes.


Update Frequency

Applications with frequent inserts and deletes should use index types that efficiently support incremental updates.


Common Implementation Mistakes

Using Different Embedding Models

Documents embedded with one model should not be searched using vectors generated by a different model.


Using the Wrong Similarity Metric

Many embedding models assume cosine similarity.

Using Euclidean distance or dot product incorrectly may reduce search accuracy.


Not Creating a Vector Index

Searching without an index performs poorly on large datasets.


Ignoring Metadata

Metadata filtering significantly improves result quality.


Returning Too Many Documents

Retrieving excessive documents increases latency and may overwhelm downstream LLMs in RAG systems.


Best Practices

  • Use the same embedding model for indexing and querying.
  • Choose a similarity metric recommended for the embedding model.
  • Use ANN indexes for production environments.
  • Combine vector search with metadata filters when appropriate.
  • Consider hybrid search for the highest-quality results.
  • Benchmark recall, latency, and throughput using realistic workloads.
  • Monitor index growth and rebuild or optimize indexes when necessary.
  • Store both embeddings and the original source content.

DP-800 Exam Tips

Remember these key points for the exam:

  • Vector search retrieves data based on semantic similarity rather than exact text.
  • Embeddings are numerical representations generated by AI models.
  • The same embedding model should be used for both indexing and querying.
  • Vector indexes improve search performance by reducing the number of vector comparisons.
  • Approximate Nearest Neighbor (ANN) indexes provide fast searches with high recall.
  • Cosine similarity is the most commonly used metric for semantic search.
  • Hybrid search combines keyword search with vector search to improve relevance.
  • Vector search is a core component of Retrieval-Augmented Generation (RAG).

Practice Exam Questions

Question 1

A company is building a chatbot that answers employee questions using internal policy documents. The solution converts both documents and user queries into embeddings before searching for relevant information.

What is the primary purpose of generating embeddings?

A. To compress documents for storage

B. To represent text numerically so semantic similarity can be measured

C. To encrypt sensitive information

D. To improve SQL transaction performance

Answer: B

Explanation:
Embeddings convert text into high-dimensional numerical vectors that capture semantic meaning. These vectors enable similarity comparisons that go beyond exact keyword matching.


Question 2

A developer plans to implement vector search against a database containing 30 million document embeddings.

Which approach provides the best balance between scalability and query performance?

A. Sequentially compare every vector

B. Use a clustered index

C. Use an Approximate Nearest Neighbor (ANN) vector index

D. Create additional foreign keys

Answer: C

Explanation:
ANN indexes are specifically designed to support efficient vector similarity searches across very large datasets while maintaining high recall and low latency.


Question 3

A user searches for:

“Affordable cloud storage”

The returned documents discuss:

  • Cost-effective cloud backup
  • Low-cost online storage
  • Budget-friendly data storage

Why were these documents returned?

A. SQL wildcard matching

B. Lexical keyword matching

C. Primary key lookup

D. Semantic similarity using vector search

Answer: D

Explanation:
Vector search retrieves content based on semantic meaning rather than identical words, enabling related concepts and synonyms to be found.


Question 4

Which statement best describes hybrid search?

A. It combines vector search with keyword or full-text search.

B. It stores vectors in multiple databases.

C. It replaces embeddings with SQL indexes.

D. It searches only relational columns.

Answer: A

Explanation:
Hybrid search combines traditional lexical search with semantic vector search, often producing more relevant and comprehensive search results.


Question 5

Why should the same embedding model be used for both document indexing and query generation?

A. It reduces storage costs.

B. It eliminates the need for vector indexes.

C. It ensures vectors exist in the same semantic space for meaningful comparisons.

D. It automatically creates SQL indexes.

Answer: C

Explanation:
Embeddings generated by different models may occupy different vector spaces, making similarity calculations unreliable and reducing retrieval quality.


Question 6

What is the primary function of a vector index?

A. Encrypt embedding vectors

B. Reduce the number of vector comparisons during searches

C. Compress relational tables

D. Replace SQL indexes

Answer: B

Explanation:
Vector indexes organize embeddings so the search engine evaluates only the most promising candidates instead of comparing every stored vector.


Question 7

A Retrieval-Augmented Generation (RAG) application performs vector search before sending retrieved documents to a large language model.

Why is this retrieval step important?

A. It reduces SQL storage requirements.

B. It converts SQL tables into vectors.

C. It grounds the model with relevant information, improving response accuracy.

D. It eliminates the need for embeddings.

Answer: C

Explanation:
RAG retrieves relevant documents that provide context to the LLM, helping produce accurate, current, and evidence-based responses while reducing hallucinations.


Question 8

Which SQL capability is most commonly combined with vector search to narrow search results to specific business data?

A. Metadata filtering using WHERE clauses

B. ALTER TABLE statements

C. Transaction logging

D. Foreign key constraints

Answer: A

Explanation:
Combining vector search with structured SQL filters allows applications to restrict results by attributes such as department, region, or document type while maintaining semantic relevance.


Question 9

A developer performs vector similarity searches without creating a vector index.

What is the most likely consequence?

A. Embeddings become corrupted.

B. Query performance decreases significantly as the dataset grows.

C. SQL transactions stop working.

D. Documents cannot be embedded.

Answer: B

Explanation:
Without a vector index, the system typically performs an exhaustive comparison against every stored vector, resulting in much slower query performance on large datasets.


Question 10

Which statement best summarizes the role of vector search in AI-enabled database applications?

A. It replaces relational databases.

B. It removes the need for SQL queries.

C. It automatically generates embeddings.

D. It enables retrieval of information based on semantic meaning instead of exact text matching.

Answer: D

Explanation:
Vector search is designed to retrieve semantically similar information by comparing embedding vectors, making it a foundational capability for intelligent search, recommendation systems, and RAG-based applications.


Go to the DP-800 Exam Prep Hub main page