Udostępnij za pośrednictwem


Uruchamianie skanowania metadanych

W poniższym krótkim przewodniku pokazano, jak używać interfejsów API skanera do pobierania metadanych z elementów sieci szkieletowej organizacji. Przyjęto założenie, że administrator sieci szkieletowej skonfigurował skanowanie metadanych w organizacji.

Aby uzyskać listę artefaktów i metadanych podartyktu zwracanych przez skanowanie metadanych, zobacz dokumentację interfejsu API Admin - WorkspaceInfo GetScanResult.

Poniżej przedstawiono interfejsy API skanera. Obsługują zarówno chmury publiczne, jak i suwerenne.

Ważne

Aplikacja opracowywana do skanowania może uwierzytelniać się przy użyciu standardowego delegowanego tokenu dostępu administratora lub jednostki usługi. Dwie ścieżki uwierzytelniania wykluczają się wzajemnie. W przypadku uruchamiania w ramach jednostki usługi nie trzeba ustawiać uprawnień wymaganych przez administratora usługi Power BI dla aplikacji. Aby uzyskać więcej informacji, zobacz Włączanie uwierzytelniania jednostki usługi dla interfejsów API administratora tylko do odczytu.

Krok 1. Wykonanie pełnego skanowania

Wywołaj obszary robocze/zmodyfikowane bez zmodyfikowanego parametruInce, aby uzyskać pełną listę identyfikatorów obszarów roboczych w dzierżawie. To skanowanie pobiera wszystkie obszary robocze w dzierżawie, w tym osobiste obszary robocze i udostępnione obszary robocze. Jeśli chcesz wykluczyć osobiste obszary robocze ze skanowania, użyj parametru workspaces/modified excludePersonalWorkspaces .

Podziel listę na fragmenty co najwyżej 100 obszarów roboczych.

Dla każdego fragmentu 100 obszarów roboczych:

Wywołaj wywołanie obszarów roboczych/getInfo , aby wyzwolić wywołanie skanowania dla tych 100 obszarów roboczych. Otrzymasz identyfikator scanId w odpowiedzi na użycie w następnych krokach. W nagłówku lokalizacji otrzymasz również identyfikator URI (Uniform Resource Identifier), aby wywołać następny krok.

Uwaga

Jednocześnie można wykonać nie więcej niż 16 wywołań. Obiekt wywołujący powinien czekać na pomyślną/nieudaną odpowiedź skanowania z interfejsu API scanStatus przed wywołaniem innego wywołania.

Jeśli niektóre metadane, które mają zostać odebrane, nie zostaną zwrócone, sprawdź u administratora sieci Szkieletowej, aby upewnić się, że włączono wszystkie odpowiednie przełączniki administratora.

Użyj identyfikatora URI z nagłówka lokalizacji otrzymanego z wywoływania obszarów roboczych/getInfo i sondowania w obszarach roboczych/scanStatus/{scan_id} , dopóki stan nie zostanie zwrócony jako "Powodzenie". Ten stan oznacza, że wynik skanowania jest gotowy. Zaleca się użycie interwału sondowania wynoszącym 30–60 sekund. W nagłówku lokalizacji otrzymasz również identyfikator URI do wywołania w następnym kroku. Użyj go tylko wtedy, gdy stan to "Powodzenie".

Użyj identyfikatora URI z nagłówka lokalizacji otrzymanego z wywołań obszarów roboczych/scanStatus/{scan-id} i odczytaj dane przy użyciu obszarów roboczych/scanResult/{scan_id}. Dane zawierają listę obszarów roboczych, informacji o elemencie i innych metadanych na podstawie parametrów przekazanych w wywołaniu workspaces/getInfo .

Krok 2. Wykonywanie skanowania przyrostowego

Teraz, gdy masz wszystkie obszary robocze i metadane i pochodzenie ich zasobów, zaleca się wykonanie tylko skanów przyrostowych odwołujących się do poprzedniego skanowania.

Wywołaj obszary robocze/zmodyfikowane za pomocą zmodyfikowanego parametruSince ustawionego na godzinę rozpoczęcia ostatniego skanowania, aby pobrać zmienione obszary robocze, co wymaga innego skanowania. Zmodyfikowany parametrSince powinien być ustawiony dla daty w ciągu ostatnich 30 dni.

Podziel tę listę na fragmenty maksymalnie 100 obszarów roboczych i pobierz dane dla tych zmienionych obszarów roboczych przy użyciu trzech wywołań interfejsu API, obszarów roboczych/getInfo, obszarów roboczych/scanStatus/{scan_id} oraz obszarów roboczych/scanResult/{scan_id}, zgodnie z opisem w kroku 1.

Rozważania i ograniczenia

  • Semantyczne modele, które nie zostały odświeżone lub ponownie opublikowany, zostaną zwrócone w odpowiedziach interfejsu API, ale bez ich informacji i wyrażeń podrzędnych. Na przykład semantyczna nazwa i pochodzenie modelu są uwzględniane w odpowiedzi, ale nie w nazwach tabel i kolumn modelu semantycznego.
  • semantyczne modele zawierające tylko tabele DirectQuery będą zwracać metadane podrzędne tylko wtedy, gdy w modelu semantycznym podjęto jakąś akcję, taką jak ktoś tworzący raport na jego podstawie, ktoś wyświetla raport na jego podstawie itp.
  • Zestawy danych w czasie rzeczywistym, semantyczne modele z zabezpieczeniami na poziomie obiektu, semantyczne modele z połączeniem na żywo z lokalnym środowiskiem AS-Azure i AS, a zestawy danych pełnej wierności programu Excel nie są obsługiwane w przypadku metadanych podartyktu. W przypadku nieobsługiwanych zestawów danych odpowiedź zwraca przyczynę braku pobierania metadanych artefaktu podrzędnego z zestawu danych. Znajduje się on w polu o nazwie schemaRetrievalError, na przykład schemaRetrievalError: Nieobsługiwane żądanie. Zestaw danych czasu rzeczywistego nie jest obsługiwany.
  • Interfejs API nie zwraca metadanych podartyktu dla modeli semantycznych, które są większe niż 1 GB w udostępnionych obszarach roboczych. W obszarach roboczych Premium nie ma ograniczeń dotyczących rozmiarów modeli semantycznych.

Licencjonowanie

Skanowanie metadanych nie wymaga specjalnej licencji. Działa on dla wszystkich metadanych dzierżawy, w tym elementów znajdujących się w obszarach roboczych innych niż Premium.