Визуал с обновить: как обновить MS Visual C++, MS .NET Framework, VCredist

Содержание

Обновление записей в приложении просмотра данных. Обработка баз данных на Visual Basic®.NET

Обновление записей в приложении просмотра данных

До сих пор в приведенных ранее примерах нам удавалось только извлекать и просматривать данные. А изменять данные можно было только в элементах пользовательского интерфейса, но их нельзя было сохранить (зафиксировать) в базе данных.

Интуитивно понятно, что изменения в связанном с данными элементе управления пользовательского интерфейса должны автоматически сохраняться в базе данных. Именно так работают различные связанные с данными элементы управления пользовательского интерфейса в прежних версиях Visual Basic. Почему же в Windows Forms на платформе.NET связывание с данными организовано иначе?

Принудительная фиксация обновлений в источнике данных с помощью дополнительной строки кода продиктована требованиями гибкости и более высокой производительности. Рассмотрим принцип работы объекта DataSet на платформе .NET.

На рис. 1.15 показана схема взаимосвязи между формой, объектом DataSet и базой данных в приложении на основе Windows Forms.

РИС. 1.15. Схема взаимосвязи между связанной формой, объектом DataSet и базой данных


В созданном ранее приложении все данные в исходном состоянии находятся в базе данных. Затем они извлекаются и сохраняются в памяти в объекте DataSet. Форма содержит элементы управления, связанные с полями таблицы в объекте DataSet. Форма обнаруживает появление новых данных и автоматически отображает содержимое полей в связанных с данными элементах управления.

В связанном с данными приложении изменение содержимого связанного с данными элемента управления влияет только на объект DataSet, т.е. изменение содержимого текстового поля приводит к изменению содержимого записи в таблице, которая находится в объекте DataSet. Но изменение объекта DataSet не копируется в базу данных, а сохраняется до тех пор, пока не поступит явное указание скопировать их в базу данных (с помощью метода Update набора данных DataSet). Хотя явное включение этой инструкции может показаться излишним (ведь в прежних версиях Visual Basic этого делать было не нужно), но на самом деле оно позволяет добиться более высокой производительности. Дело в том, что в таком случае приложению не нужно постоянно поддерживать соединение с базой данных во время редактирования данных пользователем.

В листинге 1.2 показан пример модифицированных обработчиков событий, которые позволяют редактировать данные в созданном ранее приложении.

Листинг 1.2. Сохранение данных с помощью явного обновления объекта DataSet при перемещении пользователя к другим записям

Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bfnNext.Click

 Me.BindingContext(DsCustomer1, «tbICustomer»).Position += 1

 SqlDataAdapter1.Update(DsCustomer1)

 ShowDataStatus()

End Sub

Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrevious.Click

 Me. BindingContext(DsCustomerl, «tblCustomer»).Position -= 1

 SqlDataAdapter1.Update(DsCustomer1)

 ShowDataStatus()

End Sub

Конечно, обновлять каждую запись при перемещении пользователя к другим записям совсем не обязательно. Поскольку разработчик может контролировать способ обновления объекта DataSet, можно было бы организовать обновление внесенных изменений с помощью специальной кнопки или команды меню Save. Можно также отложить фиксацию обновлений до окончания редактирования группы строк, т.е. использовать пакетное обновление. ВADO.NET для пакетного обновления не нужно создавать какой-либо иной специализированный код, потому что оно выполняется автоматически объектами DataSet (который сохраняет данные в памяти) и SqlDataAdapter (который отвечает за выполнение необходимых команд управления базой данных для гарантированного корректного представления, вставки, обновления и удаления данных). Более подробно связь между этими объектами описывается в главах 5, «ADO. NET: объект DataSet», и 6, «ADO.NET: объект DataAdapter».

Немного о демонстрационном приложении.

Немного о демонстрационном приложении.
Любой автор статьи рано или поздно сталкивается с нелегким вопросом: какую среду разработки использовать для иллюстрирования излагаемого материала. Даже после выбора Visual C++ в качестве базы остается несколько альтернативных путей:

Ускоренное обновление данных

Ускоренное обновление данных
Наибольший выигрыш в скорости при использовании Yaffil наблюдается при обновлении данных.Переработаны алгоритмы, связанные с управлением деревом «грязных страниц» буферного кэша, в результате чего устранено замедление при массивных

Как обеспечить в приложении возможность подключения модулей

Как обеспечить в приложении возможность подключения модулей
Подключаемый к приложению модуль является динамической библиотекой, которая реализует какой-нибудь один или несколько интерфейсов. Интерфейс — это класс, содержащий только чисто виртуальные функции. Связь

Использование программы Microsoft Visio для просмотра и изменения схемы базы данных

Использование программы Microsoft Visio для просмотра и изменения схемы базы данных
Помимо инструментов среды Visual Studio .NET, для создания, просмотра и изменения схем базы данных могут использоваться другие очень удобные средства. Программа Microsoft Visio обладает всеми необходимыми

Создание приложения для просмотра данных

Создание приложения для просмотра данных
В предыдущем примере показан простейший способ связывания данных на основе извлечения всей таблицы и отображения ее в элементе управления DataGrid. А как отобразить только одну запись? Для этого потребуется использовать элементы

Обновление данных в объекте DataSet

Обновление данных в объекте DataSet
Для обновления отдельной записи таблицы необходимо просто организовать доступ к нужной записи и присвоить новое значение одному из полей. Например, для изменения номера отдела, к которому относится Sam Johnson, можно использовать следующую

Обновление базы данных с помощью объекта адаптера данных

Обновление базы данных с помощью объекта адаптера данных
Адаптеры данных могут не только заполнять для вас таблицы объекта DataSet. Они могут также поддерживать набор объектов основных SQL-команд, используя их для возвращения модифицированных данных обратно в хранилище

Запись Audio CD в приложении Nero Burning ROM

Запись Audio CD в приложении Nero Burning ROM
1. Вставьте чистый диск в записывающий привод компьютера и запустите программу Nero StartSmart.2. Перейдите на вкладку Rip and Burn (Перенос и запись).3. Щелкните правой кнопкой мыши на задании Burn Audio CD (Запись аудио-диска). В открывшемся контекстном

Запись Audio CD в приложении Nero Express

Запись Audio CD в приложении Nero Express
Диск в формате Audio CD можно записать и в приложении Nero Express. Для этого нужно выполнить следующее.1. Вставьте чистый диск в записывающий привод компьютера и запустите программу Nero StartSmart.2. Перейдите на вкладку Rip and Burn (Перенос и запись).3.

22.3. Обновление записей

22.3. Обновление записей
При рассмотрении процесса удаления записи уже обсуждался код, приводящий к обновлению записи.Когда обнаруживается корректная запись, все переменные поля записи с помощью переменной, выполняющей присваивание по умолчанию, назначаются переменной

Продолжение просмотра

Продолжение просмотра
Чтобы глубоко понять концепции, предпочтительно читать эту книгу последовательно, однако читатели, желающие дополнить данный теоретический обзор, могут, прежде чем идти дальше, посмотреть, как работает метод на практическом примере. Для этого

Обновление Visual Studio Community 2017 — Степан Береговой

Внимание появилось подробное видео про установку, настройку, активацию Visual Studio Community 2019

За полтора месяц после выхода Visual Studio вышло уже 7 обновлений.  На мой взгляд, это  очень оперативно для такой серьезной программы. Устраняются многие проблемы и баги первой версии и даже добавляются новые фичи.

Поэтому обновляться надо обязательно. Как это сделать и будет рассказано в этой статье. Статья рассчитана на новичков и все будет показано достаточно подробно.  Алгоритм действий  по обновлению не единственно возможный.  Я показываю свой путь.

