Потоковая передача в режиме реального времени в Power BI

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

В этой статье показано, как настроить и использовать семантические модели потоковой передачи в Режиме реального времени в Power BI.

Screenshot of the Environmental sensors dashboard, showing the results of the data in real-time.

Типы семантических моделей в режиме реального времени

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

Следующие три типа семантических моделей в режиме реального времени предназначены для отображения на панелях мониторинга в режиме реального времени:

  • Семантическая модель отправки
  • Семантическая модель потоковой передачи
  • Семантическая модель потоковой передачи PubNub

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

Семантическая модель отправки

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

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

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

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

  • Закрепление всего отчета с помощью параметра "Закрепить в реальном времени " не приведет к автоматическому обновлению данных.
  • После закрепления визуального элемента на панели мониторинга можно задать вопросы о семантической модели отправки на естественном языке. После выполнения запроса Q&A можно закрепить результирующий визуальный элемент на панели мониторинга, и этот визуальный элемент также будет обновляться в режиме реального времени.

Семантическая модель потоковой передачи

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

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

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

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

Семантическая модель потоковой передачи PubNub

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

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

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

Матрица семантической модели потоковой передачи

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

Возможность Явно (толкать) Потоковая передача PubNub
Плитки панели мониторинга обновляются в режиме реального времени по мере отправки данных Да.
Для визуальных элементов, созданных с помощью отчетов и закрепленных на панели мониторинга.
Да.
Для пользовательских плиток потоковой передачи, добавленных непосредственно на панель мониторинга.
Да.
Для пользовательских плиток потоковой передачи, добавленных непосредственно на панель мониторинга.
Обновление плиток панели мониторинга с помощью плавной анимации Нет. Да. Да.
Данные, хранящиеся постоянно в Power BI для исторического анализа Да. Нет.
Данные временно хранятся в течение одного часа для отрисовки визуальных элементов.
Нет.
Создание отчетов Power BI на основе данных Да. Нет. Нет.
Максимальная скорость приема данных 1 запросы
16 МБ/request
5 запросов
15 КБ/request
Н/Д
Данные не переносятся в Power BI.
Ограничения пропускной способности данных 1M строк/час Нет. Н/Д
Данные не переносятся в Power BI.

Отправка данных в семантические модели

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

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

  • REST API Power BI
  • Пользовательский интерфейс семантической модели потоковой передачи Power BI
  • Azure Stream Analytics

Использование REST API Power BI для отправки данных

REST API Power BI можно использовать для создания и отправки данных для отправки семантических моделей и потоковой передачи семантических моделей. При создании семантической модели с помощью REST API Power BI флаг указывает, defaultMode является ли семантическая модель принудительной отправкой или потоковой передачей.

Если флаг не defaultMode задан, семантическая модель по умолчанию используется для принудительной семантической модели. defaultMode Если задано pushStreamingзначение, семантическая модель — это семантическая модель отправки и потоковой передачи, а также преимущества обоих типов семантических моделей.

Примечание.

При использовании семантических моделей с defaultModepushStreamingустановленным флагом , если запрос превышает ограничение размера 15 КБ для семантической модели потоковой передачи, но меньше ограничения размера 16 МБ для семантической модели принудительной отправки, запрос успешно выполняется и обновляет данные в семантической модели push-отправки. Однако любые плитки потоковой передачи временно завершаются ошибкой.

После создания семантической модели можно использовать REST API PostRows для отправки данных. Все запросы к REST API защищены с помощью OAuth идентификатора Microsoft Entra ID.

Использование пользовательского интерфейса семантической модели потоковой передачи для отправки данных

В служба Power BI можно создать семантику модели, выбрав подход API, как показано на следующем снимке экрана:

Screenshot of the New streaming semantic model choices, showing the API selection.

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

Screenshot of the New streaming semantic model, showing Historic data analysis enabled.

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

Примечание.

Семантические модели потоковой передачи, созданные с помощью пользовательского интерфейса служба Power BI, не требуют проверки подлинности Microsoft Entra. В таких семантических моделях владелец семантической модели получает URL-адрес с ключом rowkey, который разрешает запрашивателю отправлять данные в семантику модели без использования маркера носителя OAuth идентификатора Microsoft Entra ID. Однако подход microsoft Entra ID по-прежнему работает для отправки данных в семантику модели.

Отправка данных с помощью Azure Stream Analytics

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

