Sql-Server

L'AI dove vivono i dati aziendali (parte 5): VECTOR_DISTANCE vs VECTOR_SEARCH, come cambia l'execution plan?

Riccardo Perico

Introduzione

Una delle innovazioni più recenti e con più hype nel mondo SQL Server è la ricerca semantica, resa possibile grazie al nuovo tipo di dato Vector e a funzioni specifiche come VECTOR_DISTANCE e VECTOR_SEARCH.

Recentemente stavo lavorando a un progetto mettendo in pratica la ricerca semantica e mi sono trovato a cercare di capire le differenze tra le due funzioni, concentrandomi soprattutto sulle performance, scoprendo che ci sono differenze palesi ed altre meno evidenti che influenzano parecchio il modo in cui l’optimizer costruisce il piano di esecuzione.

L'AI dove vivono i dati aziendali (parte 4): Ricerca vettoriale indicizzata con SQL Server 2025

Sergio Govoni

Introduzione

Nel terzo articolo di questa serie abbiamo usato gli embeddings generati in precedenza per eseguire ricerche semantiche direttamente da T-SQL con la funzione VECTOR_DISTANCE.

Abbiamo trasformato una richiesta espressa in linguaggio naturale in un vettore, lo abbiamo confrontato con gli embeddings salvati nella tabella ai_demo.PostSearchDocuments e ordinato il risultato in base alla distanza semantica.

L'AI dove vivono i dati aziendali (parte 3): Ricerca semantica con T-SQL

Sergio Govoni

Introduzione

Nel secondo articolo di questa serie abbiamo creato un external model verso Azure OpenAI e abbiamo usato la funzione AI_GENERATE_EMBEDDINGS per generare gli embeddings dei testi presenti nella tabella ai_demo.PostSearchDocuments.

La tabella ai_demo.PostSearchDocuments nel database StackOverflowMini contiene ora due elementi essenziali:

  1. I dati grezzi, come titolo, tag, testi delle domande e delle risposte
  2. La colonna Embedding, che contiene la rappresentazione vettoriale del testo costruito nella colonna DocumentText

In questo terzo articolo useremo finalmente gli embeddings per eseguire ricerche semantiche direttamente da T-SQL. L’obiettivo è trovare testi simili per significato rispetto a una richiesta espressa in linguaggio naturale, anche quando il testo cercato non coincide esattamente con le parole presenti nei documenti.

L'AI dove vivono i dati aziendali (parte 2): Generare embeddings con Azure OpenAI e T-SQL

Sergio Govoni

Introduzione

Nel primo articolo di questa serie dedicata all’applicazione dell’AI sui dati aziendali, abbiamo preparato il terreno per uno scenario di ricerca semantica con SQL Server 2025 o Azure SQL. Usando il database StackOverflowMini, abbiamo creato lo schema ai_demo e la tabella ai_demo.PostSearchDocuments, pensata per contenere documenti testuali costruiti a partire da domande, risposte, tag e metadati della tabella dbo.Posts.

cu-watcher: monitoraggio automatico degli aggiornamenti SQL Server

Danilo Dominici

Tenere traccia di tutti gli aggiornamenti cumulativi (CU) e General Distribution Release (GDR) di SQL Server è un compito noioso ma critico per chi gestisce ambienti di produzione. Microsoft pubblica le informazioni sulle build su Microsoft Learn, ma non esiste un feed strutturato che avvisi quando esce una nuova patch. cu-watcher risolve il problema: è un tool scritto in Go multipiattaforma, pensato per essere lanciato da cron/Windows Task Scheduler, che scarica le pagine delle build, le analizza, le persiste su SQL Server e invia un’email quando viene rilevata una nuova release.

Perfmon Vault: contatori Perfmon in SQL Server

Gianluca Hotz

Perfmon Vault è un mini-progetto work in progress che ho realizzato per importare contatori Perfmon (Windows e/o SQL Server) in SQL Server e conservarli a lungo termine per analisi storiche e trend.

Perché Ordered Columnstore?

Il progetto nasce come PoC per capire come sfruttare al meglio l’Ordered Clustered Columnstore Index, introdotto in SQL Server 2025.