Condividi tramite


DMVs (Viste di Gestione Dinamica)

Si applica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Le dmv (Dynamic Management Views) di Analysis Services sono query che restituiscono informazioni sugli oggetti modello, sulle operazioni del server e sull'integrità del server. La query, basata su SQL, è un'interfaccia per gli insiemi di righe dello schema. I set di righe dello schema sono tabelle prescritte che contengono informazioni sugli oggetti e sullo stato del server di Analysis Services, inclusi lo schema del database, le sessioni attive, le connessioni, i comandi e i processi in esecuzione nel server.

Per i modelli semantici di Power BI Premium, le DMV per l'esecuzione di query tramite l'endpoint XMLA sono limitate a quelle che richiedono autorizzazioni di amministratore del database. Alcune DMV non sono supportate perché richiedono autorizzazioni di amministratore del server Analysis Services.

Le query DMV sono un'alternativa all'esecuzione di comandi XML/A Discover. Per la maggior parte degli amministratori, la scrittura di una query DMV è più semplice perché la sintassi è basata su SQL. Inoltre, il risultato viene restituito in un formato di tabella più facile da leggere e copiare.

La maggior parte delle query DMV usa un'istruzione SELECT e lo schema $System con un set di righe dello schema XML/A, ad esempio:

SELECT * FROM $System.<schemaRowset>  

Le query DMV restituiscono informazioni sullo stato del server e dell'oggetto al momento dell'esecuzione della query. Per monitorare le operazioni in tempo reale, usare invece il tracciamento. Per altre informazioni sul monitoraggio in tempo reale tramite tracce, vedere Usare SQL Server Profiler per monitorare Analysis Services.

Sintassi delle query

Il motore di query per i DMVs è il parser di estrazione di dati. La sintassi della query DMV si basa sull'istruzione SELECT (DMX). Sebbene la sintassi di query DMV sia basata su un'istruzione SQL SELECT, non supporta la sintassi completa di un'istruzione SELECT. In particolare, JOIN, GROUP BY, LIKE, CAST e CONVERT non sono supportati.

SELECT [DISTINCT] [TOP <n>] <select list>  
FROM $System.<schemaRowset>  
[WHERE <condition expression>]  
[ORDER BY <expression>[DESC|ASC]]  

Nell'esempio seguente per DISCOVER_CALC_DEPENDENCY viene illustrato l'uso della clausola WHERE per fornire un parametro alla query:

SELECT * FROM $System.DISCOVER_CALC_DEPENDENCY  
WHERE OBJECT_TYPE = 'ACTIVE_RELATIONSHIP'  

Per i set di righe dello schema con restrizioni, la query deve includere la funzione SYSTEMRESTRICTSCHEMA. Nell'esempio seguente vengono restituiti metadati CSDL relativi a modelli tabulari a livello di compatibilità 1103. Si noti che CATALOG_NAME fa distinzione tra maiuscole e minuscole:

Select * from SYSTEMRESTRICTSCHEMA ($System.Discover_csdl_metadata, [CATALOG_NAME] = 'Adventure Works DW')  

Esempi e scenari

Una query DMV consente di rispondere a domande su sessioni e connessioni attive e quali oggetti utilizzano la maggior parte della CPU o della memoria in un momento specifico. Per esempio:

Select * from $System.discover_object_activity
Questa query riporta l'attività dell'oggetto dal momento in cui il servizio è stato avviato l'ultima volta.

Select * from $System.discover_object_memory_usage
Questa query segnala l'utilizzo della memoria in base all'oggetto .

Select * from $System.discover_sessions
Questa query segnala le sessioni attive, inclusi l'utente e la durata della sessione.

Select * from $System.discover_locks
Questa query fornisce una fotografia dei blocchi utilizzati in un determinato momento.

Strumenti e autorizzazioni

È possibile usare qualsiasi applicazione client che supporti query MDX o DMX. Nella maggior parte dei casi, è consigliabile usare SQL Server Management Studio. Per eseguire query su una DMV, è necessario disporre delle autorizzazioni di amministratore sul server per l'istanza.