Первое, что нужно сделать это проверить, а нужно ли проводить обновление. Может уже и так все установлено.

Открываем Visual Studio 2017 и заходим в меню Help -> About Microsoft Visual Studio

Тут и далее все названия на английском, в статье по установке Visual Studio 2017 написано почему мне нравится такой вариант. Но, думаю, и у тех кого русскоязычная версия студии проблем не возникнет.

проверка установленной версии Visual Studio

В открывшемся окне можно посмотреть какая версия у вас установлена. Это позволит понять как сильно программа устарела. У меня версия 26228.9.

окно о программе

Вот тут https://www.visualstudio.com/en-us/news/releasenotes/vs2017-relnotes можно посмотреть историю выхода обновлений. Русскоязычная страница (https://www.visualstudio.com/ru-ru/news/releasenotes/vs2017-relnotes) отстает с переводом этой статьи. Поэтому я рекомендую смотреть только англоязычную версию.

История обновлений на момент выхода статьи:

April 17, 2017 — version 15.1 (26403.07)

April 10, 2017 — version 15.1 (26403.03)

April 5, 2017 — version 15.1 (26403.00)

March 31, 2017 — version 15.0 (26228.12)

March 28, 2017 — version 15.0 (26228.10)

March 14, 2017 — version 15.0 (26228.09)

March 7, 2017 — version 15.0 (26228. 04)

Т.е. получается, что у меня установлено только обновление за 14 марта. Не порядок. Надо устранять.

Заходим в меню Tools -> Extensions and Updates  и видим, есть доступное обновление для VS. Впрочем мы это уже посмотрели вручную. Впрочем, можно было бы зайти сразу в это меню и не вникать сильно в версии программы.

Доступные обновления для VS

Кликаем Update.

начался процесс обновления

У меня оказался устаревшим инсталлятор. И сначала пришлось обновить его.

сначала пришлось обновить инсталлятор

Кликаю Update.  И получаю ошибку… Читаю, ничего страшного — нужно просто закрыть студию. Закрываю и жму Retry.

Ошибка во время установкиустановка обновлений началась

Началась установка. Теперь все в порядке. Надо подождать. У кого сколько времени, но минут 10-15 точно займет.

Все обновления успешно установлены

Установка завершена.

Из любопытства заглядываю в справку о программе. Версия поменялась на последнюю  доступную. Надеюсь эта статья будет кому либо полезна.

версия визуал студио после установки обновлений

Еще статьи по теме:

Установка Visual Studio 2017 Community

Активация VS 2017

Опубликовано Автор SBeregovoyРубрики Без рубрикиМетки Visual Studio, новичкам

Автоматическое обновление страницы в Power BI Desktop — Power BI

  • Статья

ПРИМЕНЯЕТСЯ К:
Рабочий стол Power BI
Служба Power BI

При отслеживании критических событий необходимо, чтобы данные обновлялись сразу после обновления исходных данных. Например, в обрабатывающей промышленности вам необходимо знать, когда машина неисправна или близка к неисправности. Если вы отслеживаете такие сигналы, как настроения в социальных сетях, вы хотите знать о внезапных изменениях, как только они происходят.

Автоматическое обновление страницы в Power BI позволяет вашей активной странице отчета запрашивать новые данные с предопределенной периодичностью для источников DirectQuery. Кроме того, автоматическое обновление страницы также поддерживает прокси-модели.

Типы обновления

При использовании автоматического обновления страницы доступны два типа обновления: фиксированный интервал и обнаружение изменений.

Фиксированный интервал

Этот тип обновления позволяет обновлять все визуальные элементы на странице отчета на основе постоянного интервала, например, одной секунды или пяти минут. Когда этот конкретный интервал достигнут, все визуальные элементы на этой странице отправляют запрос на обновление в источник данных и обновляются соответствующим образом.

Обнаружение изменений

Этот тип обновления позволяет обновлять визуальные элементы на странице на основе обнаружения изменений в данных, а не определенного интервала обновления. В частности, эта мера опрашивает изменения в вашем источнике DirectQuery. Помимо определения меры, необходимо также выбрать, как часто Power BI Desktop будет проверять наличие изменений. При публикации в службе этот тип обновления поддерживается только в рабочих областях, которые являются частью емкости Premium. Источники LiveConnect, такие как службы Analysis Services и наборы данных Power BI, не поддерживаются.

Создание отчетов с автоматическим обновлением страницы в Power BI Desktop

Автоматическое обновление страницы доступно для источников DirectQuery и некоторых сценариев LiveConnect, поэтому оно будет доступно только при подключении к поддерживаемому источнику данных. Это ограничение распространяется на оба типа автоматического обновления страницы.

Чтобы использовать автоматическое обновление страницы в Power BI Desktop, выберите страницу отчета, для которой вы хотите включить автоматическое обновление страницы. На панели Visualizations выберите Форматирование (малярный валик) и найдите раздел Обновление страницы в нижней части панели.

  1. Включает или выключает обновление страницы.
  2. Тип обновления
  3. Входы и информация (в зависимости от типа обновления)

Карточка Обновление страницы будет доступна, только если вы подключены к источнику DirectQuery. Чтобы включить автоматическое обновление страницы, переключатель должен быть в положении «Вкл.». Необходимые входные данные и предоставленная информация будут зависеть от выбранного типа обновления.

Настройка фиксированного интервала

При выборе Автообновление страницы в качестве типа обновления необходимо указать желаемый интервал обновления. Значение по умолчанию — 30 минут. (Минимальный интервал обновления составляет одну секунду.) Ваш отчет начнет обновляться с заданным вами интервалом.

Если вы являетесь администратором и вам необходимо изменить интервал обновления, посетите страницу Настройка рабочих нагрузок в емкости Premium.

При нажатии на Показать подробности Power BI предоставит дополнительную информацию о:

  • Если эта функция включена администратором (только при входе в учетную запись Power BI).
  • Минимальный интервал, разрешенный администратором (только при входе в учетную запись Power BI).
  • Фактическая частота обновления (обычно больше, чем выбранный вами интервал).
  • Время последнего обновления.

Настройка обнаружения изменений

При выборе Обнаружение изменений в качестве типа обновления отображается ссылка на Добавить обнаружение изменений . Вы также можете получить доступ к окну обнаружения изменений на вкладке Моделирование на ленте. Затем щелкните значок Обнаружение изменений в разделе Обновление страницы . Наконец, вы можете щелкнуть правой кнопкой мыши или выбрать стрелку раскрывающегося списка рядом с любым значением в области значений и выбрать в меню Обнаружение изменений .

Когда окно открыто, вам предоставляется опция Тип меры , где вы можете выбрать существующую меру или создать новую. При выборе существующей меры вам просто нужно выбрать нужную меру из списка полей или перетащить ее в Выберите существующий раздел меры . При создании новой меры вы можете выбрать расчет для меры между числом, числом различных, минимумом, максимумом и суммой. Например, вы можете использовать подсчет различных для подсчета идентификаторов клиентов и обновлять только при добавлении нового клиента в список. После того, как вы выбрали меру, вы должны указать, как часто Power BI будет проверять наличие изменений . Это интервал того, как часто Power BI будет вычислять измерения и опрашивать изменения. После нажатия кнопки «Применить» в списке полей появится новая мера со значком обнаружения изменений.

Затем, вернувшись в раздел обновления страницы, вы увидите информацию о том, какая мера используется для обнаружения изменений, и определенный интервал для справки.

Примечание

Для каждой модели допускается только одна мера обнаружения изменений.

Определение интервала обновления

