Analysis Services-ügyfélkódtárak

A következőre vonatkozik: : SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Az ügyfélkódtárak szükségesek ahhoz, hogy az ügyfélalkalmazások és eszközök csatlakozzanak az Analysis Serviceshez. A Microsoft Power BI Desktop, Excel, SQL Server Management Studio (SSMS), és az Analysis Services-projektek bővítménye a Visual Studio-hoz mindhárom ügyfélkönyvtárat telepíti, és azokat a rendszeres alkalmazásfrissítésekkel együtt frissíti. Előfordulhat, hogy az Analysis Services egyéni ügyfélalkalmazásaihoz egy vagy több ilyen ügyfélkódtárat is telepíteni kell. Az ügyfélkódtárak új verziói körülbelül havonta frissülnek.

Fontos: A legújabb verziók beszerzése előtt mindenképpen tekintse meg szempontokat és korlátozásokat.

Töltse le a legújabb

Windows Installer

Letöltés Verzió
MSOLAP (amd64) 17.0.69.18
MSOLAP (x86) 17.0.69.18
AMO 19.84.1.0
ADOMD 19.84.1.0

Note: Az Analysis Services Felügyeleti objektumokhoz (AMO/TOM) és az ADOMD-hez készült Windows Installer-letöltések már nem frissülnek, és 2024. december 31. után nem lesznek elérhetők. Az ilyen Windows Telepítő letöltéseire támaszkodó alkalmazásokat NuGet-csomagokba kell migrálni.

NuGet-csomagok

Az Analysis Services felügyeleti objektumai (AMO/TOM) és az ADOMD-ügyfélkódtárak telepíthető csomagként érhetők el NuGet.org. Erősen ajánlott a NuGet-hivatkozásokra migrálni a Windows Telepítő használata helyett.

A NuGet-csomagok AssemblyVersion értékei a szemantikus verziókövetést követik: FŐ.MELLÉK.JAVÍTÁS. A NuGet-hivatkozások akkor is betöltik a várt verziót, ha a GAC-ban más verzió van (az MSI telepítéséből ered). A PATCH minden kiadáshoz növekszik. Az AMO és az ADOMD verziók szinkronban maradnak.

2024 júliusától kezdődően az AMO és az ADOMD csomagok több-futtatókörnyezeti kiadásokat tartalmaznak az összes támogatott cél futtatókörnyezethez, .NET FX-hez és .NET Core-hoz; a csak egy futtatókörnyezetet célzó csomagok korábbi kiadásai, amelyek .NET FX-t vagy .NET Core-t céloztak meg, visszamenőleges kompatibilitásra szolgálnak, de már nem frissülnek.

2022 szeptemberétől az AMO (AMO/TOM) és az ADOMD .Net Core (19.48.0.0-s verzió) http-alapú kommunikációja jelentősen javul az olyan felhőszolgáltatásokkal, mint a Power BI és a Azure Analysis Services. Javasoljuk, hogy frissítsen a legújabb verzióra a teljesítménybeli fejlesztések előnyeinek kihasználásához.

2021. februártól .NET Core futtatókörnyezet támogatása az AMO és az ADOMD ügyfélcsomagokhoz érhető el. Vannak azonban olyan forgatókönyvek, amelyeket a .NET Core-verziók nem támogatnak. További információért lásd a szempontokat és korlátozásokat a jelen cikk későbbi részében.

AMO és ADOMD

Csomag Verzió
AMO 19.113.7.0
ADOMD 19.113.7.0

Note:

Az új több futtatókörnyezetes csomagok már nem rendelkeznek a ".retail.amd64" utótaggal a csomag identitásában, és most egyszerűen Microsoft.AnalysisServices és Microsoft.AnalysisServices.AdomdClient.

A régebbi .NET-keretrendszerek és .NET Core-csomagok továbbra is elérhetők a nuget.org-on a régi névvel való visszamenőleges kompatibilitás érdekében, a .NET Keretrendszerek esetében a ".retail.amd64" utótaggal, és a ".NETCore.retail.amd64" utótaggal a .NET Core esetében.

