Поделиться через


Динамические управленческие представления (DMVs)

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Динамические административные представления служб Analysis Services — это запросы, возвращающие сведения о объектах модели, операциях сервера и работоспособности сервера. Запрос на основе SQL — это интерфейс для наборов строк схемы. Наборы строк схемы — это предопределенные таблицы, содержащие сведения о объектах Служб Analysis Services и состоянии сервера, включая схему базы данных, активные сеансы, подключения, команды и задания, выполняемые на сервере.

Для семантических моделей Power BI Premium представления для запроса через конечную точку XMLA ограничены теми, которые требуют разрешений администратора базы данных. Некоторые DMVs не поддерживаются, так как для них требуются разрешения администратора сервера компонента Analysis Services.

Запросы DMV являются альтернативой выполнения команд Discover XML/A. Для большинства администраторов написание запроса dmV проще, так как синтаксис основан на SQL. Кроме того, результат возвращается в табличном формате, который проще читать и копировать.

Большинство запросов dmV используют инструкцию SELECT и схему $System с набором строк схемы XML/A, например:

SELECT * FROM $System.<schemaRowset>  

Запросы dmV возвращают сведения о состоянии сервера и объекта во время выполнения запроса. Для мониторинга операций в режиме реального времени используйте трассировку. Дополнительные сведения о мониторинге в режиме реального времени с помощью трассировок см. в статье "Использование профилировщика SQL Server для мониторинга служб Analysis Services".

Синтаксис запроса

Обработчик запросов для динамических административных представлений — это средство синтаксического анализа данных. Синтаксис запроса DMV основан на инструкции SELECT (DMX). Хотя синтаксис запроса DMV основан на инструкции SQL SELECT, он не поддерживает полный синтаксис инструкции SELECT. В частности, JOIN, GROUP BY, LIKE, CAST и CONVERT не поддерживаются.

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

В следующем примере для DISCOVER_CALC_DEPENDENCY показано использование предложения WHERE для предоставления параметра запросу:

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

Для наборов строк схемы, имеющих ограничения, запрос должен включать функцию SYSTEMRESTRICTSCHEMA. В следующем примере возвращаются метаданные CSDL о табличных моделях уровня совместимости 1103. Обратите внимание, что CATALOG_NAME учитывает регистр:

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

Примеры и сценарии

Запрос DMV поможет ответить на вопросы о активных сеансах и подключениях, а также о том, какие объекты используют большую часть ЦП или памяти в определенный момент времени. Рассмотрим пример.

Select * from $System.discover_object_activity
Этот запрос сообщает о действиях объекта с момента последнего запуска данной службы.

Select * from $System.discover_object_memory_usage
Этот запрос сообщает о потреблении памяти по объекту.

Select * from $System.discover_sessions
Этот запрос сообщает о активных сеансах, включая пользователя сеанса и длительность.

Select * from $System.discover_locks
Этот запрос возвращает снимок блокировок, используемых в данный момент времени.

Средства и разрешения

Вы можете использовать любое клиентское приложение, которое поддерживает MDX-запросы или DMX-запросы. В большинстве случаев рекомендуется использовать SQL Server Management Studio. Чтобы выполнить запрос динамического диспетчерского представления, необходимо иметь разрешения администратора сервера на этом экземпляре.

Чтобы выполнить запрос DMV из SQL Server Management Studio

  1. Подключитесь к серверу и объекту модели, к которому требуется выполнить запрос.
  2. Щелкните правой кнопкой мыши на сервере или объекте базы данных >New Query>MDX.
  3. Введите запрос и нажмите кнопку "Выполнить" или нажмите клавишу F5.

Наборы строк схемы

Не все наборы строк схемы имеют интерфейс dmV. Чтобы вернуть список всех наборов строк схемы, которые можно запрашивать с помощью dmV, выполните следующий запрос.

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

Если DMV недоступен для заданного набора строк, сервер возвращает ошибку: The <schemarowset> request type was not recognized by the server. Все остальные ошибки указывают на проблемы с синтаксисом.

Наборы строк схемы описаны в двух протоколах SQL Server Analysis Services.

[MS-SSAS-T]: SQL Server Analysis Services Tabular Protocol — описывает схемные наборы строк для табличных моделей на уровнях совместимости 1200 и выше.

[MS-SSAS]: протокол SQL Server Analysis Services — описывает наборы строк схемы для многомерных моделей и табличных моделей на уровнях совместимости 1100 и 1103.

Наборы строк, описанные в файле [MS-SSAS-T]: табличный протокол служб SQL Server Analysis Services

