Запуск сканирования метаданных

В следующем кратком пошаговом руководстве показано, как использовать API сканера для получения метаданных из элементов Fabric вашей организации. Предполагается, что администратор Fabric настроил сканирование метаданных в организации.

Список метаданных артефакта и субартифакта, возвращаемых сканированием метаданных, см. в документации по API Admin — WorkspaceInfo GetScanResult.

Ниже приведены API-интерфейсы сканера. Они поддерживают как общедоступные, так и суверенные облака.

Внимание

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

Шаг 1. Выполнение полной проверки

Вызовите рабочие области или измененные без измененного параметраSince , чтобы получить полный список идентификаторов рабочих областей в клиенте. Эта проверка извлекает все рабочие области в клиенте, включая личные рабочие области и общие рабочие области. Если вы хотите исключить личные рабочие области из проверки, используйте параметр workspaces/modified excludePersonalWorkspaces .

Разделите список на блоки из 100 рабочих областей в большинстве случаев.

Для каждого блока из 100 рабочих областей:

Вызов рабочих областей или getInfo для активации вызова проверки для этих 100 рабочих областей. Вы получите идентификатор сканирования в ответе, который будет использоваться в следующих шагах. В заголовке расположения вы также получите универсальный идентификатор ресурса (URI), чтобы вызвать следующий шаг.

Примечание.

Одновременно можно выполнять не более 16 вызовов. Вызывающий объект должен ожидать успешного или неудачного ответа от API scanStatus перед вызовом другого вызова.

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

Используйте универсальный код ресурса (URI) из заголовка расположения, полученного от вызова рабочих областей/getInfo , и опрос по рабочим областям/scanStatus/{scan_id} до тех пор, пока не будет возвращено состояние "Успешно". Это состояние означает, что результат сканирования готов. Рекомендуется использовать интервал опроса в 30–60 секунд. В заголовке расположения вы также получите URI для вызова на следующем шаге. Используйте его только после состояния "Успешно".

Используйте URI из заголовка расположения, полученного от вызовов рабочих областей/scanStatus/{scan-id} , и считывайте данные с помощью рабочих областей/scanResult/{scan_id}. Данные содержат список рабочих областей, сведений о элементах и других метаданных на основе параметров, переданных в вызове workspaces/getInfo .

Шаг 2. Выполнение добавочного сканирования

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

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

Разделите этот список на блоки до 100 рабочих областей и получите данные для этих измененных рабочих областей с помощью трех вызовов API, workspaces/getInfo, workspaces/scanStatus/{scan_id}, и рабочих областей/scanResult/{scan_id}, как описано на шаге 1.

Рекомендации и ограничения

  • Семантические модели, которые не были обновлены или повторно опубликованы, будут возвращены в ответах API, но без их подартифактных сведений и выражений. Например, имя и происхождение семантической модели включаются в ответ, но не имена таблиц и столбцов семантической модели.
  • семантические модели, содержащие только таблицы DirectQuery , возвращают метаданные субартифакта только в том случае, если в семантической модели было предпринято определенное действие, например кто-то создает отчет на его основе, кто-то просматривает отчет на его основе и т. д.
  • Наборы данных в режиме реального времени, семантические модели с безопасностью на уровне объекта, семантические модели с динамическим подключением к локальной среде AS и AS, а также наборы данных Excel для полной точности не поддерживаются для метаданных субартификта. Для неподдерживаемых наборов данных ответ возвращает причину не получения метаданных подартифакта из набора данных. Он найден в поле с именем schemaRetrievalError, например schemaRetrievalError: unsupported request. Набор данных RealTime не поддерживается.
  • API не возвращает метаданные подартифакта для семантических моделей, размер которых превышает 1 ГБ в общих рабочих областях. В рабочих областях Premium нет ограничений на размер семантических моделей.

Лицензирование

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