Udostępnij za pośrednictwem


Rozwiązywanie problemów z łącznością punktu końcowego XMLA

Punkty końcowe XMLA w usłudze Power BI korzystają z natywnego protokołu komunikacyjnego usług Analysis Services w celu uzyskania dostępu do modeli semantycznych usługi Power BI. W związku z tym rozwiązywanie problemów z punktem końcowym XMLA jest bardzo takie samo, jak rozwiązywanie problemów z typowym połączeniem usług Analysis Services. Istnieją jednak pewne różnice w zależnościach specyficznych dla usługi Power BI.

Zanim rozpoczniesz

Przed rozwiązaniem problemów ze scenariuszem punktu końcowego XMLA zapoznaj się z podstawami opisanymi w temacie Łączność modelu semantycznego z punktem końcowym XMLA. W tym miejscu omówiono najczęściej używane przypadki użycia punktu końcowego XMLA. Inne przewodniki rozwiązywania problemów z usługą Power BI, takie jak Rozwiązywanie problemów z bramami — usługa Power BI i analiza rozwiązywania problemów w programie Excel, również mogą być przydatne.

Włączanie punktu końcowego XMLA

Punkt końcowy XMLA można włączyć zarówno w pojemnościach Power BI Premium, Premium na użytkownika, jak i Power BI Embedded. W przypadku mniejszych pojemności, takich jak pojemność A1 z tylko 2,5 GB pamięci, może wystąpić błąd w ustawieniach pojemności podczas próby ustawienia punktu końcowego XMLA na odczyt/zapis , a następnie wybranie pozycji Zastosuj. Błąd wskazuje, że "Wystąpił problem z ustawieniami obciążenia. Spróbuj ponownie za chwilę".

Oto kilka rzeczy do wypróbowania:

  • Ogranicz użycie pamięci innych usług w pojemności, takich jak przepływy danych, do 40% lub mniej, lub całkowicie wyłącz niepotrzebną usługę.
  • Uaktualnij pojemność do większej jednostki SKU. Na przykład uaktualnienie z pojemności A1 do pojemności A3 rozwiązuje ten problem z konfiguracją bez konieczności wyłączania przepływów danych.

Należy również włączyć ustawienie Eksportuj dane na poziomie dzierżawy w portalu administracyjnym usługi Power BI. To ustawienie jest również wymagane dla funkcji Analizuj w programie Excel.

Nawiązywanie połączenia klienta

Po włączeniu punktu końcowego XMLA warto przetestować łączność z obszarem roboczym w pojemności. Aby dowiedzieć się więcej, zobacz Łączenie z obszarem roboczym Premium. Ponadto zapoznaj się z sekcją Wymagania dotyczące połączenia, aby uzyskać przydatne porady i informacje o bieżących ograniczeniach łączności XMLA.

Nawiązywanie połączenia z jednostką usługi

Jeśli włączono ustawienia dzierżawy, aby umożliwić jednostkom usługi używanie interfejs API usługi Power BI, zgodnie z opisem w temacie Włączanie jednostek usługi, możesz nawiązać połączenie z punktem końcowym XMLA przy użyciu jednostki usługi. Należy pamiętać, że jednostka usługi wymaga tego samego poziomu uprawnień dostępu na poziomie obszaru roboczego lub modelu semantycznego co regularni użytkownicy.

Aby użyć jednostki usługi, należy określić informacje o tożsamości aplikacji w parametry połączenia jako:

  • Aplikacja identyfikatora - użytkownika:appid@tenantid

  • Hasło

    • cert:thumbprint (zalecane w przypadku zabezpieczeń)

      Data Source=powerbi://api.powerbi.com/v1.0/myorg/Contoso;Initial Catalog=PowerBI_Dataset;User ID=app:<appid>;Password=cert:<thumbprint>;

    • wpis tajny aplikacji

      Data Source=powerbi://api.powerbi.com/v1.0/myorg/Contoso;Initial Catalog=PowerBI_Dataset;User ID=app:<appid>;Password=<secret>;

Jeśli wystąpi następujący błąd:

"Nie możemy nawiązać połączenia z modelem semantycznym z powodu niekompletnych informacji o koncie. W przypadku jednostek usługi upewnij się, że określono identyfikator dzierżawy wraz z identyfikatorem aplikacji przy użyciu formatu app:<appId@<tenantId>>, a następnie spróbuj ponownie.

