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
- Connettersi al server e all'oggetto modello che si desidera eseguire una query.
- Fare clic con il pulsante destro del mouse sul server o sull'oggetto > database New Query>MDX.
- 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.