Usare etichette per instrumentare query in SQL Data WarehouseUse labels to instrument queries in SQL Data Warehouse

SQL Data Warehouse supporta un concetto detto etichette di query.SQL Data Warehouse supports a concept called query labels. Prima di approfondire il concetto, eccone un esempio:Before going into any depth let's look at an example of one:

SELECT *
FROM sys.tables
OPTION (LABEL = 'My Query Label')
;

L'ultima riga contrassegna la stringa 'My Query Label' per la query.This last line tags the string 'My Query Label' to the query. Ciò è particolarmente utile in quanto l'etichetta supporta la query tramite le DMV.This is particularly helpful as the label is query-able through the DMVs. In questo modo si dispone di un meccanismo per tenere traccia di query problematiche e per identificare lo stato di avanzamento tramite un'esecuzione ETL.This provides us with a mechanism to track down problem queries and also to help identify progress through an ETL run.

Una buona convenzione di denominazione è estremamente utile in questo caso.A good naming convention really helps here. Ad esempio, una stringa simile a ' PROJECT : PROCEDURE : STATEMENT : COMMENT' può facilitare l'identificazione della query in tutto il codice nel controllo del codice sorgente.For example something like ' PROJECT : PROCEDURE : STATEMENT : COMMENT' would help to uniquely identify the query in amongst all the code in source control.

Per la ricerca in base all'etichetta, è possibile usare la query seguente che usa le viste a gestione dinamica:To search by label you can use the following query that uses the dynamic management views:

SELECT  *
FROM    sys.dm_pdw_exec_requests r
WHERE   r.[label] = 'My Query Label'
;

Nota

È essenziale racchiudere tra parentesi quadre o virgolette doppie la parola label durante l'esecuzione della query.It is essential that you wrap square brackets or double quotes around the word label when querying. Label è una parola riservata e causa un errore se non viene delimitata.Label is a reserved word and will caused an error if it has not been delimited.

Passaggi successiviNext steps

Per altri suggerimenti sullo sviluppo, vedere la panoramica dello sviluppo.For more development tips, see development overview.