Minimálisan szükséges verziók

A Transport Layer Security (TLS) protokoll 1.0/1.1-es verzióját elavultnak nyilvánították a Microsoft Entra ID-ben 2021. június 30-án. A TLS 1.2 vagy újabb verziójára most már szükség van. A TLS 1.2 nem támogatott az Analysis Services-ügyfélkódtárak korábbi verzióiban. Az újabb ügyfélkódtár-verziók az egyéb fontos biztonsági fejlesztések mellett a TLS 1.2 és újabb verzióit is támogatják.

A kockázatok és a potenciális biztonsági rések minimalizálása érdekében 2021. június 30-tól a fokozott biztonság Azure Analysis Services és Power BI a következő vagy újabb verziókat igényli:

Ügyféloldali lib Fájl-verzió Verzió
MSOLAP 2018.151.61.21 15.1.61.21
AMO 15.1.61.21 19.12.3.0
ADOMD 15.1.61.21 19.12.3.0

Szempontok és korlátozások

AMO és ADOMD

A 19.98.0.3-s verziótól kezdve:

  • További kapcsolati sztringtulajdonságokkal szabályozható a Entra-Id alapú hitelesítési élmény HTTP-kapcsolatokon keresztül. További információkért tekintse meg a Analysis-Services kapcsolati sztring tulajdonságairól szóló cikket a termékdokumentációban.
  • A HTTP-alapú kommunikációt a nyílt HTTP-csatornák jobb kezelésével fejlesztik az átviteli rétegben, különösen a .NET Core-kódtárak használatakor.

A 19.94.1.1-es verzió AdomdClient és AMO-csomagjai lecserélik a 19.94.0.0-s verziót. Frissítsen a legújabb verzióra.

A 19.94.1.1-es verzióval:

  • Az AMO-csomag TMDL szerializálási beállításainak osztályai bővítménymetóciókat tartalmaznak a használat egyszerűsítése érdekében. További részletekért tekintse meg az API referenciadokumentációját.
  • Bizonyos szemantikai modellkészítési forgatókönyvek hibainformációi további részleteket tartalmaznak a kompatibilitási szabálysértésekről és a kereszthivatkozási problémákról:
    • Kompatibilitási szabálysértések: A CompatibilityViolationException osztály részletes információkat tartalmaz az üzenet szövegében a hibaelhárításhoz. További tulajdonságok, például a Támogatott kompatibilitási szint és a CompatibilityLevelRequest is részletesebb információkat nyújtanak.
    • Kereszthivatkozási hibák: A TmdlDeserializationWithReferenceErrorsException és A JsonDeserializationWithReferenceErrorsException osztályok részletes hibaüzeneteket nyújtanak, amelyek felsorolják a megoldatlan tulajdonságokat, és további részleteket nyújtanak a kereszthivatkozási hibákról. Ezek az új kivételosztályok segíthetnek a TMDL és a TMSL deszerializálási problémáinak kezelésében.

A 19.84.6-os verziótól kezdve a felügyelt szerelvények .NET FX 4.5 és .NET Core 3.0 támogatása már nem érhető el. Az AS ügyféloldali szerelvények mostantól csak a .NET FX 4.7.2 támogatásával, valamint csak a .NET 6.0-s és .NET 8.0-s verzióval érhetők el.

A 19.82.0.0-s verziótól kezdve az AMO és az ADOMD támogatja a szolgáltatásnévprofilokat a hitelesítéshez, ahogyan az alábbi kapcsolati karakterlánc példában is látható. További információ: Szolgáltatás főfelhasználói fiókok használata több-bérlős alkalmazások ügyféladatainak kezeléséhez. A felhasználók az XMLA-végponton keresztül nem tudnak csatlakozni a Prémium szintű Per-User-licenchez társított munkaterületekhez szolgáltatásnévprofilok használatával.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

