Обучение
Модуль
Use Power Query to load data in Dataverse - Training
Learn how to synchronize data from different sources to a Microsoft Dataverse table using Power Query and create dataflows in Power Apps.
Этот браузер больше не поддерживается.
Выполните обновление до Microsoft Edge, чтобы воспользоваться новейшими функциями, обновлениями для системы безопасности и технической поддержкой.
При обновлении в Power Query многое делается в фоновом режиме, чтобы обеспечить плавное взаимодействие с пользователем, а также эффективно и безопасно выполнять запросы. Однако в некоторых случаях можно заметить, что при обновлении данных несколько запросов источника данных активируются Power Query. Иногда эти запросы являются нормальными, но в других случаях их можно предотвратить.
В следующих разделах описывается несколько экземпляров, когда Power Query может отправлять несколько запросов в источник данных.
Соединители могут вызывать несколько вызовов к источнику данных по различным причинам, включая метаданные, кэширование результатов, разбиение на страницы и т. д. Это нормальное поведение и предназначено для работы таким образом.
Несколько запросов к одному источнику данных могут возникать, если несколько запросов извлекаются из этого источника данных. Эти запросы могут произойти даже в том случае, если только один запрос ссылается на источник данных. Если один или несколько других запросов ссылаются на этот запрос, каждый запрос вместе со всеми запросами, от которых он зависит, оценивается независимо.
В классической среде одно обновление всех таблиц в модели данных выполняется с помощью одного общего кэша. Кэширование может снизить вероятность нескольких запросов к одному источнику данных, так как один запрос может воспользоваться одним и тем же запросом, уже запущенным и кэшируемым для другого запроса. Даже здесь вы можете получить несколько запросов, так как:
В облачной среде каждый запрос обновляется с помощью собственного отдельного кэша. Поэтому запрос не может воспользоваться тем же запросом, который уже был кэширован для другого запроса.
Иногда слой свертывания Power Query может создавать несколько запросов к источнику данных на основе операций, выполняемых ниже. В таких случаях можно избежать нескольких запросов с помощью Table.Buffer
. Дополнительные сведения: буферизация таблицы
В Power BI Desktop службы Analysis Services (AS) обновляют данные с помощью двух вычислений: один для получения схемы, которую AS выполняет, запрашивая нулевые строки и одну для получения данных. Если вычисление схемы нулевой строки требует получения данных, то могут возникнуть повторяющиеся запросы источника данных.
Конфиденциальность данных выполняет собственные оценки каждого запроса, чтобы определить, являются ли запросы безопасными для выполнения вместе. Эта оценка иногда может вызвать несколько запросов к источнику данных. Признак того, что заданный запрос поступает из анализа конфиденциальности данных, заключается в том, что он имеет условие TOP 1000 (хотя не все источники данных поддерживают такое условие). Как правило, отключение конфиденциальности данных , если это приемлемо, устранит "TOP 1000" или другие запросы, связанные с конфиденциальностью данных во время обновления. Дополнительные сведения. Отключение брандмауэра конфиденциальности данных
Как и оценки, выполняемые для конфиденциальности данных, редактор Power Query по умолчанию загружает предварительную версию первых 1000 строк каждого шага запроса. Скачивание этих строк помогает убедиться, что предварительный просмотр данных готов к отображению сразу после выбора шага, но также может привести к повторяющимся запросам источника данных. Дополнительные сведения: отключение фонового анализа
Различные фоновые задачи редактора Power Query также могут активировать дополнительные запросы источника данных (например, анализ свертывания запросов, профилирование столбцов, автоматическое обновление предварительной версии 1000 строк, которая активирует Power Query после загрузки результатов в Excel и т. д.).
Вы можете изолировать экземпляры нескольких запросов, отключив определенные части процесса запроса, чтобы изолировать место, из которого приходят повторяющиеся запросы. Например, если начать:
Table.Buffer
В этом примере используется только одна оценка M, которая происходит при обновлении предварительной версии редактора Power Query. Если повторяющиеся запросы происходят на этом этапе, то они каким-то образом присущи тому, как создается запрос. Если нет, и если вы включите ранее описанные параметры по одному, вы можете наблюдать за тем, в какой момент начинаются повторяющиеся запросы.
В следующих разделах данные шаги описаны более подробно.
Вам не нужно повторно подключить или повторно создать запрос, просто откройте запрос, который вы хотите протестировать в редакторе Power Query. Вы можете дублировать запрос в редакторе, если вы не хотите перепутать существующий запрос.
Следующим шагом является отключение брандмауэра конфиденциальности данных. На этом шаге предполагается, что вы не обеспокоены утечкой данных между источниками, поэтому отключение брандмауэра конфиденциальности данных можно сделать с помощью параметров уровня конфиденциальности Always Ignore Privacy Level, описанных в разделе "Настройка быстрого объединения" в Excel или с помощью уровня "Игнорировать уровни конфиденциальности" и потенциально повысить производительность, описанную на уровнях конфиденциальности Power BI Desktop в Power BI Desktop.
Перед возобновлением нормального тестирования обязательно отмените этот шаг.
Следующим шагом является отключение фонового анализа. Фоновый анализ управляется предварительным просмотром данных для скачивания в фоновом параметре, описанном в разделе "Отключение фонового обновления Power Query" для Power BI. Этот параметр также можно отключить в Excel.
При необходимости можно также использовать для принудительного Table.Buffer
чтения всех данных, которые имитируют то, что происходит во время загрузки. Чтобы использовать в редакторе Power Query, выполните следующие действия Table.Buffer
.
В строке формул редактора Power Query нажмите кнопку fx , чтобы добавить новый шаг.
В строке формул введите имя предыдущего шага с помощью Table.Buffer(<предыдущее имя шага идет здесь>). Например, если предыдущий шаг был назван Source
, отображается = Source
строка формул. Измените шаг в строке формул, чтобы сказать = Table.Buffer(Source)
.
Дополнительные сведения: Table.Buffer
Чтобы выполнить тест, выполните обновление в редакторе Power Query.
Обучение
Модуль
Use Power Query to load data in Dataverse - Training
Learn how to synchronize data from different sources to a Microsoft Dataverse table using Power Query and create dataflows in Power Apps.