Per eseguire una query DMV da SQL Server Management Studio

  1. Connettersi al server e all'oggetto modello su cui eseguire una query.
  2. Fare clic con il pulsante destro del mouse sul server o sull'oggetto > di database Nuova query>MDX.
  3. Digitare la query e quindi fare clic su Esegui oppure premere F5.

Set di righe dello schema

Non tutti i set di righe dello schema hanno un'interfaccia DMV. Per restituire un elenco di tutti i set di righe dello schema su cui è possibile eseguire query tramite DMV, eseguire la query seguente.

SELECT * FROM $System.DBSchema_Tables   
WHERE TABLE_TYPE = 'SCHEMA'   
ORDER BY TABLE_NAME ASC  

Se una DMV non è disponibile per un determinato set di righe, il server restituisce l'errore: The <schemarowset> request type was not recognized by the server. Tutti gli altri errori indicano problemi con la sintassi.

I set di righe dello schema sono descritti in due protocolli di SQL Server Analysis Services:

[MS-SSAS-T]: protocollo tabulare di SQL Server Analysis Services - Descrive i set di righe dello schema per i modelli tabulari ai livelli di compatibilità 1200 e superiori.

[MS-SSAS]: protocollo SQL Server Analysis Services - Descrive i set di righe dello schema per i modelli multidimensionali e i modelli tabulari ai livelli di compatibilità 1100 e 1103.

Set di righe descritti in [MS-SSAS-T]: Protocollo tabulare di SQL Server Analysis Services

Nota: questo elenco potrebbe essere incompleto. Fare riferimento ai protocolli [MS-SSAS-T] e [MS-SSAS] per la versione più recente.

Righe Description
TMSCHEMA_ANNOTATIONS Fornisce informazioni sugli oggetti Annotation nel modello.
TMSCHEMA_ATTRIBUTE_HIERARCHIES Fornisce informazioni sugli oggetti AttributeHierarchy per una colonna.
TMSCHEMA_CALCULATION_ITEMS Fornisce informazioni sugli oggetti CalculationItem nel modello tabulare.
TMSCHEMA_CALCULATION_GROUPS Fornisce informazioni sugli oggetti CalculationGroup nel modello tabulare.
TMSCHEMA_COLUMNS Fornisce informazioni sugli oggetti Column in ogni tabella.
TMSCHEMA_COLUMN_PERMISSIONS Fornisce informazioni sugli oggetti ColumnPermission in ogni autorizzazione di tabella.
TMSCHEMA_CULTURES Fornisce informazioni sugli oggetti di cultura nel modello.
TMSCHEMA_DATA_SOURCES Fornisce informazioni sugli oggetti DataSource nel modello.
TMSCHEMA_DETAIL_ROWS_DEFINITIONS Fornisce informazioni sugli oggetti DetailRowsDefinition nel modello.
TMSCHEMA_EXPRESSIONS Fornisce informazioni sugli oggetti Expression nel modello.
TMSCHEMA_FORMAT_STRING_DEFINITIONS Fornisce informazioni sugli oggetti FormatStringDefinition nel modello tabulare.
TMSCHEMA_EXTENDED_PROPERTIES Fornisce informazioni sugli oggetti ExtendedProperty nel modello.
TMSCHEMA_HIERARCHIES Fornisce informazioni sugli oggetti Hierarchy in ogni tabella.
TMSCHEMA_KPIS Fornisce informazioni sugli oggetti KPI nel modello.
TMSCHEMA_LEVELS Fornisce informazioni sugli oggetti Level in ogni gerarchia.
TMSCHEMA_LINGUISTIC_METADATA Fornisce informazioni sui sinonimi per gli oggetti nel modello per una cultura specifica
TMSCHEMA_MEASURES Fornisce informazioni sugli oggetti Measure in ogni tabella.
TMSCHEMA_MODEL Specifica un oggetto Model nel database.
TMSCHEMA_OBJECT_TRANSLATIONS Fornisce informazioni sulle traduzioni di oggetti diversi per una cultura.
TMSCHEMA_PARTITIONS Fornisce informazioni sugli oggetti Partition in ogni tabella.
TMSCHEMA_PERSPECTIVE_COLUMNS Fornisce informazioni sugli oggetti PerspectiveColumn in ogni oggetto PerspectiveTable.
TMSCHEMA_PERSPECTIVE_HIERARCHIES Fornisce informazioni sugli oggetti PerspectiveHierarchy in ogni oggetto PerspectiveTable.
TMSCHEMA_PERSPECTIVE_MEASURES Fornisce informazioni sugli oggetti PerspectiveMeasure in ogni oggetto PerspectiveTable.
TMSCHEMA_PERSPECTIVE_TABLES Fornisce informazioni sugli oggetti tabella in una determinata prospettiva.
TMSCHEMA_PERSPECTIVES Fornisce informazioni sugli oggetti Perspective nel modello.
TMSCHEMA_QUERY_GROUPS Fornisce informazioni sugli oggetti QueryGroup nel modello tabulare.
TMSCHEMA_RELATIONSHIPS Fornisce informazioni sugli oggetti Relationship nel modello.
TMSCHEMA_ROLE_MEMBERSHIPS Fornisce informazioni sugli oggetti RoleMembership in ogni ruolo.
TMSCHEMA_ROLES Fornisce informazioni sugli oggetti Role nel modello.
TMSCHEMA_TABLE_PERMISSIONS Fornisce informazioni sugli oggetti TablePermission in ogni ruolo.
TMSCHEMA_TABLES Fornisce informazioni sugli oggetti Tabella nel modello.
TMSCHEMA_VARIATIONS Fornisce informazioni sugli oggetti Variant in ogni colonna.