Upewnij się, że identyfikator dzierżawy został określony razem z identyfikatorem aplikacji przy użyciu poprawnego formatu.

Ważne jest również określenie identyfikatora aplikacji bez identyfikatora dzierżawy. Jednak w tym przypadku należy zastąpić myorg alias w adresie URL źródła danych rzeczywistym identyfikatorem dzierżawy. Usługa Power BI może następnie zlokalizować jednostkę usługi w odpowiedniej dzierżawie. Najlepszym rozwiązaniem jest jednak użycie myorg aliasu i określenie identyfikatora dzierżawy wraz z identyfikatorem aplikacji w parametrze Identyfikator użytkownika.

Nawiązywanie połączenia z firmą Microsoft Entra B2B

Dzięki obsłudze usługi Microsoft Entra business-to-business (B2B) w usłudze Power BI możesz zapewnić zewnętrznym użytkownikom-gościom dostęp do modeli semantycznych za pośrednictwem punktu końcowego XMLA. Upewnij się, że ustawienie Udostępnianie zawartości użytkownikom zewnętrznym jest włączone w portalu administracyjnym usługi Power BI. Aby dowiedzieć się więcej, zobacz Dystrybucja zawartości usługi Power BI do zewnętrznych użytkowników-gości przy użyciu usługi Microsoft Entra B2B.

Wdrażanie modelu semantycznego

Projekt modelu tabelarycznego można wdrożyć w programie Visual Studio (SSDT) w obszarze roboczym przypisanym do pojemności Premium, podobnie jak w przypadku zasobu serwera w usługach Azure Analysis Services. Jednak podczas wdrażania istnieją pewne dodatkowe zagadnienia. Zapoznaj się z sekcją Wdrażanie projektów modelu z programu Visual Studio (SSDT) w artykule Dotyczącym łączności modelu semantycznego z punktem końcowym XMLA.

Wdrażanie nowego modelu

W domyślnej konfiguracji program Visual Studio próbuje przetworzyć model w ramach operacji wdrażania w celu załadowania danych do modelu semantycznego ze źródeł danych. Zgodnie z opisem w artykule Wdrażanie projektów modelu z programu Visual Studio (SSDT) ta operacja może zakończyć się niepowodzeniem, ponieważ nie można określić poświadczeń źródła danych w ramach operacji wdrażania. Zamiast tego, jeśli poświadczenia dla źródła danych nie są jeszcze zdefiniowane dla żadnego z istniejących modeli semantycznych, należy określić poświadczenia źródła danych w ustawieniach modelu semantycznego przy użyciu interfejsu użytkownika usługi Power BI (semantyczne modele>Ustawienia>poświadczenia źródła danych Edytuj poświadczenia).> Po zdefiniowaniu poświadczeń źródła danych usługa Power BI może automatycznie zastosować poświadczenia do tego źródła danych dla dowolnego nowego modelu semantycznego, po pomyślnych wdrożeniach metadanych i utworzeniu modelu semantycznego.

Jeśli usługa Power BI nie może powiązać nowego modelu semantycznego z poświadczeniami źródła danych, zostanie wyświetlony komunikat o błędzie "Nie można przetworzyć bazy danych. Przyczyna: Nie można zapisać modyfikacji na serwerze." z kodem błędu "DMTS_DatasourceHasNoCredentialError", jak pokazano poniżej:

Błąd wdrażania modelu

Aby uniknąć niepowodzenia przetwarzania, ustaw opcje przetwarzania opcji> wdrożenia na Nie przetwarzaj, jak pokazano na poniższej ilustracji. Następnie program Visual Studio wdraża tylko metadane. Następnie możesz skonfigurować poświadczenia źródła danych i kliknąć pozycję Odśwież teraz dla modelu semantycznego w interfejsie użytkownika usługi Power BI.

Nie przetwarzaj opcji

Nowy projekt z istniejącego modelu semantycznego

Tworzenie nowego projektu tabelarycznego w programie Visual Studio przez zaimportowanie metadanych z istniejącego modelu semantycznego nie jest obsługiwane. Można jednak nawiązać połączenie z modelem semantycznym przy użyciu programu SQL Server Management Studio, tworzyć skrypty metadanych i ponownie używać go w innych projektach tabelarycznych.

