Viste a gestione dinamica (DMV)
Si applica a:
SQL Server Analysis Services Azure Analysis Services
Power BI Premium
Analysis Services viste a gestione dinamica (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 pre-sottoscritte che contengono informazioni sugli oggetti Analysis Services e sullo stato del server, inclusi lo schema del database, le sessioni attive, le connessioni, i comandi e i processi in esecuzione nel server.
Per Power BI Premium set di dati , 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 Analysis Services server.
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ù 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 la traccia. Per altre informazioni sul monitoraggio in tempo reale con 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 è basata 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 ai modelli tabulari con livello di compatibilità 1103. 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 da parte dell'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 restituisce uno snapshot dei blocchi utilizzati in un momento specifico.
Strumenti e autorizzazioni
È possibile utilizzare qualsiasi applicazione client che supporti query MDX o DMX. Nella maggior parte dei casi, è meglio usare SQL Server Management Studio. Per eseguire query su una DMV, è necessario disporre delle autorizzazioni di amministratore del server per l'istanza.
Per eseguire una query DMV da SQL Server Management Studio
- Connessione al server e all'oggetto modello su cui si desidera eseguire una query.
- Fare clic con il pulsante destro del mouse sul server o sull'oggetto > nuova > query MDX.
- 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 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 una DMV non è disponibile per un determinato set di righe, il server restituisce l'errore: Tutti gli altri errori indicano The <schemarowset> request type was not recognized by the server. problemi con la sintassi.
I set di righe dello schema sono descritti in SQL Server Analysis Services seguenti:
[MS-SSAS-T]: SQL Server Analysis Services tabulare: descrive i set di righe dello schema per i modelli tabulari con i 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 tabulari ai livelli di compatibilità 1100 e 1103.
Set di righe descritti in [MS-SSAS-T]: SQL Server Analysis Services tabulare
Nota: questo elenco potrebbe essere incompleto. Fare riferimento ai protocolli [MS-SSAS-T] e [MS-SSAS] per la versione più recente.
| Set di righe | Descrizione |
|---|---|
| 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 Culture 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 impostazioni cultura specifiche |
| 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 le impostazioni 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 Variation 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 (di 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 set di dati ospitati in Power BI usando endpoint XMLA. Tuttavia, il set DISCOVER_CALC_DEPENDENCY non include le dipendenze M per i set di dati con metadati migliorati 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 grosso modo dettagliate sui tracciatori 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 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 dettagliate 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 circolare 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 utilizzati per archiviare i dati per le tabelle in memoria. |
| DISCOVER_STORAGE_TABLE_COLUMNS | Contiene informazioni sulle colonne utilizzate per rappresentare le colonne di una tabella in memoria. |
| DISCOVER_STORAGE_TABLES | Restituisce statistiche sulle tabelle in memoria disponibili per il server. |
| DISCOVER_TRACE_COLUMNS | |
| DISCOVER_TRACE_DEFINITION_PROVIDERINFO | Contiene il set DISCOVER_TRACE_COLUMNS di righe dello schema. |
| DISCOVER_TRACE_EVENT_CATEGORIES | Contiene il set DISCOVER_TRACE_EVENT_CATEGORIES di righe dello schema. |
| DISCOVER_TRACES | Contiene il set DISCOVER_TRACES righe dello schema. |
| 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 data mining descritti distribuiti nel server. |
| DMSCHEMA_MINING_FUNCTIONS | Vengono descritte le data mining supportate dagli algoritmi 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 data mining 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 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. 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'utilizzo nei linguaggi DAX e MDX. |
| MDSCHEMA_HIERARCHIES | Descrive ogni gerarchia all'interno di una determinata dimensione. |
| MDSCHEMA_INPUT_DATASOURCES | Vengono descritti 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 | Descrive 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 .