Примечание. Этот список может быть неполным. Дополнительные сведения см. в протоколах [MS-SSAS-T] и [MS-SSAS].

Набор строк Description
TMSCHEMA_ANNOTATIONS Предоставляет сведения об объектах аннотаций в модели.
TMSCHEMA_ATTRIBUTE_HIERARCHIES Предоставляет сведения о объектах AttributeHierarchy для столбца.
TMSCHEMA_CALCULATION_ITEMS Предоставляет сведения о объектах CalculationItem в табличной модели.
TMSCHEMA_CALCULATION_GROUPS Предоставляет сведения об объектах CalculationGroup в табличной модели.
TMSCHEMA_COLUMNS Предоставляет сведения о объектах Column в каждой таблице.
TMSCHEMA_COLUMN_PERMISSIONS Предоставляет сведения об объектах ColumnPermission в каждом разрешении на уровне таблицы.
TMSCHEMA_CULTURES Предоставляет сведения об объектах языка и региональных параметров в модели.
TMSCHEMA_DATA_SOURCES Предоставляет сведения об объектах DataSource в модели.
TMSCHEMA_DETAIL_ROWS_DEFINITIONS Предоставляет сведения о объектах DetailRowsDefinition в модели.
TMSCHEMA_EXPRESSIONS Предоставляет сведения об объектах Expression в модели.
TMSCHEMA_FORMAT_STRING_DEFINITIONS Предоставляет сведения о объектах FormatStringDefinition в табличной модели.
TMSCHEMA_EXTENDED_PROPERTIES Предоставляет сведения о объектах ExtendedProperty в модели.
TMSCHEMA_HIERARCHIES Предоставляет сведения об объектах иерархии в каждой таблице.
TMSCHEMA_KPIS Предоставляет сведения об объектах ключевого показателя эффективности в модели.
TMSCHEMA_LEVELS Предоставляет сведения о объектах Level в каждой иерархии.
TMSCHEMA_LINGUISTIC_METADATA Предоставляет сведения о синонимах для объектов в модели для определённой культуры.
TMSCHEMA_MEASURES Предоставляет сведения о объектах Measure в каждой таблице.
TMSCHEMA_MODEL Указывает объект Model в базе данных.
TMSCHEMA_OBJECT_TRANSLATIONS Предоставляет сведения о переводах различных объектов для определенной культуры.
TMSCHEMA_PARTITIONS Предоставляет сведения о объектах Секционирования в каждой таблице.
TMSCHEMA_PERSPECTIVE_COLUMNS Предоставляет сведения о объектах PerspectiveColumn в каждом объекте PerspectiveTable.
TMSCHEMA_PERSPECTIVE_HIERARCHIES Предоставляет сведения о объектах PerspectiveHierarchy в каждом объекте PerspectiveTable.
TMSCHEMA_PERSPECTIVE_MEASURES Предоставляет сведения об объектах PerspectiveMeasure в каждом объекте PerspectiveTable.
TMSCHEMA_PERSPECTIVE_TABLES Предоставляет сведения о объектах таблицы в перспективе.
TMSCHEMA_PERSPECTIVES Предоставляет сведения об объектах Perspective в модели.
TMSCHEMA_QUERY_GROUPS Предоставляет сведения о объектах QueryGroup в табличной модели.
TMSCHEMA_RELATIONSHIPS Предоставляет сведения об объектах отношений в модели.
TMSCHEMA_ROLE_MEMBERSHIPS Предоставляет информацию о объектах RoleMembership в каждой роли.
TMSCHEMA_ROLES Предоставляет информацию об объектах Role в модели.
TMSCHEMA_TABLE_PERMISSIONS Предоставляет сведения о объектах TablePermission в каждой роли.
TMSCHEMA_TABLES Предоставляет сведения об объектах таблицы в модели.
TMSCHEMA_VARIATIONS Предоставляет сведения о объектах вариантов в каждом столбце.

Наборы строк, описанные в [MS-SSAS]: протокол SQL Server Analysis Services

Набор строк Description
DBSCHEMA_CATALOGS Описывает каталоги, доступные на сервере.
DBSCHEMA_COLUMNS Возвращает строку для каждой меры, каждого атрибута измерения куба и каждого столбца в наборе строк схемы, представленного в виде столбца.
DBSCHEMA_PROVIDER_TYPES Определяет типы данных (базовые), поддерживаемые сервером.
DBSCHEMA_TABLES Возвращает измерения, группы мер или наборы строк схемы, предоставляемые в виде таблиц.
ОБНАРУЖИТЬ_ЗАВИСИМОСТЬ_ВЫЧИСЛЕНИЙ Возвращает сведения о зависимости вычисления для объекта, указанного в табличной базе данных или в запросе DAX, выполняемом в табличной базе данных.