Blocchi di righe descritti nel [MS-SSAS]: SQL Server Analysis Services Protocol

Righe Description
DBSCHEMA_CATALOGS Descrive i cataloghi accessibili nel server.
DBSCHEMA_COLUMNS Restituisce una riga per ogni misura, ogni attributo della dimensione del cubo e ogni colonna del set di righe dello schema, esposta come colonna.
DBSCHEMA_PROVIDER_TYPES Identifica i tipi di dati (base) supportati dal server.
DBSCHEMA_TABLES Restituisce dimensioni, gruppi di misure o set di righe dello schema esposti come tabelle.
DISCOVER_CALC_DEPENDENCY Restituisce informazioni sulla dipendenza di calcolo per un oggetto specificato in un database tabulare o in una query DAX eseguita su un database tabulare.

Nota: Il set di righe DISCOVER_CALC_DEPENDENCY può essere usato per analizzare le dipendenze ed estrarre espressioni DAX da modelli semantici ospitati in Power BI usando endpoint XMLA. Tuttavia, il set di righe DISCOVER_CALC_DEPENDENCY non include le dipendenze M per i modelli semantici con metadati avanzati abilitati, ad esempio query M unite o aggiunte e parametri M.
DISCOVER_COMMAND_OBJECTS Fornisce informazioni sull'utilizzo delle risorse e sull'attività sugli oggetti in uso dal comando di riferimento.
DISCOVER_COMMANDS Fornisce informazioni sull'utilizzo delle risorse e sulle attività relative ai comandi attualmente in esecuzione o all'ultima esecuzione nelle connessioni aperte nel server.
DISCOVER_CONNECTIONS Fornisce informazioni sull'utilizzo delle risorse e sulle attività sulle connessioni attualmente aperte nel server.
SCOPRI_CSDL_METADATI Restituisce informazioni sui metadati del database per i database in memoria.
DISCOVER_DATASOURCES Restituisce un elenco delle origini dati disponibili nel server.
DISCOVER_DB_CONNECTIONS Fornisce informazioni sull'utilizzo delle risorse e sulle attività sulle connessioni attualmente aperte dal server a un database.
DISCOVER_DB_MEM_STATS Fornisce informazioni con granularità grossolana sui tracker di memoria attivi nel server. I dati vengono aggregati a livello di database e di sistema.
DISCOVER_DIMENSION_STAT restituisce statistiche sulla dimensione specificata.
DISCOVER_ENUMERATORS Restituisce un elenco di nomi, tipi di dati e valori di enumerazione degli enumeratori supportati dal provider XMLA per un'origine dati specifica.
DISCOVER_INSTANCES Descrive le istanze nel server.
DISCOVER_JOBS Fornisce informazioni sui processi attivi in esecuzione nel server. Un job fa parte di un comando che esegue un'attività specifica per conto del comando.
DISCOVER_KEYWORDS (XMLA) Restituisce informazioni sulle parole chiave riservate dal server XMLA.
DISCOVER_LITERALS Restituisce informazioni sui valori letterali supportati dal server.
DISCOVER_LOCATIONS Restituisce informazioni sul contenuto di un file di backup.
DISCOVER_LOCKS Fornisce informazioni sui blocchi permanenti correnti nel server.
DISCOVER_MASTER_KEY Restituisce la chiave di crittografia master del server.
DISCOVER_MEM_STATS Fornisce informazioni dettagliate su tutti i tracker di memoria attivi nel server.
DISCOVER_MEMORYGRANT Restituisce un elenco di concessioni di quota di memoria interna acquisite dai processi attualmente in esecuzione nel server.
DISCOVER_MEMORYUSAGE Restituisce le statistiche DISCOVER_MEMORYUSAGE per vari oggetti allocati dal server.
DISCOVER_OBJECT_ACTIVITY Fornisce l'utilizzo delle risorse per oggetto dall'inizio del servizio.
SCOPRI_UTILIZZO_MEMORIA_OGGETTO Restituisce le statistiche DISCOVER_MEMORYUSAGE per vari oggetti allocati dal server.
DISCOVER_PARTITION_DIMENSION_STAT Restituisce statistiche sulla dimensione associata a una partizione.
DISCOVER_PARTITION_STAT Restituisce statistiche sulle aggregazioni in una determinata partizione.
SCOPRI_CONTATORI_DI_PRESTAZIONE Restituisce il valore di uno o più contatori delle prestazioni specificati.
DISCOVER_PROPERTIES Restituisce un elenco di informazioni e valori sulle proprietà supportate dal server per l'origine dati specificata.
DISCOVER_RING_BUFFERS Restituisce informazioni sui buffer ad anello XEvent correnti nel server.
DISCOVER_SCHEMA_ROWSETS Restituisce i nomi, le restrizioni, la descrizione e altre informazioni per tutte le richieste di Discover.
DISCOVER_SESSIONS Fornisce informazioni sull'utilizzo delle risorse e sulle attività relative alle sessioni attualmente aperte nel server.
SCOPRI_SEGMENTI_COLONNE_TABELLA_DI_ARCHIVIAZIONE Restituisce informazioni sui segmenti di colonna utilizzati per l'archiviazione dei dati per le tabelle in memoria.
DISCOVER_STORAGE_TABLE_COLUMNS Contiene informazioni sulle colonne utilizzate per rappresentare le colonne di una tabella in memoria.
SCOPRI_TABELLE_DI_ARCHIVIAZIONE Restituisce statistiche sulle tabelle in memoria disponibili per il server.
DISCOVER_TRACE_COLUMNS
DISCOVER_TRACE_DEFINITION_PROVIDERINFO Contiene il set di righe dello schema DISCOVER_TRACE_COLUMNS.
DISCOVER_TRACE_EVENT_CATEGORIES Contiene il set di righe dello schema DISCOVER_TRACE_EVENT_CATEGORIES.
DISCOVER_TRACES Contiene il set di righe dello schema DISCOVER_TRACES.
DISCOVER_TRANSACTIONS Restituisce il set corrente di transazioni in sospeso nel sistema.
DISCOVER_XEVENT_TRACE_DEFINITION Fornisce informazioni sulle tracce XEvent attualmente attive nel server.
DISCOVER_XEVENT_PACKAGES Fornisce informazioni sui pacchetti XEvent descritti nel server.
DISCOVER_XEVENT_OBJECTS Fornisce informazioni sugli oggetti XEvent descritti nel server.
DISCOVER_XEVENT_OBJECT_COLUMNS Fornisce informazioni sullo schema degli oggetti XEvent descritti nel server.
DISCOVER_XEVENT_SESSIONS Fornisce informazioni sulle sessioni XEvent correnti nel server.
DISCOVER_XEVENT_SESSION_TARGETS Fornisce informazioni sulle destinazioni di sessione XEvent correnti nel server.
DISCOVER_XML_METADATA Restituisce un insieme di righe con una riga e una colonna.
DMSCHEMA_MINING_COLUMNS Descrive le singole colonne di tutti i modelli di data mining descritti distribuiti nel server.
DMSCHEMA_MINING_FUNCTIONS Vengono descritte le funzioni di data mining supportate dagli algoritmi di data mining disponibili in un server che esegue Analysis Services.
DMSCHEMA_MINING_MODEL_CONTENT Consente all'applicazione client di esplorare il contenuto di un modello di data mining addestrato.
DMSCHEMA_MINING_MODEL_CONTENT_PMML Restituisce la struttura XML del modello di mining. Il formato della stringa XML segue lo standard PMML 2.1.
DMSCHEMA_MINING_MODEL_XML Restituisce la struttura XML del modello di data mining. Il formato della stringa XML segue lo standard PMML 2.1.
DMSCHEMA_MINING_MODELS Enumera i modelli di data mining distribuiti nel server.
DMSCHEMA_MINING_SERVICE_PARAMETERS Fornisce un elenco di parametri che possono essere utilizzati per configurare il comportamento di ogni algoritmo di data mining installato nel server.
DMSCHEMA_MINING_SERVICES Fornisce informazioni su ogni algoritmo di data mining supportato dal server.
DMSCHEMA_MINING_STRUCTURE_COLUMNS Descrive le singole colonne di tutte le strutture di data mining distribuite nel server.
DMSCHEMA_MINING_STRUCTURES Enumera informazioni sulle strutture di mining nel catalogo corrente.
MDSCHEMA_ACTIONS Descrive le azioni che possono essere disponibili per l'applicazione client.
MDSCHEMA_CUBES Descrive la struttura dei cubi all'interno di un database. Anche le prospettive vengono restituite in questo schema.
MDSCHEMA_DIMENSIONS Descrive le dimensioni all'interno di un database.
MDSCHEMA_FUNCTIONS Restituisce informazioni sulle funzioni attualmente disponibili per l'uso nei linguaggi DAX e MDX.
MDSCHEMA_HIERARCHIES Descrive ogni gerarchia all'interno di una determinata dimensione.
MDSCHEMA_INPUT_DATASOURCES Descrive gli oggetti origine dati descritti all'interno del database.
MDSCHEMA_KPIS Descrive gli indicatori KPI all'interno di un database.
MDSCHEMA_LEVELS Descrive ogni livello all'interno di una particolare gerarchia.
MDSCHEMA_MEASUREGROUP_DIMENSIONS Enumera le dimensioni dei gruppi di misure.
MDSCHEMA_MEASUREGROUPS Descrive i gruppi di misure all'interno di un database.
MDSCHEMA_MEASURES Descrive ogni misura.
MDSCHEMA_MEMBERS Descrive i membri all'interno di un database.
MDSCHEMA_PROPERTIES Vengono descritte le proprietà dei membri e delle proprietà delle celle.
MDSCHEMA_SETS Descrive tutti i set attualmente descritti in un database, inclusi i set con ambito sessione.

Annotazioni

Le DMV STORAGES non hanno un set di righe dello schema descritto nel protocollo.