Condividi tramite


Viste a gestione dinamica (DMV)

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

Analysis Services Dynamic Management Views (DMV) 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 i set di righe dello schema. I set di righe dello schema sono tabelle prescritte che contengono informazioni sugli oggetti di Analysis Services e sullo stato del server, tra cui lo schema del database, le sessioni attive, le connessioni, i comandi e i processi in esecuzione nel server.

Per Power BI Premium modelli semantici, 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 rappresentano un'alternativa all'esecuzione di comandi di individuazione XML/A. 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ù semplice da leggere e copiare.

La maggior parte delle query DMV usa un'istruzione SELECT e lo schema $System con un set di righe di 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 la traccia. Per altre informazioni sul monitoraggio in tempo reale usando le tracce, vedere Usare SQL Server Profiler per Monitorare Analysis Services.

Sintassi delle query

Il motore di query per le DMV è il parser di data mining. 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 è supportata la sintassi completa di un'istruzione SELECT. In particolare, non sono supportate le clausole JOIN, GROUP BY, LIKE, CAST e CONVERT.

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'utilizzo 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 1103 modelli tabulari a livello di compatibilità. Notare che CATALOG_NAME distingue tra maiuscole e minuscole:

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

Esempi e scenari

Una query DMV può essere utile per rispondere a domande sulle connessioni e sulle sessioni attive, nonché per verificare quali oggetti stanno utilizzando la maggior parte di memoria o CPU in un momento specifico. Ad esempio:

Select * from $System.discover_object_activity
Questa query segnala l'attività dell'oggetto dall'ultimo avvio del servizio.

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, tra cui l'utente della sessione e la durata.

Select * from $System.discover_locks
Questa query restituisce uno snapshot dei blocchi usati in un momento specifico.

Strumenti e autorizzazioni

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

Per eseguire una query DMV da SQL Server Management Studio

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

Set di righe dello schema

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

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

Se un 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]: SQL Server Analysis Services protocollo tabulare - Descrive i set di righe dello schema per i modelli tabulari a livelli di compatibilità 1200 e superiori.

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

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

Nota: questo elenco potrebbe essere incompleto. Fare riferimento ai protocolli [MS-SSAS-T] e [MS-SSAS] per l'ultima versione.

Set di righe Descrizione
TMSCHEMA_ANNOTATIONS Fornisce informazioni sugli oggetti Annotazione 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 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 determinata cultura
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 Table in una 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 Table nel modello.
TMSCHEMA_VARIATIONS Fornisce informazioni sugli oggetti Variant in ogni colonna.

Set di righe descritti in [MS-SSAS]: SQL Server Analysis Services Protocol

Set di righe Descrizione
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 DISCOVER_CALC_DEPENDENCY set di righe può essere usato per analizzare le dipendenze ed estrarre espressioni DAX dai modelli semantici ospitati in Power BI usando endpoint XMLA. Tuttavia, il set di righe DISCOVER_CALC_DEPENDENCY non include 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 sulle attività relative agli oggetti utilizzati dal comando a cui si fa riferimento.
DISCOVER_COMMANDS Fornisce informazioni sull'utilizzo delle risorse e sulle attività relative all'ultimo comando eseguito o attualmente in esecuzione nelle connessioni aperte nel server.
DISCOVER_CONNECTIONS Fornisce informazioni sull'utilizzo delle risorse e sulle attività relative alle connessioni attualmente aperte nel server.
DISCOVER_CSDL_METADATA 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à relative alle 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 sistema.
DISCOVER_DIMENSION_STAT restituisce le statistiche sulla dimensione specificata.
DISCOVER_ENUMERATORS Restituisce un elenco di nomi, tipi di dati e valori di enumerazione di 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 processo 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 correnti presenti nel server.
DISCOVER_MASTER_KEY Restituisce la chiave di crittografia master del server.
DISCOVER_MEM_STATS Fornisce informazioni con granularità fine su tutti i tracker di memoria attivi nel server.
DISCOVER_MEMORYGRANT Restituisce un elenco di concessioni di quote di memoria interna recuperate da processi attualmente in esecuzione nel server.
DISCOVER_MEMORYUSAGE Restituisce le statistiche di DISCOVER_MEMORYUSAGE per vari oggetti allocati dal server.
DISCOVER_OBJECT_ACTIVITY Fornisce l'utilizzo delle risorse per oggetto dopo l'avvio del servizio.
DISCOVER_OBJECT_MEMORY_USAGE Restituisce le statistiche di 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 partizione specifica.
DISCOVER_PERFORMANCE_COUNTERS Restituisce il valore di uno o più specifici contatori di prestazioni.
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 dell'anello XEvent correnti nel server.
DISCOVER_SCHEMA_ROWSETS Restituisce i nomi, le restrizioni, la descrizione e altre informazioni per tutte le richieste di individuazione.
DISCOVER_SESSIONS Fornisce informazioni sull'utilizzo delle risorse e sulle attività relative alle sessioni attualmente aperte nel server.
DISCOVER_STORAGE_TABLE_COLUMN_SEGMENTS Restituisce informazioni sui segmenti di colonna usati per l'archiviazione dei dati per le tabelle in memoria.
DISCOVER_STORAGE_TABLE_COLUMNS Contiene informazioni sulle colonne usate per rappresentare le colonne di una tabella in memoria.
DISCOVER_STORAGE_TABLES Restituisce le 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 set 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 sottoposto a training.
DMSCHEMA_MINING_MODEL_CONTENT_PMML Restituisce la struttura XML del modello di data 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 dei parametri che è possibile utilizzare 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 data 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. In questo schema vengono restituite anche prospettive.
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 determinata 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.

Nota

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