A 19.67.0-s verziótól kezdve a kapcsolati objektumok, például a Microsoft. AnalysisServices.AdomdClient.AdomdConnection és Microsoft. Az AnalysisServices.Server egy új AccessToken tulajdonságot támogat, amely lehetővé teszi az XMLA kapcsolati réteg által használt külső OAuth-jogkivonatok jobb átadását. További információ: Kapcsolati sztring tulajdonságai – Felhasználói azonosító=...; Jelszó=.

A 19.42.0.4-es verziótól kezdve az ADOMD.NET és az AMO/TOM az MSAL (Microsoft.Identity.Client) 4.43.0-s vagy újabb verzióját használja az ADAL helyett a Microsoft Entra ID-val való felhasználói hitelesítéshez, amikor kapcsolatot létesít felhőalapú szolgáltatásokkal, például a Power BI-vel és az Azure Analysis Services-szel. Ha az alkalmazás vagy egy másik összetevő, amelytől az alkalmazás függ, MSAL-t használ, szükség lehet az alkalmazás kötésátirányítási beállításainak frissítésére, ha ütközések vannak az összetevők által betöltött MSAL-verziók között.

AMO és ADOMD .Net Core

A támogatott forgatókönyvek közé tartoznak a Azure Analysis Services, Power BI Premium és SQL Server Analysis Services kapcsolatok. A TCP-alapú kapcsolat csak Windows számítógépek esetében támogatott.

Az interaktív bejelentkezés a Microsoft Entra ID használatával csak Windows számítógépek esetén támogatott. A .NET Core Desktop-futtatókörnyezetre van szükség.

Az MSAL használatához a 4.43.0-s vagy annál újabb verzió szükséges.

A .Net Core ügyfélkönyvtárak 19.14.0-s verziója előzetes támogatást vezetett be a Self-Contained közzétételhez (közzétett címtárban, és egyfájlos módban is), a projektek .NET 5.0 segítségével történő felhasználásának támogatása mellett. Az előző kiadásban azonosított SQL Server Analysis Services való kapcsolattal kapcsolatos számos probléma már ki lett javítva.

A .Net Core ügyfélkönyvtárak 19.12.7.2-es verziója bevezette az SQL Server Analysis Services támogatását. Az alacsonyabb előzetes verziók csak Azure Analysis Services és Power BI szemantikai modelleket támogatnak.

AMO

A 19.98.0.3-s verziótól kezdve a táblázatos modelladatbázisok alapértelmezett kompatibilitási szintje 1700. Azon adatbázisok esetén, amelyeknél nem adnak meg explicit módon kompatibilitási szintet, az alapértelmezett szint az 1700.

A 19.84.6-os verziótól kezdve az AMO\TOM TMDL-támogatása General-Availability állapotnak minősül, és az API-felületen nem lesznek kompatibilitástörő változások.

Az AMO-ügyfélkódtár 19.12.3.0-s verziója új számbavételt vezet be, Microsoft. AnalysisServices.DataType. Az előző felsorolás, Microsoft.AnalysisServices.Tabular.DataType továbbra is létezik. Ha a kód a korábbi felsorolásra hivatkozik DataType egy kódfájlban, amely mindkét névtérre hivatkozik (Microsoft.AnalysisServices, Microsoft.AnalysisServices.Tabular), a kétértelműség miatt hibát kaphat a fordításakor. A hiba megoldásához teljes mértékben minősítse az enumerálásra mutató hivatkozást.

Az AMO klienskönyvtár 19.61.1.4-es verziója megváltoztatja a Microsoft.AnalysisServices.Server tranzakció-visszaállítási viselkedését. A korábbi verziókban a Server.RollbackTransaction() hívása kérést küld a motornak a tranzakció visszaállítására, majd megkísérelni a helyi módosítások visszaállítását. A korábbi verzióktól eltérően a 19.61.1.4-ben és újabb verziókban, ha a helyi módosítások nem állíthatók vissza biztonságosan, a tranzakcióban szereplő táblázatos adatbázisok blokkolják a további módosításokat, amíg azok teljesen szinkronizálhatók, és a visszaállított tranzakció elavult módosításai el nem távolíthatók. InvalidOperationException fordul elő, amikor módosítás történik a megfelelő táblázatos adatbázisban. Ha a kód meghívja a Server.RollbackTransaction() függvényt, javasoljuk, hogy kövesse azt egy teljes szinkronizálással a [Database.Refresh(true)] függvénnyel, bármely tranzakció során módosított táblázatos adatbázis esetén.