Migrowanie modelu semantycznego do usługi Power BI

Zaleca się określenie poziomu zgodności 1500 (lub wyższego) dla modeli tabelarycznych. Ten poziom zgodności obsługuje najwięcej możliwości i typów źródeł danych. Późniejsze poziomy zgodności są do tyłu zgodne z wcześniejszymi poziomami.

Obsługiwani dostawcy danych

Na poziomie zgodności 1500 usługa Power BI obsługuje następujące typy źródeł danych:

  • Źródła danych dostawcy (starsze z parametry połączenia w metadanych modelu).
  • Ustrukturyzowane źródła danych (wprowadzone z poziomem zgodności 1400).
  • Wbudowane deklaracje M źródeł danych (jak program Power BI Desktop je deklaruje).

Zaleca się używanie źródeł danych strukturalnych, które program Visual Studio tworzy domyślnie podczas przechodzenia przez przepływ importu danych. Jeśli jednak planujesz przeprowadzenie migracji istniejącego modelu do usługi Power BI korzystającej ze źródła danych dostawcy, upewnij się, że źródło danych dostawcy korzysta z obsługiwanego dostawcy danych. W szczególności sterownik MICROSOFT OLE DB dla programu SQL Server i wszystkich sterowników ODBC innych firm. W przypadku sterownika OLE DB dla programu SQL Server należy przełączyć definicję źródła danych na program .NET Framework Dostawca danych dla programu SQL Server. W przypadku sterowników ODBC innych firm, które mogą być niedostępne w usługa Power BI, należy zamiast tego przełączyć się na ustrukturyzowaną definicję źródła danych.

Zaleca się również zastąpienie nieaktualnego sterownika Microsoft OLE DB dla programu SQL Server (SQLNCLI11) w definicjach źródła danych programu SQL Server Dostawca danych programu .NET Framework dla programu SQL Server.

W poniższej tabeli przedstawiono przykład Dostawca danych .NET Framework dla programu SQL Server parametry połączenia zastępowania odpowiedniego parametry połączenia dla sterownika OLE DB dla programu SQL Server.

Sterownik OLE DB dla programu SQL Server .NET Framework Data Provider for SQL Server
Provider=SQLNCLI11;Data Source=sqldb.database.windows.net;Initial Catalog=AdventureWorksDW;Trusted_Connection=yes; Data Source=sqldb.database.windows.net;Initial Catalog=AdventureWorksDW2016;Integrated Security=SSPI;Encrypt=true;TrustServerCertificate=false

Źródła partycji odwołujące się do różnych

Podobnie jak w przypadku wielu typów źródeł danych, istnieje również wiele typów źródeł partycji, które model tabelaryczny może obejmować importowanie danych do tabeli. W szczególności partycja może używać źródła partycji zapytania lub źródła partycji języka M. Te typy źródeł partycji mogą z kolei odwoływać się do źródeł danych dostawcy lub źródeł danych strukturalnych. Chociaż modele tabelaryczne w usługach Azure Analysis Services obsługują krzyżowe odwoływanie się do tych różnych typów źródeł danych i partycji, usługa Power BI wymusza bardziej ścisłą relację. Źródła partycji zapytań muszą odwoływać się do źródeł danych dostawcy, a źródła partycji języka M muszą odwoływać się do źródeł danych strukturalnych. Inne kombinacje nie są obsługiwane w usłudze Power BI. Jeśli chcesz przeprowadzić migrację modelu semantycznego odwołującego się do krzyżowego, w poniższej tabeli opisano obsługiwane konfiguracje:

Źródło danych Źródło partycji Komentarze Obsługiwane w przypadku punktu końcowego XMLA
Źródło danych dostawcy Źródło partycji kwerendy Aparat AS używa stosu łączności opartego na wkładach w celu uzyskania dostępu do źródła danych. Tak
Źródło danych dostawcy Źródło partycji języka M Aparat AS tłumaczy źródło danych dostawcy na ogólne ustrukturyzowane źródło danych, a następnie importuje dane przy użyciu aparatu Mashup. Nie.
Ustrukturyzowane źródło danych Źródło partycji kwerendy Aparat AS opakowuje zapytanie natywne w źródle partycji do wyrażenia M, a następnie używa aparatu Mashup do importowania danych. Nie.
Ustrukturyzowane źródło danych Źródło partycji języka M Aparat AS używa aparatu Mashup do importowania danych. Tak