Если автоматическое обновление страницы включено, Power BI Desktop постоянно отправляет запросы в источник DirectQuery. После отправки запроса возникает задержка перед возвратом данных. Поэтому для коротких интервалов обновления необходимо убедиться, что запросы успешно возвращают запрошенные данные в пределах настроенного интервала. Если данные не возвращаются в течение этого интервала, визуальные элементы будут обновляться реже, чем настроено.

Эти соображения применимы как к типам обновления с фиксированным интервалом, так и к типам обновления обнаружения изменений. Основное отличие состоит в том, что для обнаружения изменений существует только один запрос, возвращающийся к источнику с фиксированным интервалом, а обновление визуальных элементов запускается только при изменении значения меры обнаружения изменений.

Рекомендуется, чтобы интервал обновления соответствовал ожидаемой скорости поступления новых данных:

  • Если новые данные поступают в источник каждые 20 минут, интервал обновления не может быть меньше 20 минут.
  • Если новые данные поступают каждую секунду, установите интервал в одну секунду.

Для коротких интервалов обновления, таких как одна секунда, примите во внимание следующие факторы:

  • Тип источника данных DirectQuery.
  • Нагрузка, создаваемая вашими запросами.
  • Расстояние от средств просмотра отчетов до центра обработки данных емкости.

Вы можете оценить время возврата с помощью Анализатора производительности в Power BI Desktop и меню отображения сведений в разделе обновления страницы для типа обновления с фиксированным интервалом. Анализатор производительности позволяет проверить, достаточно ли времени для каждого визуального запроса, чтобы получить результаты из источника. Это также позволяет вам определить, где тратится время. На основе результатов Performance Analyzer вы можете настроить источник данных или поэкспериментировать с другими визуальными элементами и мерами в своем отчете.

На этом изображении показаны результаты источника DirectQuery в анализаторе производительности:

Другие характеристики этого источника данных:

  • Данные поступают со скоростью 2 секунды.
  • Анализатор производительности показывает максимальное время запроса + отображения примерно 4,9 секунды (4688 миллисекунд).
  • Источник данных настроен на обработку примерно 1000 одновременных запросов в секунду.
  • Предполагается, что отчет одновременно просматривают примерно 10 пользователей.

Эти характеристики приводят к следующему уравнению:

  • 5 изображений x 10 пользователей = примерно 50 запросов

Результат этого расчета показывает более высокую нагрузку, чем может поддерживать источник данных. Данные поступают со скоростью две секунды, так что это должна быть ваша частота обновления. Однако, поскольку выполнение запроса занимает около пяти секунд, вы должны установить его более чем на пять секунд.

Также обратите внимание, что этот результат может отличаться при публикации отчета в службе. Это различие возникает из-за того, что в отчете используется экземпляр Azure Analysis Services, размещенный в облаке. Возможно, вы захотите соответствующим образом настроить частоту обновления.

Для учета запросов и времени обновления Power BI запускает следующий запрос на обновление, только когда все оставшиеся запросы на обновление завершены. Таким образом, даже если ваш интервал обновления короче, чем время, необходимое для обработки ваших запросов, Power BI обновляется только после завершения оставшихся запросов.

В случае типа обновления обнаружения изменений эти соображения по-прежнему применимы. Кроме того, анализатор производительности показывает результаты запроса меры обнаружения изменений, даже если они не соответствуют ни одному визуальному элементу в вашем отчете. Мы предоставили эту возможность, чтобы вы могли устранять неполадки этого типа мер, следуя тем же рекомендациям, которые мы упоминали ранее. Основное отличие этого типа обновления заключается в том, что к источнику данных направляется только один запрос, а не все запросы от всех визуальных элементов. Это по-прежнему имеет место, если несколько пользователей просматривают отчет.

Для того же сценария, который мы обсуждали ранее:

Подводя итог, можно сказать, что при использовании обнаружения изменений в источник данных отправляется только один запрос, пока не будет обнаружено изменение. Когда это происходит, та же логика, что и для типа обновления с фиксированным интервалом, применяется для обновления всех визуальных элементов для всех пользователей, создающих одинаковое количество запросов. Такой подход должен быть более эффективным в долгосрочной перспективе.

Дополнительные вопросы и ответы о производительности и устранении неполадок можно найти в разделе часто задаваемых вопросов далее в этой статье.

Автоматическое обновление страницы в службе Power BI

Вы также можете настроить автоматическое обновление страницы для отчетов, опубликованных в службе Power BI, если источником данных является DirectQuery.

При настройке автоматического обновления страницы для отчетов в службе Power BI действия аналогичны действиям для Power BI Desktop. При настройке в службе Power BI автоматическое обновление страницы также поддерживает встроенное содержимое Power BI. На этом изображении показано обновление страницы 9Конфигурация 0014 для службы Power BI:

  1. Включает или отключает обновление страницы.
  2. Тип обновления.
  3. Входные данные и информация (в зависимости от типа обновления).

Примечание

При публикации отчета с включенным автоматическим обновлением страницы из Power BI Desktop в службу вам потребуется указать учетные данные для источника данных DirectQuery в меню настроек набора данных. Вы можете настроить учетные данные, чтобы зрители отчетов получали доступ к этому источнику данных со своими собственными идентификаторами, соблюдая любые настройки безопасности в источнике. Мера обнаружения изменений оценивается с учетными данными автора.

Интервалы обновления страницы

Типы и интервалы обновления страницы, разрешенные в службе Power BI, зависят от типа рабочей области отчета. Это относится к следующим сценариям:

  • Публикация отчета в рабочей области, в которой включено автоматическое обновление страницы.
  • Изменение интервала обновления страницы, которая уже находится в рабочей области.
  • Создание отчета прямо в сервисе.

Power BI Desktop не имеет ограничений на интервалы обновления и может выполняться каждую секунду. Однако при публикации отчетов в службе Power BI применяются определенные ограничения, описанные в следующих разделах.

Ограничения на интервалы обновления

В службе Power BI ограничения на автоматическое обновление страницы применяются в зависимости от рабочей области, в которой опубликован отчет, от того, используете ли вы службы Premium, параметры администрирования емкости Premium и тип источника данных. .

Чтобы прояснить, как работают эти ограничения, начните с общих сведений о мощностях и рабочих пространствах.

Емкости представляют собой набор ресурсов (хранилище, процессор и память), которые используются для размещения и доставки содержимого Power BI. Емкости либо общие, либо зарезервированные. А 9Общая емкость 0227 используется совместно с другими клиентами Майкрософт. Зарезервированная емкость зарезервирована для одного клиента. Общие сведения о зарезервированных мощностях см. в разделе Управление премиум-мощностями.

В общей емкости рабочие нагрузки выполняются на вычислительных ресурсах, совместно используемых с другими клиентами. Поскольку емкость требует совместного использования ресурсов, накладываются ограничения для обеспечения честной игры , такие как установка максимального размера модели (1 ГБ) и максимальной ежедневной частоты обновления (восемь раз в день).

Рабочие области Power BI находятся в емкостях. Они представляют контейнеры безопасности, совместной работы и развертывания. У каждого пользователя Power BI есть личная рабочая область, известная как My Workspace . Дополнительные рабочие области могут быть созданы для обеспечения совместной работы и развертывания. Они известны как рабочие области . По умолчанию рабочие области, в том числе личные рабочие области, создаются в общей емкости.

Подробная информация о двух сценариях рабочей области:

Общие рабочие пространства . Для обычных рабочих областей (рабочих областей, которые не являются частью емкости Premium) автоматическое обновление страницы имеет минимальный интервал 30 минут (наименьший допустимый интервал). Тип обновления обнаружения изменений недоступен в общих емкостях.