A 19.77.0-s verziótól kezdődően, amikor a MetaadataObject egy metaadat-objektum egy másik példányába a táblázatos objektummodell (TOM) használatával klónoz vagy másol, a TOM null értéket ad vissza azon tulajdonságok esetében, amelyek a Metaadatobject gyermekobjektumainak közvetlen fáján kívül lévő objektumokra hivatkoznak. Hozzá kell adnia a klónozott MetadataObject-példányt a szemantikai modellhez, hogy a MetadataObject fán kívüli objektumokra mutató kereszthivatkozások feloldhatók legyenek.

Ha például egy partícióval rendelkező táblát klónoz, amely hivatkozik egy kifejezésre az EntityPartitionSource-ban, az EntityPartitionSource ExpressionSource tulajdonsága null értéket ad vissza, amíg a klónozott tábla hozzá nem adódik a szemantikai modellhez, az alábbi kódrészletben bemutatott módon, így a klónozott ExpressionSource referencia feloldható. A klónt hozzá kell adni a modellhez, mert a kereszthivatkozású elnevezett kifejezés a modell Kifejezések gyűjteményének tagja, és nem része a tábla gyermekobjektumok fájának.

Table tableClone = model.Tables[0].Clone();
anotherModel.Tables.Add(tableClone);

ADOMD

Az ADOMD (.NET Framework és .NET Core) 19.61.1.4-es verziójától kezdve a tömörítés teljes mértékben elérhető az XMLA átviteli rétegben. A korábbi kiadások a 19.55.3.1-es verzió után részlegesen támogatták a tömörítést. Jelentések érkeztek a kiadásokkal kapcsolatos problémákról. Ezeket a problémákat a 16.61.1.4-es kiadás részeként javítottuk. Ha tömörítéssel kapcsolatos problémákat tapasztal, frissítsen a 19.61.1.4-re vagy újabb verzióra.

MSOLAP

A 17.0.25.23-tól kezdődően további kapcsolati sztringtulajdonságok is használhatók a Entra-Id alapú hitelesítés HTTP-kapcsolatokon keresztüli vezérléséhez. További információkért tekintse meg a Analysis-Services kapcsolati sztring tulajdonságairól szóló cikket a termékdokumentációban.

A 16.0.139.27-es verziótól kezdve az MSOLAP támogatja a szolgáltatásnév-profilokat a hitelesítéshez, ahogyan az alábbi kapcsolati karakterlánc példában is látható. További információ: Szolgáltatás főfelhasználói fiókok használata több-bérlős alkalmazások ügyféladatainak kezeléséhez.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

A 16.0.134.22-es verziótól kezdve az MSOLAP támogatja a csendes egyszeri Sign-On (SSO) használatát a Web Account Manager (WAM) használatával, amely Windows 10 és újabb verziókban, valamint a Windows Server 2019-es és újabb verzióiban érhető el. Új HTTP-kapcsolat megnyitásakor az MSOLAP az alábbiak szerint szerez be hozzáférési jogkivonatot:

  1. Ha a jogkivonat gyorsítótárazása engedélyezve van, és megfelelő jogkivonat érhető el a gyorsítótárban, az MSOLAP a gyorsítótárazott jogkivonatot használja.
  2. Ha nem érhető el megfelelő gyorsítótárazott jogkivonat, az MSOLAP észrevétlenül megkísérli beszerezni a hozzáférési jogkivonatot a WAM rendszeren keresztül.
  3. Ha a WAM-et használó egyszeri bejelentkezés sikertelen, az MSOLAP visszakerül az interaktív hitelesítésre, és felugrik a bejelentkezési ablak.