Źródła danych i personifikacja

Ustawienia personifikacji, które można zdefiniować dla źródeł danych dostawcy, nie są istotne dla usługi Power BI. Usługa Power BI używa innego mechanizmu opartego na ustawieniach modelu semantycznego do zarządzania poświadczeniami źródła danych. Z tego powodu upewnij się, że wybrano pozycję Konto usługi, jeśli tworzysz źródło danych dostawcy.

Personifikuj konto usługi

Przetwarzanie szczegółowe

Podczas wyzwalania zaplanowanego odświeżania lub odświeżania na żądanie w usłudze Power BI usługa Power BI zwykle odświeża cały model semantyczny. W wielu przypadkach wydajniejsze jest wykonywanie odświeżeń bardziej selektywnie. Zadania szczegółowego przetwarzania można wykonywać w programie SQL Server Management Studio (SSMS), jak pokazano poniżej, lub za pomocą narzędzi lub skryptów innych firm.

Przetwarzanie tabel w programie SSMS

Przesłonięcia w poleceniu Odświeżanie TMSL

Przesłonięcia w poleceniu Odświeżanie (TMSL) umożliwiają użytkownikom wybranie innej definicji zapytania partycji lub definicji źródła danych dla operacji odświeżania.

Subskrypcje poczty e-mail

Modele semantyczne, które są odświeżane przy użyciu punktu końcowego XMLA, nie wyzwalają subskrypcji poczty e-mail.

Błędy w pojemności Premium

Błąd nawiązywania połączenia z serwerem w programie SSMS

Podczas nawiązywania połączenia z obszarem roboczym usługi Power BI za pomocą programu SQL Server Management Studio (SSMS) może zostać wyświetlony następujący błąd:

TITLE: Connect to Server
------------------------------
Cannot connect to powerbi://api.powerbi.com/v1.0/[tenant name]/[workspace name].
------------------------------
ADDITIONAL INFORMATION: 
The remote server returned an error: (400) Bad Request.
Technical Details:
RootActivityId: 
Date (UTC): 10/6/2021 1:03:25 AM (Microsoft.AnalysisServices.AdomdClient)
------------------------------
The remote server returned an error: (400) Bad Request. (System)

Podczas nawiązywania połączenia z obszarem roboczym usługi Power BI za pomocą programu SSMS upewnij się, że:

Wykonywanie zapytań w programie SSMS

W przypadku połączenia z obszarem roboczym w usłudze Power BI Premium lub pojemności usługi Power BI Embedded program SQL Server Management Studio może wyświetlić następujący błąd:

Executing the query ...
Error -1052311437: We had to move the session with ID '<Session ID>' to another Power BI Premium node. Moving the session temporarily interrupted this trace - tracing will resume automatically as soon as the session has been fully moved to the new node.

Jest to komunikat informacyjny, który można zignorować w programie SSMS 18.8 lub nowszym, ponieważ biblioteki klienckie zostaną ponownie połączone automatycznie. Należy pamiętać, że biblioteki klienckie zainstalowane z programem SSMS w wersji 18.7.1 lub starszej nie obsługują śledzenia sesji. Pobierz najnowszą wersję programu SSMS.

Wykonywanie dużego polecenia przy użyciu punktu końcowego XMLA

Podczas wykonywania dużego polecenia przy użyciu punktu końcowego XMLA może wystąpić następujący błąd:

Executing the query ...
Error -1052311437:
The remote server returned an error: (400) Bad Request.

Technical Details:
RootActivityId: 3716c0f7-3d01-4595-8061-e6b2bd9f3428
Date (UTC): 11/13/2020 7:57:16 PM
Run complete

W przypadku korzystania z programu SSMS w wersji 18.7.1 lub starszej w celu wykonania długotrwałej (>1 minuty) operacji odświeżania w modelu semantycznym w usłudze Power BI Premium lub pojemności usługi Power BI Embedded program SSMS może wyświetlić ten błąd, nawet jeśli operacja odświeżania zakończy się pomyślnie. Jest to spowodowane znanym problemem w bibliotekach klienta, w których stan żądania odświeżania jest niepoprawnie śledzony. Jest to rozwiązane w programie SSMS 18.8 lub nowszym. Pobierz najnowszą wersję programu SSMS.