Azure Stream Analytics использует REST API Power BI для создания потока выходных данных в Power BI с defaultMode заданным значением pushStreaming. Результирующая семантическая модель может использовать как отправку, так и потоковую передачу. При создании семантической модели Azure Stream Analytics задает для флага retentionPolicybasicFIFOзначение . С помощью этого параметра база данных, поддерживающая семантику отправки, хранит 200 000 строк и удаляет строки в режиме первого выхода (FIFO).

Важно!

Если запрос Azure Stream Analytics приводит к очень быстрому выходу в Power BI, например один или два раза в секунду, Azure Stream Analytics начинает пакетировать выходные данные в один запрос. Эта пакетная обработка может привести к тому, что размер запроса превышает ограничение потоковой передачи, а потоковые плитки могут не отображаться. В этом случае рекомендуется замедлить скорость вывода данных в Power BI. Например, вместо максимального значения каждые секунды запрашивайте максимальное значение в течение 10 секунд.

Настройка семантической модели потоковой передачи в режиме реального времени в Power BI

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

  • Плитки с визуальными элементами из потоковых данных
  • Семантические модели , созданные из потоковых данных, которые сохраняются в Power BI

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

  1. На существующей или новой панели мониторинга нажмите кнопку "Добавить плитку".

  2. На странице "Добавить плитку" выберите "Пользовательские данные потоковой передачи" и нажмите кнопку "Далее".

    Screenshot of the Add a tile page, showing the Custom Streaming Data selection.

  3. На странице "Добавление пользовательской плитки потоковых данных" можно выбрать существующую семантику или выбрать "Управление семантических моделей", чтобы импортировать семантику потоковой передачи, если вы уже создали ее. Если у вас еще нет потоковых данных, выберите "Добавить семантику потоковой передачи", чтобы приступить к работе.

    Screenshot of the dashboard, showing the Add streaming semantic model link in the Add a custom streaming data tile.

  4. На странице "Новая семантическая модель потоковой передачи" выберите API, Azure Stream или PubNub, а затем нажмите кнопку "Далее".

    Screenshot of the New streaming semantic model choices, showing API, Azure Stream, and PubNub options.

Создание семантической модели потоковой передачи

Существует три способа создания веб-канала потоковых данных в режиме реального времени, который Power BI может использовать и визуализировать:

  • REST API Power BI с помощью конечной точки потоковой передачи в режиме реального времени
  • Azure Stream
  • PubNub

В этом разделе описаны параметры REST API Power BI и PubNub, а также объясняется, как создать плитку потоковой передачи или семантику модели из источника данных потоковой передачи. Затем можно использовать семантику модели для создания отчетов. Дополнительные сведения о параметре Azure Stream см. в статье "Выходные данные Power BI" из Azure Stream Analytics.

Использование REST API в Power BI

REST API Power BI упрощает потоковую передачу в режиме реального времени для разработчиков. После выбора API на экране "Новая семантическая модель потоковой передачи" и нажмите кнопку "Далее", вы можете предоставить записи, позволяющие Power BI подключаться к конечной точке и использовать ее. Дополнительные сведения об API см. в разделе "Использование REST API Power BI".

Screenshot of the New streaming semantic model dialog, showing the Power BI REST API entries for a connection.

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

После успешного создания потока данных вы получите конечную точку URL-адреса REST API. Приложение может вызывать конечную точку с помощью POST запросов на отправку потоковых данных в семантику Power BI. POST В запросах убедитесь, что текст запроса соответствует образцу JSON, предоставленному пользовательским интерфейсом Power BI. Например, обтекайте объекты JSON в массив.

Внимание

Для семантических моделей потоковой передачи, создаваемых в пользовательском интерфейсе служба Power BI, владелец семантической модели получает URL-адрес, содержащий ключ ресурса. Этот ключ разрешает запрашивателю отправлять данные в семантическую модель без использования маркера носителя OAuth идентификатора Microsoft Entra ID. Помните о последствиях использования секретного ключа в URL-адресе при работе с этим типом семантической модели и метода.

Использование PubNub

Интеграция потоковой передачи PubNub с Power BI помогает создавать и использовать потоки данных PubNub с низкой задержкой в Power BI. При выборе PubNub на экране "Новая семантическая модель потоковой передачи" и нажмите кнопку "Далее", вы увидите следующий экран:

Screenshot of the New streaming semantic model dialog, showing the PubNub entries for connection.

Важно!

Каналы PubNub можно защитить с помощью ключа проверки подлинности PubNub Access Manager (PAM). Этот ключ предоставляется всем пользователям, имеющим доступ к панели мониторинга. Дополнительные сведения об управлении доступом PubNub см. в разделе "Управление доступом".