Премиум рабочие пространства . Доступность автоматического обновления страниц в рабочих областях Premium (как для фиксированного интервала, так и для обнаружения изменений) зависит от параметров рабочей нагрузки, которые администратор Premium настроил для емкости Power BI Premium. Есть две переменные, которые могут повлиять на вашу возможность настроить автоматическое обновление страницы:

  • Функция вкл/выкл . Если ваш администратор емкости отключил эту функцию, вы не сможете настроить любой тип обновления страницы в опубликованном отчете. Фиксированный интервал и обнаружение изменений можно включать и выключать отдельно.

  • Минимальный интервал обновления . При включении автоматического обновления страницы с фиксированным интервалом администратор емкости должен установить минимальный интервал обновления (значение по умолчанию — пять минут). Если ваш интервал меньше минимального, служба Power BI переопределяет ваш интервал, чтобы соблюдать минимальный интервал, установленный вашим администратором емкости.

  • Минимальный интервал выполнения . При включении обнаружения изменений администратор емкости должен установить минимальный интервал выполнения (значение по умолчанию — пять секунд). Если ваш интервал меньше минимального, служба Power BI переопределяет ваш интервал, чтобы соблюдать минимальный интервал, установленный вашим администратором емкости.

Предупреждение

Если эта мера обнаружения изменений включена в вашем наборе данных, она откроет соединение с источником данных DirectQuery для расчета меры и опроса об изменениях. Это подключение отличается от низкоприоритетных обновлений, которые Power BI уже использует.

В этой таблице более подробно описано, где доступна эта функция, а также ограничения для каждого типа емкости и режима хранения:

Режим хранения Выделенная емкость Общая емкость
DirectQuery Поддерживается FI : Да
Поддерживается CD : Да
Минимум : 1 секунда
Блокировка администратора : Да
FI поддерживается : Да
CD поддерживается : Нет
Минимум : 30 минут
Блокировка администратора : Нет
Импорт Поддерживается FI : Нет
Поддерживается CD : Нет
Минимум : Н/Д
Блокировка администратора : Н/Д
Поддерживается FI : Нет
Поддерживается CD : Нет
Минимум : Н/Д
Блокировка администратора : Н/Д
Смешанный режим (DirectQuery + другие источники данных) Поддерживается FI : Да
Поддерживается CD : Да
Минимум : 1 секунда
Блокировка администратора : Да
Поддерживается FI : Да
Поддерживается CD : Нет
Минимум : 30 минут
Блокировка администратора : Нет
Службы Analysis Services (Azure и локально) FI поддерживается : Да
CD поддерживается : Нет
Минимум : 30 минут
Переопределение администратором : Да
Поддерживается FI : Да
Поддерживается CD : Нет
Минимум : 30 минут
Блокировка администратора : Нет
Наборы данных Power BI (подключены в режиме реального времени) Поддерживается FI : Да
Поддерживается CD : Нет
Минимум : 1 секунда
Блокировка администратора : Да
Поддерживается FI : Да
Поддерживается CD : Нет
Минимум : 30 минут
Блокировка администратора : Нет
Наборы данных Power BI (подключение DirectQuery) Поддерживается FI : Нет
Поддерживается CD : Нет
Минимум : Н/Д
Блокировка администратора : Н/Д
Поддерживается FI : Нет
Поддерживается CD : Нет
Минимум : Н/Д
Блокировка администратора : Н/Д
Наборы данных Power BI Push Поддерживается FI : Да
Поддерживается CD : Нет
Минимум : 30 минут
Блокировка администратора : Да
Поддерживается FI : Да
Поддерживается CD : Нет
Минимум : 30 минут
Блокировка администратора : Нет
Наборы потоковых данных Power BI FI поддерживается : Нет
CD поддерживается : Нет
Минимум : Н/Д
Блокировка администратора : Н/Д
Поддерживается FI : Нет
Поддерживается CD : Нет
Минимум : Н/Д
Блокировка администратора : Н/Д

Легенда таблицы:

  1. FI: фиксированный интервал
  2. CD: обнаружение изменений

Предупреждение

У нас есть известная проблема при подключении из Power BI Desktop к службам Analysis Services или наборам данных Power BI, а интервал обновления составляет 30 минут или более. Визуальные элементы на странице отчета могут отображать ошибку через 30 минут.

Замечания и ограничения

При использовании автоматического обновления страницы в Power BI Desktop или в службе Power BI следует учитывать несколько моментов:

  • Режим хранения импорта не поддерживается для автоматического обновления страницы.
  • Поддерживаются составные модели, имеющие хотя бы один источник данных DirectQuery.
  • Для каждого набора данных может быть только одна мера обнаружения изменений.
  • В клиенте Power BI может быть не более 10 моделей с мерой обнаружения изменений.

Диагностика производительности

Автоматическое обновление страницы полезно для мониторинга сценариев и изучения быстро меняющихся данных. Однако это может привести к чрезмерной нагрузке на емкость или источник данных.

Чтобы предотвратить чрезмерную нагрузку на источники данных, в Power BI предусмотрены следующие меры безопасности:

  • Все запросы на автоматическое обновление страницы выполняются с более низким приоритетом, чтобы обеспечить приоритет интерактивных запросов, таких как загрузка страницы и перекрестная фильтрация визуальных элементов.
  • Если запрос не завершен до следующего цикла обновления, Power BI не выдает новые запросы на обновление, пока не завершится предыдущий запрос. Например, если у вас есть интервал обновления в одну секунду, а ваши запросы занимают в среднем четыре секунды, Power BI фактически выдает запрос только каждые четыре секунды.

Есть две области, где вы все еще можете столкнуться с узкими местами в производительности:

  1. Емкость . Запрос сначала попадает в емкость Premium, которая сворачивает и оценивает запрос DAX, сгенерированный из визуализаций отчета, в исходные запросы.
  2. Источник данных DirectQuery . Затем переведенные запросы на предыдущем шаге выполняются для источника. Источником могут быть ваши экземпляры SQL Server, источники SAP Hana и т. д.

Используя приложение Premium Capacity Metrics, доступное для администраторов, вы можете визуализировать, какая часть емкости используется низкоприоритетными запросами.

Запросы с низким приоритетом состоят из запросов на автоматическое обновление страницы и запросов на обновление модели. В настоящее время нет способа отличить загрузку от автоматического обновления страницы и запросов на обновление модели.

Если ваши ресурсы перегружены низкоприоритетными запросами, вы можете предпринять следующие действия:

  • Запросить более крупный премиальный SKU.
  • Попросите владельца отчета уменьшить интервал обновления.
  • На портале администрирования емкости вы можете:
    • Отключите автоматическое обновление страницы для этой емкости.
    • Увеличьте минимальный интервал обновления, что повлияет на все отчеты по этой емкости.

Часто задаваемые вопросы

Я автор отчета. Я определил интервал обновления своего отчета в одну секунду в Power BI Desktop, но после публикации мой отчет не обновляется в службе.

  • Убедитесь, что для страницы включено автоматическое обновление страницы. Поскольку этот параметр относится к странице, вам необходимо убедиться, что он включен для каждой страницы в отчете, который вы хотите обновить.
  • Проверьте, выполняли ли вы загрузку в рабочую область с присоединенной емкостью Premium. Если вы этого не сделали, ваш интервал обновления будет заблокирован на 30 минут для фиксированного интервала, и он не будет доступен для обнаружения изменений.
  • Если ваш отчет находится в рабочей области Premium, спросите у администратора, включена ли эта функция для подключенной емкости. Кроме того, убедитесь, что минимальный интервал обновления для емкости равен или меньше интервала для вашего отчета. Это относится отдельно как к фиксированному интервалу, так и к обнаружению изменений