Ten błąd może również wystąpić, gdy bardzo duże żądanie musi zostać przekierowane do innego węzła w klastrze Premium. Często zdarza się, że próbujesz utworzyć lub zmienić model semantyczny przy użyciu dużego skryptu TMSL. W takich przypadkach można uniknąć błędu, określając katalog początkowy na nazwę bazy danych przed wykonaniem polecenia.

Podczas tworzenia nowej bazy danych można utworzyć pusty model semantyczny, na przykład:

{   
  "create": {   
    "database": {   
      "name": "DatabaseName"
    }   
  }   
} 

Po utworzeniu nowego modelu semantycznego określ katalog początkowy, a następnie wprowadź zmiany w modelu semantycznym.

Inne aplikacje klienckie i narzędzia

Aplikacje klienckie i narzędzia, takie jak Excel, Power BI Desktop, SSMS lub narzędzia zewnętrzne łączące się z modelami semantycznymi w pojemnościach usługi Power BI Premium, mogą powodować następujący błąd: Serwer zdalny zwrócił błąd: (400) Nieprawidłowe żądanie. Błąd może być spowodowany szczególnie wtedy, gdy bazowe zapytanie języka DAX lub polecenie XMLA jest długotrwałe. Aby wyeliminować potencjalne błędy, należy użyć najnowszych aplikacji i narzędzi, które instalują najnowsze wersje bibliotek klienckich usług Analysis Services z regularnymi aktualizacjami. Niezależnie od aplikacji lub narzędzia minimalna wymagana wersja biblioteki klienta do nawiązywania połączenia z modelami semantycznymi i pracy z nimi w pojemności Premium za pośrednictwem punktu końcowego XMLA to:

Biblioteka klienta Wersja
MSOLAP 15.1.65.22
AMO 19.12.7.0
ADOMD 19.12.7.0

Edytowanie członkostwa w rolach w programie SSMS

W przypadku korzystania z programu SQL Server Management Studio (SSMS) w wersji 18.8 w celu edytowania członkostwa w roli w modelu semantycznym program SSMS może wyświetlić następujący błąd:

Failed to save modifications to the server. 
Error returned: ‘Metadata change of current operation cannot be resolved, please check the command or try again later.’ 

Jest to spowodowane znanym problemem w interfejsie API REST usługi App Services. Zostanie to rozwiązane w nadchodzącej wersji. W międzyczasie, aby obejść ten błąd, w właściwości roli kliknij pozycję Skrypt, a następnie wprowadź i wykonaj następujące polecenie TMSL:

{ 
  "createOrReplace": { 
    "object": { 
      "database": "AdventureWorks", 
      "role": "Role" 
    }, 
    "role": { 
      "name": "Role", 
      "modelPermission": "read", 
      "members": [ 
        { 
          "memberName": "xxxx", 
          "identityProvider": "AzureAD" 
        }, 
        { 
          "memberName": “xxxx” 
          "identityProvider": "AzureAD" 
        } 
      ] 
    } 
  } 
} 

Błąd publikowania — model semantyczny połączony na żywo

Podczas ponownego publikowania modelu semantycznego połączonego na żywo przy użyciu łącznika usług Analysis Services następujący błąd: "Istnieje istniejący model raport/semantyczny o tej samej nazwie. Usuń istniejący model semantyczny lub zmień jego nazwę i ponów próbę". może być wyświetlany.

Nie można opublikować w usłudze Power BI — błąd.

Jest to spowodowane opublikowaniem modelu semantycznego o innej parametry połączenia, ale o takiej samej nazwie jak istniejący model semantyczny. Aby rozwiązać ten problem, usuń lub zmień nazwę istniejącego modelu semantycznego. Pamiętaj również, aby ponownie opublikować wszystkie aplikacje zależne od raportu. W razie potrzeby użytkownicy podrzędni powinni zostać poinformowani o zaktualizowaniu zakładek przy użyciu nowego adresu raportu, aby zapewnić im dostęp do najnowszego raportu.

