Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
При создании запроса в Power Query базовый рабочий процесс — подключиться к источнику данных, применить некоторые преобразования, потенциально обновить данные в редакторе Power Query, а затем загрузить его в модель Power BI. После того как данные загружены в модель Power BI, вы можете время от времени обновлять их в Power BI Desktop (если вы используете Desktop для просмотра аналитики) помимо обновлений, выполняемых в службе.
Хотя в конце процесса разработки, при обновлении в редакторе или при обновлении непосредственно в Power BI вы можете получить схожий результат, для разных пользовательских сценариев, которые поддерживает это программное обеспечение, оно выполняет совершенно разные проверки. Важно знать, что ожидать при диагностике запросов в этих различных рабочих процессах, чтобы вы не были удивлены различными диагностическими данными.
Чтобы запустить диагностику запросов, перейдите на вкладку "Сервис " на ленте редактора Power Query. Вы увидите несколько различных вариантов.
Доступны два основных варианта: Диагностировать шаг и Запустить диагностику (в паре с Остановить диагностику). Бывший вариант предоставляет сведения о запросе до выбранного шага и наиболее удобно понимать, какие операции выполняются локально или удаленно в запросе. Последний вариант дает более подробное представление о различных других случаях, описанных в следующем разделе.
Особенности соединителя
Эта статья не может охватывать все различные перемутации, доступные в диагностике запросов. Многие вещи могут изменить результаты, которые вы видите, в том числе:
- Connector
- Примененные преобразования
- Система, на которой вы работаете
- Конфигурация сети
- Расширенные варианты конфигурации
- Конфигурация ODBC
Для наиболее широкого охвата в этой статье основное внимание уделяется диагностике запросов таблицы "Клиенты Northwind", как в SQL, так и в OData. Заметки OData используют общедоступную конечную точку доступа, доступную на веб-сайте OData.org, тогда как вам необходимо предоставить собственный SQL-сервер. Многие источники данных значительно отличаются от этих источников. Со временем Microsoft добавляет определенную документацию по соединителю.
Запуск и остановка диагностики
Команды диагностики запуска и остановки диагностики охватывают больше сценариев, чем шаг диагностики. Они также предоставляют дополнительные сведения, необходимые для сортировки. Например, запуск диагностики, обновление предварительной версии, а затем остановка диагностики предоставляет эквивалентную информацию для выполнения шага диагностики на каждом шаге. Эта эквивалентность существует из-за того, как Power Query работает в редакторе, чтобы обновить каждый шаг независимо.
Чтобы начать запись, выберите "Начать диагностику", выполните все необходимые оценки (создание, предварительная версия обновления, полное обновление) и нажмите кнопку "Остановить диагностику".
Создание контента
Процесс подготовки материалов главным образом отличается от других процессов тем, что в его рамках обычно формируется больше отдельных оценок. Как описано в основной статье диагностики запросов, эти оценки приводят к заполнению различных пользовательских интерфейсов, таких как навигатор или раскрывающийся список фильтров.
В этом разделе рассматривается пример. В примере используется соединитель OData, но при просмотре выходных данных вы также просматриваете версию SQL той же базы данных. Для обоих источников данных вы подключаетесь к источнику данных с помощью нового источника, последних источников или получения данных. Для подключения к SQL необходимо ввести учетные данные для сервера, но для общедоступной конечной точки OData можно ввести связанную ранее конечную точку.
После подключения и выбора проверки подлинности выберите таблицу "Клиенты " из службы OData.
Таблица Customers отображается в интерфейсе Power Query. Предположим, что вы хотите узнать, сколько представителей продаж есть в разных странах или регионах. Сначала щелкните правой кнопкой мыши представитель по продажам в столбце "Название контакта ", наведите указатель мыши на фильтры текста и выберите "Равно".
Теперь выберите "Группировать по " на ленте и выполните группирование по стране, а агрегирование — число.
Вы увидите те же данные, что и на следующем рисунке.
Наконец, вернитесь на вкладку "Сервис" ленты и выберите "Остановить диагностику". Это действие останавливает трассировку и создает файл диагностики. Сводка и подробные таблицы отображаются в левой части.
Если отследить весь сеанс редактирования, обычно видно примерно следующее: вычисление исходного запроса, затем вычисления, связанные с соответствующим навигатором, а затем как минимум один запрос, генерируемый для каждого применённого шага (а иногда и больше — в зависимости от конкретных действий в пользовательском интерфейсе). В некоторых соединителях параллельные оценки выполняются по причинам производительности, которые дают аналогичные наборы данных.
Обновление предварительной версии
После завершения преобразования данных создайте последовательность шагов в запросе. При выборе "Обновить предварительную версию" или "Обновить все" в редакторе Power Query вы не увидите только один шаг в диагностике запросов. Обновление в Редактор Power Query явно обновляет запрос, заканчивающийся последним шагом. Затем система возвращается назад по применённым шагам и обновляет запрос до этого момента, начиная от источника.
Этот процесс означает, что если ваш запрос содержит пять шагов, включая Source и Navigator, вы увидите в результатах диагностики пять разных оценок. Первая по хронологии оценка часто (но не всегда) занимает больше всего времени. Эта большая продолжительность обусловлена двумя разными причинами:
- Он может кэшировать входные данные, представляющие более ранние этапы пользовательского запроса, чтобы запросы, выполняемые после него, могли быстрее обращаться к ним локально.
- К нему применены преобразования, которые значительно сокращают объём возвращаемых им данных.
При выборе "Обновить все" он обновляет все запросы. Вам нужно отфильтровать только то, что вас интересует, как вы, вероятно, и ожидаете.
Полное обновление
Диагностику запросов можно использовать для анализа так называемого окончательного запроса, который формируется при обновлении в Power BI, а не только в рамках работы в редакторе Power Query. Для этого сначала необходимо загрузить данные в модель один раз. Если вы планируете сделать это, убедитесь, что если выбрать "Закрыть" и "Применить ", окно редактора закрывается (прерывает трассировку), поэтому необходимо выполнить это во втором обновлении или выбрать значок раскрывающегося списка в разделе "Закрыть" и "Применить" и выберите " Применить ".
В любом случае выберите "Пуск диагностики " в разделе "Диагностика " вкладки "Сервис " в редакторе. При выборе этого параметра обновите модель или даже нужную таблицу.
После завершения загрузки данных в модель нажмите кнопку "Остановить диагностику".
Вы увидите некоторое сочетание метаданных и запросов данных. Вызовы метаданных захватывают информацию, которую они могут получить о источнике данных. Получение данных — это доступ к источнику данных, создание окончательно созданного запроса источника данных с сложенными операциями, а затем выполнение любых вычислений, отсутствующих на вершине, локально.
Важно отметить, что только потому, что вы видите ресурс (базу данных, веб-конечную точку и т. д.) или запрос источника данных в диагностике, это не означает, что это обязательно выполняет сетевое действие. Power Query может получить эти сведения из своего кэша.
Шаг диагностики
Функция «Диагностика шага» показывает, какие проверки выполняются вплоть до конкретного шага. Эта информация помогает определить, как выглядит производительность на данном этапе и какие части вашего запроса выполняются локально или удалённо.
Если вы используете шаг диагностики для созданного ранее запроса, вы увидите, что он возвращает около 10 строк. Если посмотреть на последнюю строку с запросом источника данных, вы получите четкое представление о том, как выглядит окончательный создаваемый запрос к источнику данных. В этом случае вы видите, что Power Query фильтрует представителя по продажам удаленно, но группирование происходит локально.
При запуске и остановке диагностики и обновлении того же запроса вы получите 40 строк. Как упоминалось ранее, Power Query получает информацию о каждом шаге, а не только на последнем шаге. Такое поведение затрудняет анализ одной конкретной части запроса.