Я администратор емкости. Я изменил настройки интервала автоматического обновления страницы, но изменения не отражаются. Отчеты по-прежнему обновляются со скоростью, которой не должно быть, или они не обновляются, даже несмотря на то, что я включил автоматическое обновление страницы.

  • Требуется до 5 минут, чтобы изменения параметров автоматического обновления страницы, сделанные в пользовательском интерфейсе администратора емкости, распространились на отчеты.
  • Помимо включения автоматического обновления страницы для емкости, вам также необходимо включить его для страниц отчета, где вы хотите его включить.
  • Оба типа обновления управляются отдельно, поэтому убедитесь, что тип обновления, который вы включаете, включен.
  • Дополнительные сведения о включении и настройке рабочих нагрузок в емкости «Премиум» см. в разделе Настройка рабочих нагрузок в емкости «Премиум».

Мой отчет работает в смешанном режиме. (Смешанный режим означает, что отчет имеет соединение DirectQuery и источник данных Import.) Некоторые визуальные элементы не обновляются.

  • Если ваши визуальные элементы ссылаются на таблицы импорта, такое поведение ожидается. Автоматическое обновление страницы не поддерживается для импорта.
  • См. первый вопрос в этом разделе.

Мой отчет обновлялся в сервисе, но потом вдруг перестал.

  • Попробуйте обновить страницу, чтобы посмотреть, разрешится ли проблема сама собой.
  • Обратитесь к администратору емкости. Администратор мог отключить эту функцию или увеличить минимальный интервал обновления. (См. второй вопрос в этом разделе.)

Я автор отчета. Мои визуальные эффекты не обновляются с указанной частотой. Они обновляются медленнее.

  • Если ваши запросы выполняются дольше, интервал обновления будет увеличен. Автоматическое обновление страницы ожидает завершения всех запросов, прежде чем запускать новые.
  • Ваш администратор емкости мог установить минимальный интервал обновления, превышающий тот, который вы указали в своем отчете. Попросите администратора емкости уменьшить минимальный интервал обновления.

Обрабатываются ли запросы на автоматическое обновление страницы из кэша?

  • Нет. Все запросы на автоматическое обновление страницы обходят любые кэшированные данные.

Моя мера обнаружения изменений не запускает никаких обновлений

  • Убедитесь, что обнаружение изменений включено для страницы. Поскольку этот параметр относится к странице, вам необходимо убедиться, что он включен для каждой страницы в отчете, который вы хотите обновить.
  • Проверьте, выполняли ли вы загрузку в рабочую область с присоединенной емкостью Premium. В противном случае обнаружение изменений не будет работать.
  • Если ваш отчет находится в рабочей области Premium, спросите у администратора, включена ли эта функция для подключенной емкости. Кроме того, убедитесь, что минимальный интервал выполнения для емкости равен или меньше интервала для вашего отчета.
  • Если вы проверили все элементы, упомянутые ранее, проверьте в Power BI Desktop или в режиме редактирования, меняется ли мера вообще. Для этого перетащите его на холст и проверьте, изменилось ли значение. Если это не так, мера может оказаться неподходящим выбором для опроса изменений в источнике данных.

При подключении к службам анализа я не вижу переключатель APR

  • Убедитесь, что модель служб Analysis Services находится в режиме прямого запроса.

Дальнейшие действия

Дополнительные сведения см. в следующих статьях:

  • Использование DirectQuery в Power BI
  • Использование составных моделей в Power BI Desktop
  • Используйте анализатор производительности для проверки производительности элемента отчета
  • Развертывание и управление мощностями Power BI Premium
  • Источники данных в Power BI Desktop
  • Формирование и объединение данных в Power BI Desktop
  • Подключение к книгам Excel в Power BI Desktop
  • Ввод данных непосредственно в Power BI Desktop

Добавочное обновление наборов данных и данных в реальном времени в Power BI — Power BI

  • Статья

Добавочное обновление расширяет возможности запланированных операций обновления, обеспечивая автоматическое создание разделов и управление ими для таблиц наборов данных, которые часто загружают новые и обновленные данные. Для большинства наборов данных одна или несколько таблиц содержат данные транзакций, которые часто изменяются и могут расти экспоненциально, как таблица фактов в реляционной или звездообразной схеме базы данных. Политика добавочного обновления для разделения таблицы, обновления только самых последних разделов импорта и, при необходимости, использования другого раздела DirectQuery для данных в реальном времени может значительно сократить объем данных, которые необходимо обновить. В то же время эта политика гарантирует, что последние изменения в источнике данных будут включены в результаты запроса.

С добавочным обновлением и данными в реальном времени:

  • Требуется меньше циклов обновления для быстро меняющихся данных. Режим DirectQuery получает последние обновления данных по мере обработки запросов, не требуя высокой частоты обновления.
  • Обновления выполняются быстрее. Необходимо обновить только самые последние измененные данные.
  • Обновления более надежны. Длительные подключения к энергозависимым источникам данных не нужны. Запросы к исходным данным выполняются быстрее, что снижает вероятность вмешательства сетевых проблем.
  • Потребление ресурсов снижено. Меньше данных для обновления снижает общее потребление памяти и других ресурсов как в Power BI, так и в системах источников данных.
  • Включены большие наборы данных. Наборы данных с потенциальными миллиардами строк могут расти без необходимости полного обновления всего набора данных при каждой операции обновления.
  • Настройка проста. Политики добавочного обновления определяются в Power BI Desktop с помощью всего нескольких задач. Когда Power BI Desktop публикует отчет, служба автоматически применяет эти политики при каждом обновлении.

При публикации модели Power BI Desktop в службе каждая таблица в новом наборе данных имеет один раздел. Этот единственный раздел содержит все строки для этой таблицы. Если таблица большая, скажем, с десятками миллионов строк или более, обновление для этой таблицы может занять много времени и потреблять чрезмерное количество ресурсов.

При добавочном обновлении служба динамически секционирует и отделяет данные, которые необходимо часто обновлять, от данных, которые можно обновлять реже. Данные таблицы фильтруются с использованием параметров даты и времени Power Query с зарезервированными именами с учетом регистра RangeStart и RangeEnd . При настройке добавочного обновления в Power BI Desktop эти параметры используются для фильтрации только небольшого периода данных, загружаемых в модель. Когда Power BI Desktop публикует отчет в службе Power BI, при первой операции обновления служба создает разделы добавочного обновления и истории, а также, при необходимости, раздел DirectQuery в реальном времени на основе параметров политики добавочного обновления. Затем служба переопределяет значения параметров для фильтрации и запроса данных для каждой секции на основе значений даты и времени для каждой строки.

При каждом последующем обновлении фильтры запросов возвращают только те строки, которые находятся в пределах периода обновления, динамически определяемого параметрами. Те строки с датой/временем в пределах периода обновления обновляются. Строки с датой/временем, которые больше не входят в период обновления, становятся частью исторического периода, который не обновляется. Если раздел DirectQuery, работающий в режиме реального времени, включен в политику добавочного обновления, его фильтр также обновляется, чтобы он улавливал любые изменения, происходящие после периода обновления. Накатываются как периоды обновления, так и исторические периоды. По мере создания новых разделов добавочного обновления разделы обновления, которые больше не находятся в периоде обновления, становятся историческими разделами. Со временем исторические разделы становятся менее детализированными по мере их объединения. Когда историческая секция больше не находится в историческом периоде, определенном политикой, она полностью удаляется из набора данных. Такое поведение известно как шаблон скользящего окна .