Nie można załadować modelu semantycznego połączonego na żywo

Użytkownicy próbujący utworzyć nowy model live connected lub otworzyć istniejący model Live Connected, używając wersji programu Power BI Desktop z marca 2024 r. lub nowszej, mogą napotkać błąd podobny do następującego: "Nie można nawiązać połączenia z modelem w usługa Power BI. Zestaw danych mógł zostać usunięty, zmieniony, przeniesiony lub istnieje możliwość, że nie masz uprawnień dostępu do niego.

Zrzut ekranu przedstawiający błąd nie można załadować modelu.

Błąd może wystąpić, gdy serwer proxy jest skonfigurowany w środowisku użytkownika, a serwer proxy uniemożliwia dostęp do usługa Power BI. Począwszy od wersji programu Power BI Desktop z marca 2024 r., środowisko użytkownika musi zezwalać na połączenia z usługa Power BI w punkcie końcowym *.pbidedicated.windows.net lub odpowiadających im punktów końcowych usługa Power BI dla suwerennych chmur.

Aby sprawdzić, czy problem jest wynikiem ustawień serwera proxy, spróbuj użyć łącznika usług SQL Server Analysis Services w programie Power BI Desktop lub dowolnego narzędzia zewnętrznego innej firmy lub innej firmy, takiego jak SQL Server Management Studio, aby nawiązać połączenie z dowolnym obszarem roboczym w warstwie Premium.

Zapoznaj się z sekcją ustanawiania połączenia klienta w tym artykule, aby uzyskać więcej informacji na temat testowania ogólnej łączności XML/A.

Nie można otworzyć skoroszytu programu Excel

Nie można otworzyć skoroszytu programu Excel z powodu błędu "Inicjowanie źródła danych nie powiodło się. Sprawdź serwer bazy danych lub skontaktuj się z administratorem bazy danych". Jeśli skoroszyt zawiera połączenie z semantycznym modelem usługi Power BI, sprawdź, czy parametry połączenia zawiera właściwość "Catalog Rebound=True". Jeśli właściwość zostanie znaleziona, usuń ją, zapisz skoroszyt i spróbuj otworzyć go ponownie.

Właściwość "Catalog Rebound=True" jest automatycznie dodawana przez dostawcę OLE DB usług Analysis Services (MSOLAP) w nowszych wersjach programu Excel, gdy połączenie z modelem semantycznym usługi Power BI jest zoptymalizowane przez dostawcę. Ponieważ właściwość jest utrwalana w skoroszycie, po otwarciu tego samego skoroszytu w programie Excel, który korzysta ze starszej wersji dostawcy, który nie obsługuje optymalizacji, program Excel nie otworzy skoroszytu.

"Odbicie wykazu" jest przeznaczone tylko do użytku wewnętrznego.

Alias obszaru roboczego/serwera

W przeciwieństwie do usług Azure Analysis Services aliasy nazw serwerów nie są obsługiwane w przypadku obszarów roboczych Premium.

DISCOVER_M_EXPRESSIONS

Widok DMV DISCOVER_M_EXPRESSIONS zarządzania danymi (DMV) nie jest obecnie obsługiwany w usłudze Power BI przy użyciu punktu końcowego XMLA. Aplikacje mogą używać modelu obiektów tabelarycznych (TOM) do uzyskiwania wyrażeń języka M używanych przez model danych.

Limit pamięci poleceń zarządzania zasobami w warstwie Premium

Pojemności Premium używają zarządzania zasobami, aby upewnić się, że żadna operacja modelu semantycznego nie może przekraczać ilości dostępnych zasobów pamięci dla pojemności — określonej przez jednostkę SKU. Na przykład subskrypcja P1 ma obowiązujący limit pamięci na element 25 GB, dla subskrypcji P2 limit wynosi 50 GB, a dla subskrypcji P3 limit wynosi 100 GB. Oprócz rozmiaru semantycznego modelu (bazy danych) obowiązujący limit pamięci dotyczy również operacji poleceń podstawowego modelu semantycznego, takich jak Tworzenie, Zmienianie i Odświeżanie.

Efektywny limit pamięci dla polecenia jest oparty na mniejszym limicie pamięci pojemności (określonym przez jednostkę SKU) lub wartości właściwości DbpropMsmdRequestMemoryLimit XMLA.