Потоки данных PubNub часто являются большим объемом и не всегда подходят для хранения и исторического анализа в исходной форме. Чтобы использовать Power BI для анализа данных PubNub, необходимо агрегировать необработанный поток PubNub и отправить его в Power BI, например с помощью Azure Stream Analytics.

Пример потоковой передачи в режиме реального времени в Power BI

Ниже приведен пример работы потоковой передачи в режиме реального времени в Power BI. В этом примере используется общедоступный поток из PubNub. Следуйте примеру, чтобы увидеть значение потоковой передачи в режиме реального времени для себя.

  1. В служба Power BI выберите или создайте новую панель мониторинга. В верхней части экрана нажмите кнопку "Изменить>добавить плитку".

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

    Screenshot of the dashboard, showing the Add tile with the Custom streaming data selection.

  3. На странице "Добавление пользовательской плитки данных потоковой передачи" выберите "Добавить семантику потоковой передачи".

    Screenshot of the dashboard, showing the Add streaming semantic model link in the Add a custom streaming data tile.

  4. На странице "Новая семантическая модель потоковой передачи" выберите PubNub и нажмите кнопку "Далее".

  5. На следующем экране введите имя семантической модели, введите следующие значения в следующие два поля и нажмите кнопку "Далее".

    • Вложенный ключ:sub-c-99084bc5-1844-4e1c-82ca-a01b18166ca8
    • Имя канала:pubnub-sensor-network

    Screenshot of the New streaming semantic model dialog, showing how to create a Semantic model name and entries in the Sub-key and Channel name fields.

  6. На следующем экране сохраните автоматически заполненные значения и нажмите кнопку "Создать".

    Screenshot of the New streaming semantic model dialog, showing defaults for the Semantic model name and Values from stream fields.

  7. Вернитесь в рабочую область Power BI, создайте новую панель мониторинга и в верхней части экрана нажмите кнопку "Изменить>добавить плитку".

  8. Выберите настраиваемые данные потоковой передачи и нажмите кнопку "Далее".

  9. На странице "Добавление пользовательской плитки данных потоковой передачи" выберите новую семантику потоковой передачи и нажмите кнопку "Далее".

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

    Screenshot of the Environmental sensors dashboard, showing the results in real-time.

Перейдите к созданию собственных семантических моделей и потоковой передачи данных в Power BI.

Вопросы и ответы

Ниже приведены некоторые распространенные вопросы и ответы на вопросы о потоковой передаче в режиме реального времени в Power BI.

Можно ли использовать фильтры для моделей семантики отправки или потоковой передачи?

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

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

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

Как вы видите последнее значение при отправке или семантических моделях потоковой передачи?

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

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

Как можно моделировать семантические модели в режиме реального времени?

Моделирование невозможно в семантической модели потоковой передачи, так как данные не хранятся постоянно. Для семантической модели принудительной отправки можно использовать REST API семантической модели для создания семантической модели с связью и мер, а также использовать ИНТЕРФЕЙСы REST API таблицы обновления для добавления мер в существующие таблицы.

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

В семантической модели push можно использовать вызов REST API удаления строк. Нет способа очистить данные из семантической модели потоковой передачи, хотя данные будут очищаться через час.

Если вы настроили выходные данные Azure Stream Analytics в Power BI, но вы не видите его в Power BI, что не так?

Выполните следующие действия, чтобы устранить проблему:

  1. Перезапустите задание Azure Stream Analytics.
  2. Попробуйте повторно выполнить проверку подлинности подключения Power BI в Azure Stream Analytics.
  3. Убедитесь, что вы проверка той же рабочей области в служба Power BI, указанной для выходных данных Azure Stream Analytics.
  4. Убедитесь, что запрос Azure Stream Analytics явно выводит выходные данные Power BI с помощью INTO ключевое слово.
  5. Определите, имеет ли задание Azure Stream Analytics данные, которые передаются через него. Семантическая модель создается только при передаче данных.
  6. Просмотрите журналы Azure Stream Analytics, чтобы узнать, есть ли предупреждения или ошибки.

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

Автоматическое обновление страницы можно использовать на уровне страницы отчета, чтобы задать интервал обновления для визуальных элементов, которые активны только при использовании страницы. Автоматическое обновление страницы доступно только для источников данных DirectQuery. Минимальный интервал обновления зависит от типа рабочей области, в которой отчет публикуется и параметры администратора емкости для рабочих областей Premium.

Дополнительные сведения об автоматическом обновлении страниц см. в статье "Автоматическое обновление страницы" в Power BI.