Преимущество добавочного обновления заключается в том, что служба обрабатывает все это за вас на основе определенных вами политик добавочного обновления. На самом деле процесс и созданные из него разделы не видны в сервисе. В большинстве случаев четко определенная политика добавочного обновления — это все, что необходимо для значительного повышения производительности обновления набора данных. Однако раздел DirectQuery в реальном времени поддерживается только для наборов данных в емкостях Premium. Power BI Premium также поддерживает более сложные сценарии секционирования и обновления с помощью конечной точки XML для анализа (XMLA).

Требования

В следующих разделах описаны поддерживаемые планы и источники данных.

Поддерживаемые планы

Инкрементальное обновление поддерживается для наборов данных Power BI Premium, Premium на пользователя, Power BI Pro и Power BI Embedded.

Получение последних данных в режиме реального времени с помощью DirectQuery поддерживается только для наборов данных Power BI Premium, Premium на пользователя и Power BI Embedded.

Поддерживаемые источники данных

Инкрементное обновление и данные в режиме реального времени лучше всего подходят для структурированных реляционных источников данных, таких как база данных SQL и Azure Synapse, но также могут работать и для других источников данных. В любом случае ваш источник данных должен поддерживать следующее:

Фильтрация по дате — Источник данных должен поддерживать какой-либо механизм для фильтрации данных по дате. Для реляционного источника это обычно столбец даты типа дата/время или целочисленный тип данных в целевой таблице. Параметры RangeStart и RangeEnd, которые должны быть типа данных даты/времени, фильтруют данные таблицы на основе столбца даты. Для столбцов дат целочисленных суррогатных ключей в форме ггггммдд можно создать функцию, которая преобразует значение даты/времени в параметрах RangeStart и RangeEnd для соответствия целочисленным суррогатным ключам столбца даты. Дополнительные сведения см. в разделе Настройка добавочного обновления — преобразование DateTime в целое число.