Na przykład w przypadku pojemności P1, jeśli:

  • DbpropMsmdRequestMemoryLimit = 0 (lub nieokreślony), efektywny limit pamięci dla polecenia wynosi 25 GB.

  • DbpropMsmdRequestMemoryLimit = 5 GB, efektywny limit pamięci dla polecenia wynosi 5 GB.

  • DbpropMsmdRequestMemoryLimit = 50 GB, efektywny limit pamięci dla polecenia wynosi 25 GB.

Zazwyczaj efektywny limit pamięci dla polecenia jest obliczany dla pamięci dozwolonej dla modelu semantycznego przez pojemność (25 GB, 50 GB, 100 GB) i ilość pamięci, z jaką model semantyczny jest już zużywany, gdy polecenie rozpoczyna wykonywanie. Na przykład model semantyczny korzystający z 12 GB w pojemności P1 umożliwia efektywny limit pamięci dla nowego polecenia 13 GB. Jednak efektywny limit pamięci może być dodatkowo ograniczony przez właściwość DbPropMsmdRequestMemoryLimit XMLA, jeśli jest to opcjonalne określone przez aplikację. Korzystając z poprzedniego przykładu, jeśli w właściwości DbPropMsmdRequestMemoryLimit określono 10 GB, obowiązującą granicę polecenia można jeszcze bardziej zmniejszyć do 10 GB.

Jeśli operacja polecenia próbuje zużywać więcej pamięci niż dozwolona przez limit, operacja może zakończyć się niepowodzeniem i zostanie zwrócony błąd. Na przykład następujący błąd opisuje obowiązujący limit pamięci wynoszący 25 GB (pojemność P1) został przekroczony, ponieważ model semantyczny już zużywał 12 GB (12288 MB) podczas uruchamiania wykonywania polecenia i zastosowano skuteczny limit 13 GB (13312 MB) dla operacji polecenia:

"Zarządzanie zasobami: ta operacja została anulowana, ponieważ nie było wystarczającej ilości pamięci, aby ją uruchomić. Zwiększ pamięć pojemności Premium, w której jest hostowany ten model semantyczny, lub zmniejsz ilość pamięci modelu semantycznego, wykonując takie czynności, jak ograniczenie ilości importowanych danych. Więcej szczegółów: zużycie pamięci 13312 MB, limit pamięci 13312 MB, rozmiar bazy danych przed wykonaniem polecenia 12288 MB. Dowiedz się więcej: https://go.microsoft.com/fwlink/?linkid=2159753."

W niektórych przypadkach, jak pokazano w poniższym błędzie, "zużywana pamięć" wynosi 0, ale ilość wyświetlana dla "rozmiar bazy danych przed wykonaniem polecenia" jest już większa niż efektywny limit pamięci. Oznacza to, że nie można rozpocząć wykonywania operacji, ponieważ ilość pamięci używanej już przez model semantyczny jest większa niż limit pamięci dla jednostki SKU.

"Zarządzanie zasobami: ta operacja została anulowana, ponieważ nie było wystarczającej ilości pamięci, aby ją uruchomić. Zwiększ pamięć pojemności Premium, w której jest hostowany ten model semantyczny, lub zmniejsz ilość pamięci modelu semantycznego, wykonując takie czynności, jak ograniczenie ilości importowanych danych. Więcej szczegółów: użycie pamięci 0 MB, limit pamięci 25600 MB, rozmiar bazy danych przed wykonaniem polecenia 26000 MB. Dowiedz się więcej: https://go.microsoft.com/fwlink/?linkid=2159753."

Aby potencjalnie uniknąć przekroczenia obowiązującego limitu pamięci:

  • Przeprowadź uaktualnienie do większego rozmiaru pojemności Premium (SKU) dla modelu semantycznego.
  • Zmniejsz ilość pamięci modelu semantycznego, ograniczając ilość danych załadowanych przy każdym odświeżeniu.
  • W przypadku operacji odświeżania za pośrednictwem punktu końcowego XMLA zmniejsz liczbę przetwarzanych równolegle partycji. Zbyt wiele partycji przetwarzanych równolegle z pojedynczym poleceniem może przekroczyć obowiązujący limit pamięci.