Примечание: Набор строк DISCOVER_CALC_DEPENDENCY можно использовать для анализа зависимостей и извлечения выражений DAX из семантических моделей, размещенных в Power BI с помощью конечных точек XMLA. Однако набор строк DISCOVER_CALC_DEPENDENCY не включает зависимости M для семантических моделей с включенными расширенными метаданными, например объединенные или добавленные запросы M и параметры M.
ОБНАРУЖЕНИЕ_ОБЪЕКТОВ_КОМАНД Предоставляет сведения об использовании ресурсов и действиях об объектах, используемых указанной командой.
DISCOVER_COMMANDS Предоставляет информацию об использовании ресурсов и активности команд, которые в настоящее время выполняются или были последними выполнены в открытых подключениях на сервере.
DISCOVER_CONNECTIONS Предоставляет информацию об использовании ресурсов и активности в настоящее время открытых подключений на сервере.
DISCOVER_CSDL_METADATA Возвращает сведения о метаданных базы данных для баз данных в памяти.
DISCOVER_DATASOURCES Возвращает список источников данных, доступных на сервере.
DISCOVER_DB_CONNECTIONS Предоставляет сведения об использовании ресурсов и действиях в открытых подключениях от сервера к базе данных.
DISCOVER_DB_MEM_STATS Предоставляет общую информацию о средствах мониторинга памяти, активных на сервере. Данные агрегируются на уровне базы данных и системы.
DISCOVER_DIMENSION_STAT возвращает статистику по указанному измерению.
DISCOVER_ENUMERATORS Возвращает список имен, типов данных и значений перечислений, которые поддерживаются поставщиком XMLA для определенного источника данных.
DISCOVER_INSTANCES Описывает инстанции на сервере.
DISCOVER_JOBS Предоставляет сведения о активных заданиях, выполняемых на сервере. Задание — это часть команды, которая выполняет задачу по поручению команды.
DISCOVER_KEYWORDS (XMLA) Возвращает сведения о ключевых словах, зарезервированных сервером XMLA.
DISCOVER_LITERALS Возвращает сведения о литералах, поддерживаемых сервером.
DISCOVER_LOCATIONS Возвращает сведения о содержимом файла резервной копии.
DISCOVER_LOCKS Предоставляет сведения о текущих постоянных блокировках на сервере.
DISCOVER_MASTER_KEY Возвращает главный ключ шифрования сервера.
DISCOVER_MEM_STATS Предоставляет подробные сведения обо всех средствах отслеживания памяти, активных на сервере.
DISCOVER_MEMORYGRANT Возвращает список предоставленных внутренних квот памяти, захваченных заданиями, которые в настоящее время выполняются на сервере.
DISCOVER_MEMORYUSAGE Возвращает статистику DISCOVER_MEMORYUSAGE для различных объектов, выделенных сервером.
DISCOVER_OBJECT_ACTIVITY Предоставляет информацию о потреблении ресурсов на объект с момента запуска сервиса.
DISCOVER_OBJECT_MEMORY_USAGE Возвращает статистику DISCOVER_MEMORYUSAGE для различных объектов, выделенных сервером.
DISCOVER_PARTITION_DIMENSION_STAT Возвращает статистику по измерению, связанному с разделом.
DISCOVER_PARTITION_STAT Возвращает статистику по агрегатам в определенной секции.
ОБНАРУЖИТЬ_СЧЁТЧИКИ_ПРОИЗВОДИТЕЛЬНОСТИ Возвращает значение одного или нескольких указанных счетчиков производительности.
DISCOVER_PROPERTIES Возвращает список сведений и значений о свойствах, поддерживаемых сервером для указанного источника данных.
DISCOVER_RING_BUFFERS Возвращает сведения о текущих кольцевых буферах XEvent на сервере.
DISCOVER_SCHEMA_ROWSETS Возвращает имена, ограничения, описание и другие сведения для всех запросов Discover.
DISCOVER_SESSIONS Предоставляет сведения об использовании ресурсов и действиях по открытым сеансам на сервере.
DISCOVER_STORAGE_TABLE_COLUMN_SEGMENTS Возвращает сведения о сегментах столбцов, используемых для хранения данных для таблиц в памяти.
DISCOVER_STORAGE_TABLE_COLUMNS Содержит сведения о столбцах, используемых для представления столбцов таблицы в памяти.
DISCOVER_STORAGE_TABLES Возвращает статистику о таблицах в памяти, доступных серверу.
DISCOVER_TRACE_COLUMNS
DISCOVER_TRACE_DEFINITION_PROVIDERINFO Содержит набор строк схемы DISCOVER_TRACE_COLUMNS.
DISCOVER_TRACE_EVENT_CATEGORIES Содержит набор строк схемы DISCOVER_TRACE_EVENT_CATEGORIES.
DISCOVER_TRACES Содержит набор строк схемы DISCOVER_TRACES.
DISCOVER_TRANSACTIONS Возвращает текущий набор ожидающих транзакций в системе.
DISCOVER_XEVENT_TRACE_DEFINITION Предоставляет сведения о трассировках XEvent, активных на сервере в данный момент.
DISCOVER_XEVENT_PACKAGES Предоставляет сведения о пакетах XEvent, описанных на сервере.
DISCOVER_XEVENT_OBJECTS Предоставляет сведения о объектах XEvent, описанных на сервере.
DISCOVER_XEVENT_OBJECT_COLUMNS Предоставляет сведения о схеме объектов XEvent, описанных на сервере.
DISCOVER_XEVENT_SESSIONS Предоставляет сведения о текущих сеансах XEvent на сервере.
DISCOVER_XEVENT_SESSION_TARGETS Предоставляет сведения о текущих целевых объектах сеанса XEvent на сервере.
DISCOVER_XML_METADATA Возвращает набор строк с одной строкой и одним столбцом.
DMSCHEMA_MINING_COLUMNS Описывает отдельные столбцы всех описанных моделей интеллектуального анализа данных, развернутых на сервере.
DMSCHEMA_MINING_FUNCTIONS Описывает функции интеллектуального анализа данных, поддерживаемые алгоритмами интеллектуального анализа данных, доступными на сервере, на котором выполняются службы Analysis Services.
DMSCHEMA_MINING_MODEL_CONTENT Позволяет клиентскому приложению просматривать содержимое обученной модели интеллектуального анализа данных.
DMSCHEMA_MINING_MODEL_CONTENT_PMML Возвращает XML-структуру модели интеллектуального анализа данных. Формат XML-строки следует стандарту PMML 2.1.
DMSCHEMA_MINING_MODEL_XML Возвращает XML-структуру модели анализа данных. Формат XML-строки следует стандарту PMML 2.1.
DMSCHEMA_MINING_MODELS Перечисляет модели интеллектуального анализа данных, развернутые на сервере.
DMSCHEMA_MINING_SERVICE_PARAMETERS Предоставляет список параметров, которые можно использовать для настройки поведения каждого алгоритма интеллектуального анализа данных, установленного на сервере.
DMSCHEMA_MINING_SERVICES Предоставляет сведения о каждом алгоритме интеллектуального анализа данных, который поддерживает сервер.
DMSCHEMA_MINING_STRUCTURE_COLUMNS Описывает отдельные колонки всех структур дата-майнинга, развернутых на сервере.
DMSCHEMA_MINING_STRUCTURES Перечисляет информацию о структурах анализа данных в текущем каталоге.
MDSCHEMA_ACTIONS Описывает действия, которые могут быть доступны клиентскому приложению.
MDSCHEMA_CUBES Описывает структуру кубов в базе данных. Перспективы также возвращаются в этой схеме.
MDSCHEMA_DIMENSIONS Описывает измерения в базе данных.
MDSCHEMA_FUNCTIONS Возвращает сведения о функциях, которые в настоящее время доступны для использования на языках DAX и MDX.
MDSCHEMA_HIERARCHIES Описывает каждую иерархию в определенном измерении.
MDSCHEMA_INPUT_DATASOURCES Описывает объекты источника данных, описанные в базе данных.
MDSCHEMA_KPIS Описывает ключевые показатели эффективности в базе данных.
MDSCHEMA_LEVELS Описывает каждый уровень в определенной иерархии.
MDSCHEMA_MEASUREGROUP_DIMENSIONS Перечисляет все измерения групп мер.
MDSCHEMA_MEASUREGROUPS Описывает группы мер в базе данных.
MDSCHEMA_MEASURES Описывает каждую меру.
MDSCHEMA_MEMBERS Описывает элементы в базе данных.
MDSCHEMA_PROPERTIES Описывает свойства элементов и свойств ячейки.
MDSCHEMA_SETS Описывает все наборы, которые в настоящее время описаны в базе данных, включая наборы с областью сеанса.

Замечание

Динамические административные представления STORAGES не имеют набора строк схемы, описанного в протоколе.