Для других источников данных параметры RangeStart и RangeEnd должны быть переданы источнику данных каким-либо образом, обеспечивающим фильтрацию. Для файловых источников данных, в которых файлы и папки упорядочены по дате, параметры RangeStart и RangeEnd можно использовать для фильтрации файлов и папок, чтобы выбрать файлы для загрузки. Для веб-источников данных параметры RangeStart и RangeEnd могут быть интегрированы в HTTP-запрос. Например, следующий запрос можно использовать для добавочного обновления трассировок из экземпляра AppInsights:

 лет
    strRangeStart = DateTime.ToText(RangeStart,[Format="yyyy-MM-dd'T'HH:mm:ss'Z'", Culture="en-US"]),
    strRangeEnd = DateTime.ToText(RangeEnd,[Format="yyyy-MM-dd'T'HH:mm:ss'Z'", Culture="en-US"]),
    Источник = Json.Document(Web.Contents("https://api.applicationinsights.io/v1/apps//query",
    [Запрос=[#"запрос"="следы
    | где отметка времени >= datetime(" & strRangeStart &")
    | где метка времени < datetime("& strRangeEnd &")
    ",#"x-ms-app"="AAPBI",#"prefer"="ai. response-thinning=true"],Timeout=#duration(0,0,4,0)])),
    Карта типов = # таблица (
    { "Типы Аналитики", "Тип" },
    {
    { "строка", Text.Type},
    { "целое", Int32.Type},
    { "длинный", Int64.Type},
    { "настоящий", Double.Type},
    { "промежуток времени", Duration.Type },
    { "дата-время", DateTimeZone.Type},
    { "bool", Логический.Тип},
    { "руководство", Text.Type},
    { "динамический", Text.Type }
    }),
    DataTable = Источник[таблицы]{0},
    Столбцы = Table.FromRecords (DataTable [столбцы]),
    ColumnsWithType = Table.Join(Столбцы, {"тип"}, TypeMap, {"Типы аналитики"}),
    Строки = Table.FromRows (Таблица данных [строки], Столбцы [имя]),
    Таблица = Table.TransformColumnTypes(Rows, Table.ToList(ColumnsWithType, (c) => {c{0}, c{3}}))
в
Стол
 

Если настроено добавочное обновление, выражение Power Query, включающее фильтр даты и времени на основе параметров RangeStart и RangeEnd, выполняется для источника данных. Если фильтр указан в шаге запроса после начального исходного запроса, важно, чтобы свертывание запроса сочетало начальный шаг запроса с шагами, ссылающимися на параметры RangeStart и RangeEnd. Например, в следующем выражении запроса Table.SelectRows будет свернут, поскольку он сразу следует за Sql.Database шаг, а SQL Server поддерживает сворачивание:

 пусть
  Источник = Sql.Database ("dwdev02", "AdventureWorksDW2017"),
  Данные = Источник{[Schema="dbo",Item="FactInternetSales"]}[Данные],
  #"Отфильтрованные строки" = Table.SelectRows(Данные, каждый [OrderDateKey] >= Int32.From(DateTime.ToText(RangeStart,[Format="yyyyMMdd"]))),
  #"Отфильтрованные строки1" = Table.SelectRows(#"Отфильтрованные строки", каждый [OrderDateKey] < Int32.From(DateTime.ToText(RangeEnd,[Format="yyyyMMdd"])))
  
в
  #"Отфильтрованные строки1"
 

Не требуется, чтобы окончательный запрос поддерживал свертывание. Например, в следующем выражении мы используем несворачиваемый NativeQuery, но интегрируем параметры RangeStart и RangeEnd непосредственно в SQL:

 let
  Query = "выберите * из dbo.FactInternetSales, где OrderDateKey >= '"& Text. From(Int32.From( DateTime.ToText(RangeStart,"yyyyMMdd"))) &"' и OrderDateKey < '"& Text.From(Int32 .From( DateTime.ToText(RangeEnd,"yyyyMMdd") )) &"' ",
  Источник = Sql.Database ("dwdev02", "AdventureWorksDW2017"),
  Данные = Value.NativeQuery (Источник, Запрос, null, [EnableFolding = false])
в
  Данные
 

Однако, если политика добавочного обновления включает получение данных в реальном времени с помощью DirectQuery, нельзя использовать преобразования без сворачивания. Если это чистая политика режима импорта без данных в реальном времени, механизм гибридных запросов может компенсировать и применить фильтр локально, что требует извлечения всех строк для таблицы из источника данных. Из-за этого добавочное обновление может быть медленным, а у процесса могут закончиться ресурсы либо в службе Power BI, либо в локальном шлюзе данных, что фактически сведет на нет цель добавочного обновления.

Поскольку поддержка свертывания запросов отличается для разных типов источников данных, необходимо выполнить проверку, чтобы убедиться, что логика фильтра включена в запросы, выполняемые для источника данных. В большинстве случаев Power BI Desktop пытается выполнить эту проверку за вас при определении политики добавочного обновления. Для источников данных на основе SQL, таких как база данных SQL, Azure Synapse, Oracle и Teradata, эта проверка надежна. Однако другие источники данных могут быть не в состоянии выполнить проверку без отслеживания запросов. Если Power BI Desktop не может подтвердить запросы, в диалоговом окне конфигурации политики добавочного обновления отображается предупреждение.

Если вы видите это предупреждение и хотите убедиться, что выполняется необходимое свертывание запросов, используйте функцию диагностики Power Query или отслеживайте запросы с помощью средства, поддерживаемого источником данных, например SQL Profiler. Если свертывание запроса не происходит, убедитесь, что логика фильтра включена в запрос, передаваемый в источник данных. Если нет, вероятно, запрос включает преобразование, предотвращающее свертывание.

Перед настройкой решения для добавочного обновления обязательно внимательно прочитайте и усвойте руководство по свертыванию запросов в Power BI Desktop и Power Query. Эти статьи помогут вам определить, поддерживают ли ваш источник данных и запросы свертывание запросов.

Один источник данных

При настройке добавочного обновления и данных в режиме реального времени с помощью Power BI Desktop или настройке расширенного решения с помощью языка сценариев табличных моделей (TMSL) или табличной объектной модели (TOM) через конечную точку XMLA, все разделы , будь то импорт или DirectQuery, должны запрашивать данные из одного источника.

Другие типы источников данных

Благодаря использованию дополнительных настраиваемых функций запросов и логики запросов добавочное обновление можно использовать с другими типами источников данных, если фильтры основаны на RangeStart и RangeEnd могут быть переданы в одном запросе, например, с такими источниками данных, как файлы книг Excel, хранящиеся в папке, файлы в SharePoint и RSS-каналы. Имейте в виду, что это расширенные сценарии, которые требуют дополнительной настройки и тестирования, помимо того, что описано здесь. Обязательно ознакомьтесь с разделом «Сообщество» далее в этой статье, чтобы узнать, как найти дополнительные сведения об использовании добавочного обновления для уникальных сценариев.

Сроки

Независимо от добавочного обновления наборы данных Power BI Pro имеют ограничение времени обновления два часа и не поддерживают получение данных в реальном времени с помощью DirectQuery. Для наборов данных в емкости Premium ограничение по времени составляет пять часов . Операции обновления интенсивно используют процессы и память. Операция полного обновления может использовать в два раза больше памяти, чем требуется только для набора данных, поскольку служба сохраняет моментальный снимок набора данных в памяти до завершения операции обновления. Операции обновления также могут быть ресурсоемкими, потребляя значительное количество доступных ресурсов ЦП. Операции обновления также должны полагаться на изменчивые подключения к источникам данных и способность этих систем источников данных быстро возвращать выходные данные запроса. Ограничение по времени — это гарантия ограничения чрезмерного потребления доступных ресурсов.

Примечание

При использовании емкостей Premium операции обновления, выполняемые через конечную точку XMLA, не имеют ограничения по времени. Дополнительные сведения см. в разделе Расширенное добавочное обновление с конечной точкой XMLA .

Поскольку добавочное обновление оптимизирует операции обновления на уровне раздела в наборе данных, потребление ресурсов может быть значительно снижено. В то же время, даже при добавочном обновлении, если только они не проходят через конечную точку XMLA, операции обновления связаны теми же двухчасовыми и пятичасовыми ограничениями. Эффективная политика добавочного обновления не только уменьшает объем данных, обрабатываемых с помощью операции обновления, но также уменьшает объем ненужных исторических данных, хранящихся в вашем наборе данных.

Запросы также могут быть ограничены ограничением времени по умолчанию для источника данных. Большинство реляционных источников данных позволяют переопределять временные ограничения в выражении Power Query M. Например, приведенное ниже выражение использует функцию доступа к данным SQL Server, чтобы установить для CommandTimeout значение 2 часа. Каждый период, определенный диапазонами политики, отправляет запрос с соблюдением настройки времени ожидания команды:

 let
    Источник = Sql.Database("myserver.database.windows.net", "AdventureWorks", [CommandTimeout=#duration(0, 2, 0, 0)]),
    dbo_Fact = Источник{[Schema="dbo",Item="FactInternetSales"]}[Данные],
    #"Отфильтрованные строки" = Table.SelectRows(dbo_Fact, каждый [OrderDate] >= RangeStart и [OrderDate] < RangeEnd)
в
    #"Отфильтрованные строки"
 

Для очень больших наборов данных в емкостях Premium, которые могут содержать миллиарды строк, первоначальная операция обновления может быть запущена. Начальная загрузка позволяет службе создавать объекты таблицы и раздела для набора данных, но не загружает и не обрабатывает данные ни в одном из разделов. Используя SQL Server Management Studio, вы можете настроить обработку секций по отдельности, последовательно или параллельно, чтобы уменьшить объем данных, возвращаемых в одном запросе, а также обойти пятичасовое ограничение по времени. Дополнительные сведения см. в разделе Расширенное добавочное обновление — предотвращение тайм-аутов при первоначальном полном обновлении.

Текущая дата и время

Текущая дата и время основаны на системной дате во время обновления. Если запланированное обновление включено для набора данных в службе, указанный часовой пояс учитывается при определении текущей даты и времени. При индивидуальном и запланированном обновлении через службу учитывается часовой пояс, если он доступен. Например, обновление, которое происходит в 20:00 по тихоокеанскому времени (США и Канада) с указанным часовым поясом, определяет текущую дату и время на основе тихоокеанского времени, а не универсального скоординированного времени (UTC), которое будет возвращено на следующий день. Операции обновления, не вызываемые через службу Power BI, например команда обновления TMSL, не учитывают часовой пояс запланированного обновления.

Настройка добавочного обновления и данных в реальном времени

В этом разделе описываются важные принципы настройки добавочного обновления и данных в реальном времени. Когда вы будете готовы к более подробным пошаговым инструкциям, см. раздел Настройка добавочного обновления и данных в реальном времени для наборов данных.

Настройка добавочного обновления выполняется в Power BI Desktop. Для большинства моделей требуется только несколько задач. Однако имейте в виду следующее:

  • После публикации в службе Power BI вы не сможете снова опубликовать ту же модель из Power BI Desktop. Повторная публикация удаляет все существующие разделы и данные, уже находящиеся в наборе данных. Если вы публикуете в емкости Premium, последующие изменения схемы метаданных можно вносить с помощью таких инструментов, как набор инструментов ALM с открытым исходным кодом, или с помощью TMSL. Дополнительные сведения см. в разделе Расширенное добавочное обновление — развертывание только метаданных.
  • После публикации в службе Power BI вы не можете загрузить набор данных обратно в виде файла .pbix в Power BI Desktop. Поскольку наборы данных в службе могут достигать больших размеров, загружать и открывать их на обычном настольном компьютере нецелесообразно.
  • При получении данных в реальном времени с помощью DirectQuery вы не можете опубликовать набор данных в рабочей области, отличной от Premium. Добавочное обновление с данными в реальном времени поддерживается только в Power BI Premium.

Создать параметры

Чтобы настроить добавочное обновление в Power BI Desktop, сначала создайте два параметра даты и времени Power Query с зарезервированными именами с учетом регистра RangeStart и RangeEnd . Эти параметры, определенные в диалоговом окне «Управление параметрами» в редакторе Power Query, изначально используются для фильтрации данных, загруженных в таблицу модели Power BI Desktop, чтобы включить только те строки, дата и время которых относятся к этому периоду. RangeStart представляет самую раннюю или самую раннюю дату/время, а RangeEnd представляет самую новую или самую последнюю дату/время. После публикации модели в службе RangeStart и RangeEnd автоматически переопределяются службой для запроса данных, определяемых периодом обновления, указанным в параметрах политики добавочного обновления.

Например, в таблице источника данных FactInternetSales в среднем появляется 10 000 новых строк в день. Чтобы ограничить количество строк, изначально загружаемых в модель в Power BI Desktop, укажите двухдневный период между RangeStart и RangeEnd .

Данные фильтра

После определения параметров RangeStart и RangeEnd можно применять настраиваемые фильтры даты к столбцу даты таблицы. Применяемые фильтры выбирают подмножество данных, которые загружаются в модель при выборе Применить .

В нашем примере FactInternetSales после создания фильтров на основе параметров и применения шагов в модель загружаются данные за два дня (примерно 20 000 строк).

Определить политику

После применения фильтров и загрузки подмножества данных в модель вы определяете политику добавочного обновления для таблицы. После публикации модели в службе служба использует политику для создания и управления разделами таблицы, а также для выполнения операций обновления. Чтобы определить политику, вы используете диалоговое окно Добавочное обновление и данные в реальном времени , чтобы указать как обязательные, так и необязательные параметры.

Таблица

В списке Select table по умолчанию используется таблица, выбранная в представлении данных. Включите добавочное обновление для таблицы с помощью ползунка. Если выражение Power Query для таблицы не включает фильтр на основе параметров RangeStart и RangeEnd , переключатель недоступен.

Обязательные параметры

Параметр Архивировать данные, начиная с даты обновления , определяет исторический период, в котором строки с датой/временем в этом периоде включаются в набор данных, а также строки за текущий неполный исторический период, а также строки в период обновления до текущей даты и времени.

Например, если указать пять лет , в таблице будут храниться исторические данные за последние пять полных лет в годовых разделах. Таблица также будет включать строки за текущий год в кварталах, месяцах или днях, вплоть до периода обновления включительно.

Для наборов данных в емкостях Premium исторические разделы, датированные задним числом, можно выборочно обновлять с точностью, определяемой этим параметром. Дополнительные сведения см. в разделе Расширенное добавочное обновление — разделы.

Параметр Добавочное обновление данных, начиная с даты обновления , определяет период добавочного обновления, в течение которого все строки с датой/временем в этом периоде включаются в разделы обновления и обновляются при каждой операции обновления.

Например, если указать период обновления в три дня, при каждой операции обновления служба переопределяет параметры RangeStart и RangeEnd для создания запроса строк с датой/временем в пределах трехдневного периода, с началом и окончанием, зависящим от текущей даты и времени. Обновляются строки с датой/временем за последние три дня до текущего времени операции обновления. С этим типом политики вы можете ожидать, что наша таблица набора данных FactInternetSales в службе, которая в среднем содержит 10 000 новых строк в день, будет обновлять примерно 30 000 строк при каждой операции обновления.

Укажите период, включающий только минимальное количество строк, необходимое для обеспечения точности отчетов. При определении политик для нескольких таблиц необходимо использовать одни и те же параметры RangeStart и RangeEnd , даже если для каждой таблицы определены разные периоды хранения и обновления.

Дополнительные параметры

Параметр Получить последние данные в реальном времени с помощью DirectQuery (только Premium) Параметр позволяет получать последние изменения из выбранной таблицы в источнике данных после периода добавочного обновления с помощью DirectQuery. Все строки с датой/временем позже периода добавочного обновления включаются в раздел DirectQuery и извлекаются из источника данных при каждом запросе набора данных.

Например, если этот параметр включен, при каждой операции обновления служба по-прежнему переопределяет параметры RangeStart и RangeEnd для создания запроса строк с датой/временем после периода обновления, причем начало зависит от текущую дату и время. Также включаются строки с датой/временем после текущего времени операции обновления. С этим типом политики таблица набора данных FactInternetSales в службе включает последние обновления данных.

Параметр Обновлять только полные дни гарантирует, что все строки за весь день будут включены в операцию обновления. Этот параметр является необязательным , если вы не включите параметр Получать последние данные в режиме реального времени с помощью параметра DirectQuery (только Premium) . Например, предположим, что ваше обновление запланировано на 4:00 утра каждое утро. Если новые строки данных появляются в таблице источника данных в течение этих четырех часов между полуночью и 4:00, вы не хотите их учитывать. Некоторые бизнес-показатели, такие как баррели в день в нефтегазовой отрасли, не имеют смысла при неполных днях. Другой пример — обновление данных из финансовой системы, где данные за предыдущий месяц утверждаются двенадцатого календарного дня месяца. Вы можете установить период обновления на один месяц и запланировать обновление на двенадцатый день месяца. При выборе этого параметра, например, данные за январь будут обновляться 12 февраля.

Имейте в виду, что если запланированное обновление не настроено для часового пояса, отличного от UTC, операции обновления в службе выполняются по времени UTC, которое может определить дату вступления в силу и полные периоды.

Параметр Обнаружение изменений данных обеспечивает еще более выборочное обновление. Вы можете выбрать столбец даты/времени, используемый для идентификации и обновления только тех дней, когда данные изменились. Этот параметр предполагает, что такой столбец существует в источнике данных, который обычно используется в целях аудита. Эта колонка не должен быть тем же столбцом, который используется для разделения данных с параметрами RangeStart и RangeEnd . Максимальное значение этого столбца оценивается для каждого из периодов в инкрементном диапазоне. Если он не изменился с момента последнего обновления, нет необходимости обновлять период, что потенциально может еще больше сократить количество дней, постепенно обновляемых с трех до одного.

Текущий дизайн требует, чтобы столбец для обнаружения изменений данных сохранялся и кэшировался в памяти. Для уменьшения количества элементов и потребления памяти можно использовать следующие методы:

  • Сохранять только максимальное значение столбца во время обновления, возможно, с помощью функции Power Query.
  • Уменьшите точность до приемлемого уровня, учитывая ваши требования к частоте обновления.
  • Определите пользовательский запрос для обнаружения изменений данных с помощью конечной точки XMLA и полностью избегайте сохранения значения столбца.

В некоторых случаях включение параметра Обнаружение изменений данных * может быть дополнительно улучшено. Например, вы можете избежать сохранения столбца последнего обновления в кэше в памяти или включить сценарии, в которых таблица конфигурации/инструкций подготавливается процессами извлечения-преобразования-загрузки (ETL) для пометки только тех разделов, которые необходимо быть обновленным. В подобных случаях для емкостей Premium используйте TMSL и/или TOM, чтобы переопределить поведение обнаружения изменений данных. Дополнительные сведения см. в разделе Расширенное добавочное обновление — настраиваемые запросы для обнаружения изменений данных.

Публикация

После настройки политики добавочного обновления вы публикуете модель в службе. Когда публикация будет завершена, вы можете выполнить начальную операцию обновления набора данных .

Примечание

Наборы данных с политикой добавочного обновления для получения последних данных в режиме реального времени с помощью DirectQuery можно публиковать только в рабочей области Premium.

Для наборов данных, опубликованных в рабочих областях, которым назначены емкости Premium, если вы считаете, что размер набора данных превысит 1 ГБ, вы можете повысить производительность операции обновления и убедиться, что размер набора данных не выходит за пределы максимального размера, включив формат хранения больших наборов данных 9.0227 до , выполняющих первую операцию обновления в службе. Дополнительные сведения см. в разделе Большие наборы данных в Power BI Premium.

Важно

После того, как Power BI Desktop опубликует модель в службе, вы не сможете загрузить этот .pbix обратно.

Обновление

После публикации в службе вы выполняете начальную операцию обновления набора данных. Это обновление должно быть индивидуальным (ручным) обновлением, чтобы вы могли отслеживать ход выполнения. Первоначальная операция обновления может занять некоторое время. Должны быть созданы разделы, загружены исторические данные, построены или перестроены такие объекты, как связи и иерархии, а вычисляемые объекты пересчитаны.

Последующие операции обновления, индивидуальные или запланированные, выполняются намного быстрее, поскольку обновляются только разделы добавочного обновления. Другие операции обработки по-прежнему должны выполняться, например объединение разделов и пересчет, но обычно это занимает гораздо меньше времени, чем начальное обновление.

Автоматическое обновление отчета

Для отчетов, использующих набор данных с политикой добавочного обновления для получения последних данных в режиме реального времени с помощью DirectQuery, рекомендуется включить автоматическое обновление страницы с фиксированным интервалом или на основе обнаружения изменений, чтобы отчеты включают самые последние данные без задержки. Дополнительные сведения см. в статье Автоматическое обновление страницы в Power BI.

Расширенное добавочное обновление

Если ваш набор данных находится в емкости Premium с включенной конечной точкой XMLA, добавочное обновление может быть дополнительно расширено для расширенных сценариев.