A felhasználók megkerülhetik a csendes egyszeri bejelentkezés folyamatát, és azonnal elindíthatják az interaktív hitelesítési felületet úgy, hogy megadnak egy "üres" felhasználói azonosítót a kapcsolati sztringben (User ID=').

A 16.0.43.20-as verziótól kezdve az MSOLAP az MSAL (Microsoft.Identity.Client) 4.43.0-s vagy újabb verzióját használja az ADAL helyett, hogy a felhasználókat a Microsoft Entra ID-n keresztül hitelesítse, amikor kapcsolatot létesít felhőalapú szolgáltatásokkal, mint például a Power-BI és az Azure Analysis Services. Ha az alkalmazás vagy egy másik összetevő, amelytől az alkalmazás függ, MSAL-t használ, szükség lehet az alkalmazás kötésátirányítási beállításainak frissítésére, ha ütközések vannak az összetevők által betöltött MSAL-verziók között

Az OLEDB (MSOLAP) 16.0.4.17-es verziójában felfedezték a Microsoft Entra ID használatával létesített felhőalapú rendszerekhez való csatlakozással kapcsolatos regressziót. A javítás a 16.0.20.201-es verzióban történt. A probléma jellegéből adódóan a telepített 16.0.4.17-es verzió, valamint a 201.0.20.16.20.201 előtti verziók nem javíthatók a szolgáltató fölérendelésével, még akkor sem, ha a telepítő javító módban fut. Javasoljuk, hogy teljesen távolítsa el a 16.0.4.17 [vagy más problémás] verziót, majd telepítse a 16.0.20.20.201-es vagy újabb verziót.

Egy korábbi kiadásban az MSOLAP frissült, hogy a felügyelt Microsoft Authentication Library (MSAL) használatával csatlakozzon a felhőalapú Analysis Serviceshez. A 16.0.87.16-os verziótól kezdve az MSOLAP beállítása már nem telepíti az eredeti natív Azure Active Directory Hitelesítési kódtár (ADAL) összetevőt.

Az ügyfélkódtárak ismertetése

Az Analysis Services három ügyfélkódtárat használ. Az ADOMD.NET és az Analysis Services Management Objects (AMO) felügyelt ügyfélkódtárak. Az Analysis Services OLE DB Provider (MSOLAP DLL) pedig egy natív ügyfélkódtár. Általában mindhárom telepítése egyszerre történik.

Microsoft ügyfélalkalmazások, például a Power BI Desktop és az Excel, telepítik mind a három ügyfélkódtárat, és frissítik őket, amikor új verziók érhetők el. A frissítések verziójától vagy gyakoriságától függően előfordulhat, hogy egyes ügyfélkódtárak nem a Azure Analysis Services és Power BI által igényelt legújabb verziók. Ugyanez vonatkozik az egyéni alkalmazásokra vagy más felületekre, például az AsCmdre, a TOM-ra, az ADOMD-ra.NET. Ezekhez az alkalmazásokhoz manuálisan vagy programozott módon kell telepíteni a kódtárakat. A manuális telepítéshez szükséges ügyfélkódtárakat SQL Server szolgáltatáscsomagok terjeszthető csomagokként tartalmazzák. Ezek az ügyfélkódtárak azonban a SQL Server verzióhoz vannak kötve, és lehet, hogy nem a legújabbak. Győződjön meg arról, hogy mindig a legújabb, letölthető elemet telepíti ebből a cikkből.

Ügyfélkódtár-típusok

Analysis Services OLE DB-szolgáltató (MSOLAP)

Az Analysis Services OLE DB Provider (MSOLAP) az Analysis Services-adatbáziskapcsolatok natív ügyfélkódtára. Ezt az ADOMD.NET és az AMO is közvetetten használja, és a kapcsolatkéréseket az adatszolgáltatóra delegálja. Az OLE DB-szolgáltatót közvetlenül az alkalmazáskódból is meghívhatja.

Az Analysis Services OLE DB-szolgáltatót a legtöbb, az Analysis Services-adatbázisok eléréséhez használt eszköz és ügyfélalkalmazás automatikusan telepíti. Az Analysis Services-adatok eléréséhez használt számítógépeken kell telepíteni.

Az OLE DB-szolgáltatók gyakran a kapcsolati sztringekben vannak megadva. Az Analysis Services kapcsolati karakterlánc egy másik nómenklatúrát használ az OLE DB-szolgáltatóra való hivatkozáshoz: MSOLAP.<version>.dll.

AMO

Az AMO egy felügyelt ügyfélkódtár, amelyet a kiszolgálófelügyelethez és az adatdefinícióhoz használnak. Eszközök és ügyfélalkalmazások által telepítve és használva van. A SQL Server Management Studio (SSMS) például az AMO használatával csatlakozik az Analysis Serviceshez. Az AMO használatával létrejött kapcsolatok általában minimálisak, "data source=\<servername>". A kapcsolat létrejötte után az API-val adatbázis-gyűjteményekkel és fő objektumokkal dolgozhat. Az Visual Studio és az SSMS is az AMO használatával csatlakozik egy Analysis Services-példányhoz.

ADOMD

Az ADOMD.NET az Analysis Services-adatok lekérdezéséhez használt felügyelt adatügyfél-kódtár. Eszközök és ügyfélalkalmazások által telepítve és használva van.

Adatbázishoz való csatlakozáskor mindhárom kódtár kapcsolati karakterlánc tulajdonságai hasonlóak. Az ADOMD.NET-hez definiált szinte bármilyen kapcsolati karakterlánc a Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString használatával az AMO-hoz és az Analysis Services OLE DB szolgáltatóhoz (MSOLAP) is működik. További információ: Kapcsolati karakterlánc tulajdonságai.

Telepített verziók ellenőrzése

OLEDDB (MSOLAP)

  1. Nyissa meg a C:\Program Files\Microsoft Analysis Services\AS OLEDB\. Ha több mappája van, válassza a magasabb számot.

  2. Kattintson a jobb gombbal msolap.dll>Tulajdonságok>Részletek. Ellenőrizze a termék verzió tulajdonságot. Megjegyzés: Ha a fájlnév msolap140.dll, az régebbi a legújabb verziónál, és frissíteni kell.

    MSOLAP klienskönyvtár részletei párbeszédablak

AMO

  1. Nyissa meg a C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices\. Ha több mappája van, válassza a magasabb számot.

  2. Kattintson a jobb gombbal Microsoft. AnalysisServices>Properties>Details.

    AMO-klienskönyvtár részletei párbeszédablak

ADOMD

  1. Nyissa meg a C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices.AdomdClient\. Ha több mappája van, válassza a magasabb számot.

  2. Kattintson a jobb gombbal Microsoft. AnalysisServices.AdomdClient>Properties>Details.

    ADOMD ügyfélkönyvtár részletei párbeszédablak

Manuális frissítés

Az ügyfélkódtárak általában automatikusan települnek és frissülnek az őket használó eszközökkel és ügyfélalkalmazásokkal együtt. Bizonyos esetekben azonban előfordulhat, hogy az ügyfélkódtárak nem frissülnek automatikusan, és mindegyiket manuálisan kell frissíteni. A manuális frissítéshez töltse le és futtassa az egyes ügyfélkódtárakhoz tartozó Windows Installer (.msi) csomagot.

Letöltés és frissítés

  1. Kattintson:

  2. A Letöltések kattintson egy Windows telepítőcsomagra a telepítő futtatásához.

  3. A Telepítőben kattintson a Továbbgombra.

  4. Olvassa el a licencszerződést. Ha elfogadja, válassza Elfogadom a licencszerződésben szereplő feltételeket, majd kattintson a Továbbgombra.

  5. Kattintson, Telepítse.

  6. Miután befejezte, kattintson a Befejezésgombra.